【反思】
1.将整数存进字符数组中时必须加上'0'
2.一开始加'\0'的地方出错,没有考虑清楚输出的先后关系
【错误代码】
void Reverse(char s[],int n)
{
int i;
if ((i = n / 10) != 0)
Reverse(s + 1, i);
else
*s++ = '\0';//错误点
*s = n%10 + '0';
}
【代码】
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#define maxSize 100
int Fun(int num,char* s)
{
int count = 0;
if (num / 10 != 0)
{
count = Fun(num/10,s + 1);
}
*s = num % 10 + '0';
if (num / 10 == 0) {
s++;
*s = '\0';
}
return count + 1;
}
int main()
{
char s[100];
int n;
n = Fun(1234, s);;
puts(s);
return 0;
}