任务描述
本关请完成将一个整数按相反次序重新组合成另一个整数输出的小程序。
相关知识
基本算术运算符:
+: 就是把两个数据相加,得到和;
-: 就是把两个数据相减,得到差;
*: 就是把两个数据相乘,得到积;
/: 就是把两个数据相除,得到商;
%: 就是把两个数据相除,得到余数。
说明:
同一优先级的运算符,运算次序由结合方向所决定。简单记就是:
! > 算术运算符 > 关系运算符 > && > || > 赋值运算符
编程要求
具体任务如下:
编写一个程序,输入一个4位的整数,将其各位按相反次序重新组合成另一个整数输出。
输入值为一个4位整数,输出值也是一个4位整数,但数字顺序相反。
注意:
输入不足4位的整数,用0填补(例如:12 → 0012);
输入超出4位整数,则截取其前4位后进行运算(例如: 123456 → 1234)。
测试输入:
2534
预期输出:
4352
代码如下
#include <stdio.h>
int main()
{
printf("请输入一个4位整数:");
int num;
scanf("%4d",&num);
int thousand=0,hundred=0,ten=0,bit=0,newnum;
bit=num%10;//分离个位
ten=num/10%10;//分离十位
hundred=num/100%10;//分离百位
thousand=num/1000%10;//分离千位
newnum=bit*1000+ten*100+hundred*10+thousand;//实现重组
printf("重新组合后:%d",newnum);
return 0;
}