c语言计算1997的阶乘
时间: 2024-06-10 18:01:13 浏览: 100
以下是C语言计算1997的阶乘的代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX 10000
int main()
{
int a[MAX], i, j, n, temp, m = 1;
memset(a, 0, sizeof(a));
a[0] = 1;
for (i = 1; i <= 1997; i++)
{
temp = 0;
for (j = 0; j < m; j++)
{
n = a[j] * i + temp;
a[j] = n % 10;
temp = n / 10;
}
while (temp > 0)
{
a[m] = temp % 10;
temp = temp / 10;
m++;
}
}
printf("1997! = ");
for (i = m - 1; i >= 0; i--)
{
printf("%d", a[i]);
}
printf("\n");
return 0;
}
```
相关问题
c语言计算所有阶乘的和
以下是C语言计算所有阶乘的和的代码:
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
int i, j, n, p = 1, sum = 0;
scanf("%d", &n);
if (n < 0) {
printf("负数没有阶乘!\n");
exit(0);
}
for (i = 1; i <= n; i++) {
p = 1;
for (j = 1; j <= i; j++) {
p = p * j; //用p来计算阶乘
}
sum = sum + p; //用sum计算阶乘的和
}
printf("%d的阶乘的和为:%d\n", n, sum);
return 0;
}
```
用c语言编写计算阶乘的小程序
以下是用 C 语言编写计算阶乘的小程序:
```c
#include <stdio.h>
int main() {
int n, i;
long long factorial = 1;
printf("请输入一个正整数:");
scanf("%d", &n);
if (n < 0) {
printf("错误:输入的数字必须是正整数!");
return 0;
}
for (i = 1; i <= n; ++i) {
factorial *= i;
}
printf("%d 的阶乘为 %lld", n, factorial);
return 0;
}
```
输入一个正整数,程序会计算出该数的阶乘并输出。如果输入的数字不是正整数,则程序会提示错误。
阅读全文