解题思路:
①阶乘
②累加
注意事项:
① int越界。更换类型 long long int
②不必舍近求远,开始想用数组,但数组从0开始,浪费a[0]位置,且规定范围为n+1,还要考虑输入值范围,比较麻烦;
③直接设变量从0开始累加,即,乘完就加。
④注意设定输入值n的范围。
⑤注意累乘不要初值设0,否则永远是0,(0*任何数=0)
参考代码:
#include<stdio.h>
long long int chen(long long int n);
int main()
{
long long int n;
long long int s=0;
scanf("%lld",&n);
if(n>=1&&n<=20){
// long long int a[n+1];
// long long int j=1;
for(long long int i=1;i<=n;i++)
{
s=s+chen(i);
//printf("%lld ",s);
}
printf("%lld",s);
}
return 0;
}
long long int chen(long long int n){
long long int j=1;
for(long long int i=1;i<=n;i++){
j=j*i;
}
return j;
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题10.2 (C语言代码)浏览:674 |
简单的a+b (C语言代码)浏览:494 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:732 |
妹子杀手的故事 (C语言代码)浏览:691 |
2003年秋浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:632 |
简单的a+b (C语言代码)浏览:599 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:465 |
printf基础练习2 (有点不明白)浏览:845 |
C语言程序设计教程(第三版)课后习题7.1 (C语言代码)浏览:1229 |
C语言程序设计教程(第三版)课后习题8.1 (C语言代码)浏览:1258 |