用c++实现给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
时间: 2023-04-08 21:03:05 浏览: 92
这个问题可以回答。以下是代码示例:
```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");
// 按逆序输出各位数字
printf("按逆序输出各位数字:");
for (int i = 0; i < count; i++) {
printf("%d", arr[i]);
}
printf("\n");
return 0;
}
```
输入一个数字,程序会输出它是几位数,每一位数字是什么,以及按逆序输出各位数字。
相关问题
c++给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,
好的,以下是C++代码:
```c++
#include <iostream>
using namespace std;
int main() {
int n;
cout << "请输入一个不多于5位的整数:" << endl;
cin >> n;
// 判断几位数
int digit;
if (n < 10) {
digit = 1;
} else if (n < 100) {
digit = 2;
} else if (n < 1000) {
digit = 3;
} else if (n < 10000) {
digit = 4;
} else {
digit = 5;
}
cout << "它是" << digit << "位数" << endl;
// 分别输出每一位数字
int temp = n;
int a[5];
for (int i = 0; i < digit; i++) {
a[i] = temp % 10;
temp /= 10;
}
cout << "每一位数字分别为:";
for (int i = digit - 1; i >= 0; i--) {
cout << a[i] << " ";
}
cout << endl;
// 按逆序输出各位数字
cout << "按逆序输出各位数字为:";
for (int i = 0; i < digit; i++) {
cout << a[i];
}
cout << endl;
return 0;
}
```
输入一个不多于5位的整数后,程序会输出它是几位数,每一位数字分别是什么,以及按逆序输出各位数字。注意,以上程序只适用于正整数或0,如果输入负数会出现错误。
给出一个不多于5位的非负整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123 用C++做出来
可以使用以下C++代码来实现这个功能:
```cpp
#include <>
using namespace std;
int main() {
int num;
cout << "请输入一个不多于5位的非负整数:";
cin >> num;
// 判断位数
int digits = 0;
int temp = num;
while (temp != 0) {
temp /= 10;
digits++;
}
cout << "位数:" << digits << endl;
// 输出每一位数字
cout << "每一位数字:";
for (int i = digits - 1; i >= 0; i--) {
int digit = (num / static_cast<int>(pow(10, i))) % 10;
cout << digit << " ";
}
cout << endl;
// 按逆序输出各位数字
cout << "逆序输出各位数字:";
while (num != 0)
阅读全文