1056反向输出一个三位数2

反向输出一个三位数2
 

描述

将一个三位数反向组成一个新数输出,例如输入358,反向输出853。

 

输入

一个三位数n。

 

输出

输出一个由n反向组成的新数。

 

输入样例 1 

150

输出样例 1

51

这个题目和上次写的反向输出一个三位数是相似的,但是又不完全一样。
这一题输出答案时如果需要输出0,那0必须省略。例如输入150,输出就不能是051,只输出51。
 1 #include<iostream>
 2 using namespace std;
 3 int main()
 4 {
 5     int a,b,ge,shi,bai;
 6     int k,i;
 7     char x;
 8     cin>>a;
 9     bai=a/100;
10     shi=a%100/10;
11     ge=a%100%10;
12     if(ge==0)
13       cout<<shi<<bai;
14     else
15       cout<<ge<<shi<<bai;
16     return 0;
17 }

这是博主第一次提交的代码,但没有通过。问题就在于这行代码只处理了个位是0的情况,其他的位数没有考虑到。

如果继续按这个方法,把剩下的两个位数照写上去的化又太复杂了。

于是博主的编程老师教了一个方法,如下。

 1 #include<iostream>
 2 using namespace std;
 3 int main()
 4 {
 5     int a,shi,bai,ge;
 6     cin>>a;
 7     bai=a/100;
 8     shi=a%100/10;
 9     ge=a%10;
10     a=ge*100+shi*10+bai;
11     cout<<a;
12     return 0;
13 }

不仅代码缩短,程序中的不足也得到了改正。

这样写就可以优化代码。

posted @ 2020-05-11 14:40  knbit  阅读(429)  评论(0编辑  收藏  举报