注意事项: 当int使用之后,根据测试用例,算出结果正确时,而提交未通过时,要多看看题目对于数的限制,n不超过20,而20的阶乘是一个很大的数,可能已经超过int的范围,这个时候我们考虑用long long定义变量,同时输出格式改为%lld即可
参考代码:
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
long long faci(int n) {
long long sum = 1;
while (n > 0) {
sum *= n;
n--;
}
return sum;
}
int main() {
long long sn = 0;
int n = 0;
scanf("%d", &n);
while (n > 0) {
sn += faci(n);
n--;
}
printf("%lld", sn);
return 0;
}
0.0分
0 人评分
C二级辅导-求偶数和 (C语言代码)浏览:642 |
【回文数(二)】 (C++代码)浏览:880 |
C语言训练-自由落体问题 (C语言代码)浏览:1751 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:430 |
简单的a+b (C++语言代码)浏览:867 |
C语言程序设计教程(第三版)课后习题6.8 (C语言代码)浏览:786 |
求组合数 (C语言代码)浏览:1177 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:613 |
The 3n + 1 problem (C语言代码)浏览:507 |
蛇行矩阵 (C语言代码)浏览:515 |