标签:vbs sky idg otl cow uav bsh hal hfs
8.17用递归法将一个整数n转换成字符串。例如,输入486,应输出字符串"486"。n的位数不确定,可以是任意位数的整数。
#include <stdio.h>
char str1[20];
int i=0;
long n;
int main(){
int longToStr(long n);
char *revstr(char *str, int len);
printf("请输入一个整数n:\n");
scanf("%ld",&n);
char *p;
longToStr(n);
p=revstr(str1, i);
*(p+i)=‘\0‘;
printf("输出的字符串为:\n");
puts(p);
return 0;
}
//字符串翻转函数
char *revstr(char *str, int len)
{
char * start = str;
char * end = str + len - 1;
char ch;
if (str != NULL)
{
while (start < end)
{
ch = *start;
*start++ = *end;
*end-- = ch;
}
}
return str;
}
int longToStr(long n){
int a = (int)(n%10);
str1[i++]=a+48;
if(n-a!=0)
{
n=(n-a)/10;
longToStr(n);
}
else {str1[i]=‘\0‘;
return 0;
}
}
conclusion:
谭浩强 c程序设计 8.17用递归法将一个整数n转换成字符串。例如,输入486,应输出字符串"486"。n的位数不确定,可以是任意位数的整数。
标签:vbs sky idg otl cow uav bsh hal hfs
原文地址:http://www.cnblogs.com/Allen-win/p/7257697.html