解题思路:
①阶乘
②累加
注意事项:
① 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 人评分
2005年春浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:821 |
C二级辅导-计负均正 (C++代码)浏览:894 |
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:622 |
C语言训练-求素数问题 (C语言代码)浏览:952 |
破解简单密码 (C语言代码)浏览:1758 |
不知道哪里错了浏览:1141 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:742 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:608 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:505 |
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:695 |