解题思路:
程序正确,但总是提醒答案错误,是因为结果超出了变量可表示的范围
注意事项:
使用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 人评分
简单的a+b (C语言代码)浏览:593 |
十->二进制转换 (C语言代码)浏览:1330 |
【偶数求和】 (C语言代码)浏览:674 |
C语言程序设计教程(第三版)课后习题6.2 (C语言代码)浏览:716 |
1014题解浏览:524 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:585 |
简单的a+b (C语言代码)浏览:457 |
矩阵乘方 (C语言代码)浏览:1079 |
简单的a+b (C语言代码)浏览:572 |
C语言程序设计教程(第三版)课后习题6.8 (C语言代码)浏览:653 |