解题思路:
程序正确,但总是提醒答案错误,是因为结果超出了变量可表示的范围
注意事项:
使用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语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:1411 |
蛇行矩阵 (C语言代码)浏览:524 |
回文数字 (C语言代码)浏览:2506 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:519 |
出圈】指针malloc版浏览:355 |
C二级辅导-同因查找 (C语言代码)浏览:563 |
GC的苦恼 (C语言代码)浏览:618 |
C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:518 |
C语言程序设计教程(第三版)课后习题6.9 (C语言代码)浏览:479 |
C语言程序设计教程(第三版)课后习题7.3 (C语言代码)浏览:440 |