解题思路:
程序正确,但总是提醒答案错误,是因为结果超出了变量可表示的范围
注意事项:
使用unsigned long int 类型。
参考代码:
#include<stdio.h>
unsigned long fun(int num)
{
if(num == 1)
return 1;
else
return num * fun(num - 1);
}
int main()
{
int n, i, num = 1;
unsigned long int sum = 0;
scanf("%d", &n);
for(i = 1; i <= n; i++)
{
sum += fun(i);
}
printf("%lld",sum);
return 0;
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:716 |
C语言程序设计教程(第三版)课后习题10.1 (Java代码)浏览:1491 |
Pascal三角 (C语言代码)浏览:1251 |
C语言训练-求1+2!+3!+...+N!的和 (C语言代码)浏览:821 |
【明明的随机数】 (C语言代码)浏览:845 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:594 |
C语言程序设计教程(第三版)课后习题10.7 (C语言代码)浏览:740 |
最好的,浏览:601 |
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:630 |
C语言训练-字符串正反连接 (C语言代码)浏览:653 |