匿名用户
1级
2015-05-09 回答
注:本回答已涵盖下面的其它主要回答,为方便大家阅读,难点处已罗列注释
法1:适用于负数
#include
int main()
{
int n,x;
int printn(int x); //函数原型
scanf("%d", &n);
if (n
{
n = -n;
putchar('-'); /*当输入的n<0,将之化为正数
同时用putchar('')语句加上负号*/
}
printn(n);
system("pause");
return 0;
} //以下是函数的定义
int printn(int x)
{
if (x >= 0 && x <= 9)
printf("%d", x);
else /*以下通过赋值运行以方便理解:
例如输入13
先输出余数3
再进行printn(1)的函数运算
即输出1
运行结束*/
{
printf("%d", x % 10);
printn(x / 10);
}
}
法二:仅适用正数
#include
int main()
{
int n;
scanf("%d", &n);
while (n)
{
printf("%d", n % 10);
n /= 10;
}
system("pause");
return 0;
}
/*VS2017调试结果参考:
输入10位数(>0),输出倒叙10位数;
输入>10位数,输出乱码;
1000--0001;
0--请按任意键继续;
0001--1;
+12--21*/