题目:从键盘任意输入一个三位整数,编程计算并输出他的逆序数(忽略正负号)
计算w错了,反了。
w=z*100+y*10+x;
第12行:w=x*100+y*10+z 应修改为:w=z*100+y*10+x;
#include<stdio.h>
#include<math.h>
int main()
{
int a,b;
scanf("%d",&a);
b=fabs(a);
int x,y,z,w;
x=b/100;
y=b/10%10;
z=b%10;
w=z*100+y*10+x; //w=x*100+y*10+z 修改
printf("%d\n",w);
return 0;
}
只是最后结果反了,其他的都没错
#include<stdio.h>
#include<math.h>
int main()
{
int a,b;
scanf("%d",&a);
b=fabs(a);
int x,y,z,w;
x=b/100;
y=b/10%10;
z=b%10;
w=z*100+y*10+x;
printf("%d\n",w);
return 0;
}
```
★修改的地方——第13行:w=z * 100+y * 10+x; 应该改为:w=x * 100+y * 10+z 这样修改的原因是原本的计算方法错了顺序,会导致最后的逆序数出现错误。
#include<stdio.h>
#include<math.h>
int main()
{
int a,b;
scanf("%d",&a);
b=fabs(a);
int x,y,z,w;
x=b/100;
y=b/10%10;
z=b%10;
w=z*100+y*10+x; //★修改的地方:w=x*100+y*10+z 这样修改的原因是原本的计算方法错了顺序,会导致最后的逆序数出现错误
printf("%d\n",w);
return 0;
}
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!以上仅供参考,如有任何疑问,可以评论回复,看到即回。
希望对题主有所帮助!可以的话,点个采纳!