要求:
程序每次读入一个正3位数,然后输出按位逆序的数字。注意:当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。
正确思路:
拆分字符串后拼接成整数
1 #include <stdio.h> 2 int main() 3 { 4 int x; 5 scanf("%d",&x); 6 x=x%10*100+x/10%10*10+x/100; 7 printf("%d",x); 8 return 0; 9 }
我的程序:
1 #include <stdio.h> 2 int main(){ 3 int in,a[2]; 4 scanf("%d",&in); 5 6 // 获取各位数字 7 a[0] = in%10; 8 a[1] = in/10%10; 9 a[2] = in/100; 10 11 // 从第一个不是0的数开始输出 12 int t = 0; 13 for(int i = 0 ; i < 3 ; i++ ){ 14 if(a[i] != 0 ){ 15 t = i; 16 break; 17 } 18 } 19 for(int j = t ; j < 3 ; j++ ){ 20 printf("%d",a[j]); 21 } 22 return 0; 23 }
不但思路复杂,结果还是错的(没有考虑都为0的情况)
原文地址:https://www.cnblogs.com/cxc1357/p/12235663.html
时间: 2024-11-06 09:57:22