递归输出字符,注意,使用putchar输出一个数字的时候需要加‘0‘,否则。。。。
1 #include<stdio.h> 2 3 void convert(int n) 4 { 5 int i; 6 if((i=n/10)!=0) 7 { 8 convert(i); 9 } 10 putchar(n%10+‘0‘); 11 } 12 13 int main(void) 14 { 15 int num; 16 printf("input a num:\n"); 17 scanf("%d",&num); 18 printf("string is :\n"); 19 if(num<0) 20 { 21 putchar(‘-‘); 22 num=-num; 23 } 24 convert(num); 25 putchar(‘\n‘); 26 return 0; 27 }
每次调用都获得一个去掉了最后一位的数字,然后递归取余就可以把最高位到最低位按照字符形式输出,相当于数字转字符串。
时间: 2024-10-23 11:28:02