*7.编写一个C语言程序,给出一个不多于5位的正整数,要求得到: (1)求出它是几位数; (2)分别输出每一位数字; (3)按逆序输出各位数字。。
时间: 2023-05-31 16:01:42 浏览: 138
```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
```
相关问题
3.请编写一个C语言程序,给一个不多于5位的正整数,要求: ①求出它是几位数; ②分别输出每一位数字; ③按逆序输出各位数字,例如原数为321,应输出123。
以下是一个简单的C语言程序,用于满足您的要求:
```c
#include <stdio.h>
#include <string.h>
int main() {
char input[6];
int length, digit, reverse = 0;
// 输入不超过5位的正整数
printf("请输入一个不超过5位的正整数: ");
scanf("%s", input);
// 检查输入长度并计算位数
length = strlen(input);
if (length > 5) {
printf("输入错误: 数字超过5位。\n");
return 1;
}
// 输出每一位数字
for (digit = 0; digit < length; digit++) {
printf("第%d位数字是: %d\n", digit + 1, input[digit] - '0');
}
// 按逆序输出各位数字
for (reverse = length - 1; reverse >= 0; reverse--) {
printf("%d", input[reverse] - '0');
}
printf("\n逆序输出是: ");
return 0;
}
```
这个程序首先提示用户输入一个不超过5位的正整数,然后计算字符串的长度(即位数)。接下来通过循环遍历每一位数字并打印出来,最后再从右到左反向输出。
用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;
}
```
阅读全文