给定一个不超过五位数的正整数求它是几位数 分别打印出每一位数字 按逆序打印各位数字c语言
时间: 2024-11-03 09:12:46 浏览: 19
输入一个整数,输出其位数并逆序输出
在C语言中,你可以通过循环结构来解决这个问题。首先,判断输入的整数的位数,然后使用取模运算符 `%` 来获取每一位数字。最后,从高到低或者从低位到高位打印每一位。以下是相应的代码示例:
```c
#include <stdio.h>
void printNumber(int num) {
// 判断整数位数
int digitCount = 0;
while (num != 0) {
digitCount++;
num /= 10; // 取整除以10得到下一位
}
printf("给定的数字位数为:%d\n", digitCount);
// 打印每位数字并按逆序
for (int i = digitCount - 1; i >= 0; i--) {
int lastDigit = num % 10; // 最后一位
printf("第%d位数字是:%d\n", i + 1, lastDigit);
num /= 10; // 移除当前位
}
}
int main() {
int inputNum;
printf("请输入一个不超过五位数的正整数:");
scanf("%d", &inputNum);
if (inputNum <= 99999) {
printNumber(inputNum);
} else {
printf("输入的数值超过五位,请重新输入。\n");
}
return 0;
}
```
阅读全文