用c语言编写程序,给出一个不多于5位的正整数,要求:(1)求出它是几位数;(2)分别输出每一位数字;(3)按逆序输出各位数字。
时间: 2023-05-15 09:04:59 浏览: 141
以下是用 C 语言编写的程序,可以实现上述要求:
```c
#include <stdio.h>
int main() {
int num, digit, count = 0;
printf("请输入一个不多于5位的正整数:");
scanf("%d", &num);
printf("它是%d位数\n", num > 0 ? (int)log10(num) + 1 : 1);
printf("每一位数字分别是:");
do {
digit = num % 10;
printf("%d ", digit);
num /= 10;
count++;
} while (num > 0);
printf("\n逆序输出各位数字:");
while (count > 0) {
digit = num % 10;
printf("%d", digit);
num /= 10;
count--;
}
printf("\n");
return 0;
}
```
如果输入的数字是 12345,程序的输出结果如下:
```
请输入一个不多于5位的正整数:12345
它是5位数
每一位数字分别是:5 4 3 2 1
逆序输出各位数字:54321
```
希望这个程序能够帮到你!
相关问题
用c语言编写程序,给一个不多于5位的正整数要求:①求出它是几位数; 分别打印出每一位数字 ③ 按逆序打印出各位数字,例如原数为321,应输出123。
以下是用 C 语言编写的程序,可以实现你的要求:
```c
#include <stdio.h>
int main() {
int num, digit, count = 0;
printf("请输入一个不多于5位的正整数:");
scanf("%d", &num);
int temp = num;
while (temp > 0) {
digit = temp % 10;
printf("第 %d 位数字是:%d\n", ++count, digit);
temp /= 10;
}
printf("它是 %d 位数。\n", count);
printf("逆序打印出各位数字:");
while (num > 0) {
digit = num % 10;
printf("%d", digit);
num /= 10;
}
printf("\n");
return 0;
}
```
如果你输入的是 12345,程序的输出结果如下:
```
请输入一个不多于5位的正整数:12345
第 1 位数字是:5
第 2 位数字是:4
第 3 位数字是:3
第 4 位数字是:2
第 5 位数字是:1
它是 5 位数。
逆序打印出各位数字:54321
```
希望这个程序能够帮助到你!
用C语言编写数字操作 输入一个不多于5位的正整数,要求: 求出它是几位数 分别输出每一位数字 按逆序输出各位数字,例如原数为321,应输出123 输入说明: 一个不多于5位的正整数 输出说明: 位数每位数字为反序数字为
以下是C语言实现输入一个不多于5位的正整数,求出它是几位数,分别输出每一位数字,按逆序输出各位数字的代码:
```c
#include <stdio.h>
int main() {
int num, digit, count = 0;
int arr[5];
printf("请输入一个不多于5位的正整数:");
scanf("%d", &num);
while (num > 0) {
digit = num % 10;
arr[count] = digit;
count++;
num /= 10;
}
printf("该数是%d位数\n", count);
printf("每一位数字为:");
for (int i = count - 1; i >= 0; i--) {
printf("%d ", arr[i]);
}
printf("\n按逆序输出各位数字为:");
for (int i = 0; i < count; i++) {
printf("%d", arr[i]);
}
return 0;
}
```
阅读全文