C语言键盘输入一个正整数m,计算并输出1!+2!+...+m!的和
时间: 2023-10-06 21:09:33 浏览: 67
```c
#include <stdio.h>
int main() {
int m;
printf("请输入一个正整数m:");
scanf("%d", &m);
int i, j, factorial = 1, sum = 0;
for (i = 1; i <= m; i++) {
factorial *= i; // 计算i的阶乘
sum += factorial; // 累加到总和中
}
printf("1!+2!+...+%d!的和为:%d\n", m, sum);
return 0;
}
```
相关问题
C语言键盘输入一个正整数m,计算并输出1!+2!+...+m!。
```c
#include <stdio.h>
int main() {
int m, i, j;
long long result = 1; // 注意要使用 long long 类型,防止溢出
printf("请输入一个正整数 m:");
scanf("%d", &m);
for (i = 1; i <= m; i++) {
result *= i; // 计算 i!
printf("%d! = %lld\n", i, result); // 输出 i! 的值
}
return 0;
}
```
C语言键盘输入两个正整数m,n计算并输出其最大公约数
您好,以下是C语言代码实现:
```c
#include <stdio.h>
int main() {
int m, n, i, gcd;
printf("请输入两个正整数m和n:\n");
scanf("%d %d", &m, &n);
for (i = 1; i <= m && i <= n; i++) {
if (m % i == 0 && n % i == 0) {
gcd = i;
}
}
printf("最大公约数为:%d\n", gcd);
return 0;
}
```
代码思路:
1. 首先,我们通过 `scanf` 函数从键盘输入两个正整数 `m` 和 `n`;
2. 然后,我们使用 `for` 循环从 1 开始,逐个判断 `i` 是否是 `m` 和 `n` 的公约数;
3. 如果 `i` 是 `m` 和 `n` 的公约数,则将其赋值给变量 `gcd`;
4. 循环结束后,我们输出变量 `gcd` 的值,即为 `m` 和 `n` 的最大公约数。
希望可以帮到您!