*7.编写一个C语言程序,给出一个不多于5位的正整数,要求得到: (1)求出它是几位数; (2)分别输出每一位数字; (3)按逆序输出各位数字。。
时间: 2023-05-31 07:01:42 浏览: 106
```c
#include <stdio.h>
int main()
{
int n, digit = 0, num[5], i;
printf("请输入一个不多于5位的正整数:");
scanf("%d", &n);
while (n > 0)
{
num[digit] = n % 10;
n /= 10;
digit++;
}
printf("它是%d位数\n", digit);
printf("每一位数字分别为:");
for (i = digit - 1; i >= 0; i--)
{
printf("%d ", num[i]);
}
printf("\n按逆序输出各位数字为:");
for (i = 0; i < digit; i++)
{
printf("%d", num[i]);
}
printf("\n");
return 0;
}
```
运行结果:
```
请输入一个不多于5位的正整数:12345
它是5位数
每一位数字分别为:1 2 3 4 5
按逆序输出各位数字为:54321
```
相关问题
用c语言编写:给出一个不多于4位的正整数,求它是几位数
```c
#include <stdio.h>
int main()
{
int num;
printf("请输入一个不多于4位的正整数:");
scanf("%d",&num);
if(num>=1000 && num<=9999)
{
printf("%d是4位数\n",num);
}
else if(num>=100 && num<=999)
{
printf("%d是3位数\n",num);
}
else if(num>=10 && num<=99)
{
printf("%d是2位数\n",num);
}
else if(num>=1 && num<=9)
{
printf("%d是1位数\n",num);
}
else
{
printf("输入错误,请输入一个不多于4位的正整数。\n");
}
return 0;
}
```
使用if-else语句,分别判断该正整数的范围,从而得出它是几位数。
用c语言编写程序,给出一个不多于5位的正整数,要求:(1)求出它是几位数;(2)分别输出每一位数字;(3)按逆序输出各位数字。
以下是用 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
```
希望这个程序能够帮到你!