C语言⑹ 给一个不多于3位的正整数,编写程序完成以下要求: ①求出它是几位数; ②分别输出每一位数字; ③按逆序输出各位数字,例如,原数为321,应输出123。
时间: 2024-10-22 17:27:06 浏览: 25
在C语言中,你可以通过一些基本的数学运算和取模操作来实现这个程序。这里是一个简单的示例代码:
```c
#include <stdio.h>
int main() {
int num, remainder, position = 1;
// 输入一个正整数
printf("请输入一个不超过3位的正整数: ");
scanf("%d", &num);
// 检查输入是否为正整数并且不超过三位
if(num <= 0 || num >= 1000) {
printf("输入错误,请输入一个1-999之间的正整数。\n");
return 1;
}
// 求出位数
while(num != 0) {
remainder = num % 10; // 取余数得到当前位的数字
printf("第%d位的数字是: %d\n", position++, remainder); // 输出每一位
num /= 10; // 移除最低位
}
// 逆序输出各位数字
printf("按逆序输出各位数字为: ");
while(position > 1) {
remainder = num % 10;
printf("%d", remainder);
num /= 10;
position--;
}
printf("%d\n", remainder); // 最高位
return 0;
}
```
在这个程序里,我们首先读取用户输入的数字,然后检查其范围。接着,通过循环依次取出每一位数字并打印出来。同时,我们在循环内部记录当前的位数。最后,再从高位开始打印一次逆序的数字。
阅读全文