c++输入一个正整数呐(n<16),输出1到n的阶乘和
时间: 2024-01-01 19:06:10 浏览: 29
#include<stdio.h>
int main()
{
int n,i,j,sum=0,fact=1;
printf("请输入一个正整数n:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
fact=1;//每次循环前将阶乘初始化为1
for(j=1;j<=i;j++)
{
fact*=j;//计算阶乘
}
sum+=fact;//累加阶乘
}
printf("1到%d的阶乘和为:%d\n",n,sum);
return 0;
}
相关问题
c++编程 输入一个n 输出n的阶乘可以被多少个2整除
可以使用循环来计算n的阶乘,然后统计其中因子2的个数即可。因为阶乘中2的个数是比5的个数多的,所以只需要统计因子5的个数即可知道因子2的个数。
以下是C++代码实现:
```c++
#include <iostream>
using namespace std;
int main() {
int n;
cout << "请输入一个正整数n:";
cin >> n;
int cnt = 0;
for (int i = 5; i <= n; i += 5) {
int j = i;
while (j % 5 == 0) {
cnt++;
j /= 5;
}
}
cout << "n的阶乘可以被" << cnt << "个2整除。" << endl;
return 0;
}
```
输入一个正整数n,程序会输出n的阶乘可以被多少个2整除。
输入一个正整数n求n!c++
以下是求n!的C++代码:
```c++
#include <iostream>
using namespace std;
int main() {
int n, ans = 1;
cin >> n;
for (int i = 1; i <= n; i++) {
ans *= i;
}
cout << ans << endl;
return 0;
}
```
这里使用了一个循环来计算n的阶乘,初始时ans为1,然后从1到n依次乘以i,最后得到的ans就是n的阶乘。