1.代码
//假设x是一个三位数,用c语言实现将x的个位,十位,百位反序而成的三位数,比如输入123,输出321
#include <stdio.h>
int main()
{
int a, b = 0;
// 读取输入的三位数
printf("请输入一个三位数:");
scanf_s("%d", &a);
// 将个位、十位、百位反序组合成新的数
b = (a % 10) * 100 + ((a / 10) % 10) * 10 + (a / 100);
// 输出反序后的三位数
printf("%d的反序是:%d\n", a, b);
return 0;
}
2.实验结果
3.代码分析
1. (a % 10):得到输入数字 a 的个位数。% 是取余数运算符,a % 10就是取a除以 10 的余数,即个位数。
2. ((a / 10) % 10):得到输入数字 a的十位数。a / 10是将a除以 10得到去掉个位后的数,再取结果除以 10的余数,即十位数。
3. (a / 100):得到输入数字 `a` 的百位数。`a / 100` 就是将 `a` 除以 100 得到百位数。
a=123,按照上述计算:(a % 10)是 3(个位),((a / 10) % 10)是 2(十位),(a / 100)是 1(百位)。