题目要求:
输出逆序数(3分)
题目内容:
从键盘任意输入一个3位整数,编程计算并输出它的逆序数(忽略整数前的正负号)。例如,输入-123,则忽略负号,由123分离出其百位1、十位2、个位3,然后计算3*100+2*10+1 = 321,并输出321。
提示:
1. 从键盘输入数据可以使用函数scanf()。例如,scanf("%d", &x); 表示从键盘输入整数并存入整形变量x中。
2. 利用取绝对值函数 fabs()忽略输入数据的负号。fabs(x)表示计算变量x的绝对值。
3.使用数学函数,需要在程序开头加上编译预处理指令 #include <math.h>
以下为程序的一个运行示例
Input x:
-123↙
y=321
输入格式: "%d"
输出格式:
提示信息:"Input x:\n"
输出格式:"y=%d\n"
为避免出现格式错误,请直接拷贝粘贴题目中给的格式字符串和提示信息到你的程序中。
时间限制:500ms内存限制:32000kb
正确代码:
#include <stdio.h>
#include <math.h>
int main(void){
int x; //输入整数
int n,u,m; //依次位百位,十位,个位
printf("Input x:\n");
scanf("%d",&x);
x=fabs(x);
n=x/100;
u=(x%100)/10;
m=x%10;
printf("y=%d\n",m*100+u*10+n);
return 0;
}