输入一个不多于五位的正整数,要求:①求出它是几位数;②分别输出每一位数字;③按逆序输出各位数字。例如原数为321,应输出123,c语言
时间: 2024-09-25 15:12:18 浏览: 52
广东工业大学计算机科学与技术程序设计实验报告
在C语言中,你可以使用`%d`运算符获取整数的每一位,并结合循环结构来实现这个功能。下面是一个简单的程序示例:
```c
#include <stdio.h>
int main() {
int num, digit, reversed = 0;
// 输入5位以内的正整数
printf("请输入一个不超过5位的正整数:");
scanf("%1d", &num); // 限制输入一位数,防止溢出
// 检查输入是否有效
if (num < 0 || num >= pow(10, 5)) {
printf("输入错误,请输入一个1到99999之间的正整数。\n");
return 1;
}
// 计算位数并输出每一位
while (num > 0) {
digit = num % 10; // 取余得到最低位
printf("%d", digit);
num /= 10; // 除以10移除最低位
}
printf("\n每位数字分别是:");
// 逆序输出各位数字
while (reversed < 4 && num > 0) { // 由于已经取过最低位,所以最多还有四位
digit = num % 10;
printf("%d", digit);
num /= 10;
reversed++;
}
printf("\n逆序后的数字是:");
while (reversed--) {
digit = num % 10;
printf("%d", digit);
num /= 10;
}
return 0;
}
```
当你运行此程序时,它会提示用户输入一个正整数,然后按照指定的方式显示它的位数、每一位以及逆序后的数字。
阅读全文