C语言 输入一个不多于三位的正整数,编写程序,实现以下功能: (1)输出它是几位数 (2)按逆序输出各位数字,例如原数为321,应输出123。
时间: 2024-10-23 22:14:36 浏览: 28
在C语言中,你可以使用`scanf`函数获取用户输入的整数,然后通过控制循环和取模运算来实现这个功能。下面是一个简单的示例程序:
```c
#include <stdio.h>
int main() {
int num;
printf("请输入一个一位到三位的正整数: ");
scanf("%d", &num);
// 检查输入是否在有效范围内
if (num >= 0 && num <= 999) {
int digit_count = 0; // 记录位数
while (num != 0) {
digit_count++; // 当num还有剩余位时,增加位数计数
num /= 10; // 取除最后一位
}
printf("该数字有%d位.\n", digit_count); // 输出位数
// 逆序输出每位数字
while (digit_count > 0) {
int last_digit = num % 10;
printf("%d", last_digit);
num /= 10;
digit_count--;
}
printf("\n");
} else {
printf("输入超出范围,只接受一位到三位的正整数.\n");
}
return 0;
}
```
在这个程序中,我们首先读取用户输入的整数,然后检查它是否在1到999之间。如果是,我们就计算并打印出它的位数,并通过一系列的除法和取余操作来逆序输出每一位数字。
阅读全文