使用c++编写程序输入一个正整数n,输出他的各位之积
时间: 2023-02-06 17:06:44 浏览: 81
可以使用以下代码实现:
#include <stdio.h>
int main()
{
int n, result = 1;
printf("请输入一个正整数:");
scanf("%d", &n);
while (n > 0)
{
result *= n % 10;
n /= 10;
}
printf("各位之积为:%d\n", result);
return 0;
}
首先,在 main 函数中输入 n。然后,使用一个 while 循环,每次循环都让 result 乘上 n 的个位数字(也就是 n % 10),并将 n 除以 10(也就是 n /= 10)。这样,每次循环后 n 的值就会减少一位数字,直到 n 变为 0 为止。最后,输出 result 即可。
相关问题
编写一个c++程序找出一个正整数n的各位数字中最大的数字,n由键盘输入
A:
```c++
#include <iostream>
using namespace std;
int main() {
int n;
cout << "请输入一个正整数n: ";
cin >> n;
int max_digit = 0;
while (n > 0) {
int digit = n % 10; // 取出最低位数字
if (digit > max_digit) {
max_digit = digit;
}
n = n / 10; // 去掉最低位数字
}
cout << "n的各位数字中最大的数字为:" << max_digit << endl;
return 0;
}
```
示例输出:
```
请输入一个正整数n: 12345
n的各位数字中最大的数字为:5
```
c中编写程序,输入一个五位数以内的正整数 ,正序输出各位数,用while循环
可以的,以下是解答:
```c++
#include <stdio.h>
int main() {
int n;
printf("请输入一个五位数以内的正整数:\n");
scanf("%d", &n);
printf("正序输出各位数:\n");
while (n > 0) {
printf("%d ", n % 10);
n /= 10;
}
return 0;
}
```
输入一个五位数以内的正整数,程序将会正序输出各位数,例如输入12345,输出1 2 3 4 5。