解题思路:
程序正确,但总是提醒答案错误,是因为结果超出了变量可表示的范围
注意事项:
使用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语言程序设计教程(第三版)课后习题11.8 (C语言代码)浏览:606 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:544 |
C语言程序设计教程(第三版)课后习题5.8 (C语言代码)浏览:567 |
蛇行矩阵 (C语言代码)浏览:742 |
简单的a+b (C语言代码)浏览:572 |
上车人数 (C语言代码)浏览:710 |
生日日数 (C语言代码)浏览:1498 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:549 |
C语言程序设计教程(第三版)课后习题8.9 (C语言代码)浏览:498 |
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:574 |