对代码清单4-10的程序进行修改, 使其像下边这样在显示结果的同时显示输入的整数值。
-----出自【明解C语言】练习4-11.
请输入一个正整数:-3
请不要输入非正整数。
请输入一个正整数:1963
1963逆向显示的结果是3691。
注意: 不再输出响铃。
输入样例:
-3
3691
输出样例:
请输入一个正整数:请不要输入非正整数。
请输入一个正整数:3691逆向显示的结果是1963。
作者
张伟
单位
杭州职业技术学院
代码长度限制
16 KB
时间限制
400 ms
内存限制
2 MB
注意点:
1.只有第一个测试样例有两个数且为一正一负,其余都是正数
2.注意个位为 0的数的逆数
代码如下(测试样例全过)
#include<stdio.h>
int main()
{
int zz(int x);
int m,n=0;
scanf("%d\n",&m);
if(m<0)
{printf("请输入一个正整数:请不要输入非正整数。\n");
scanf("%d",&n);
printf("请输入一个正整数:%d逆向显示的结果是%d。\n",n,zz(n));}
else if(m%10==0)printf("请输入一个正整数:%d逆向显示的结果是0%d。\n",m,zz(m));
else printf("请输入一个正整数:%d逆向显示的结果是%d。\n",m,zz(m));
return 0;
}
int zz(int x)
{
int end=0;
do{
end=x%10+end*10;
x=x/10;
}while(x);
return end;
}
附上测试样例