C语言求1+(1+2)+(1+2+3)+…+(1+2+3+…+n)的值,n为键盘输入的一个整数

 我来答
公叔恒冀倩
2019-12-19 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.4万
采纳率:29%
帮助的人:913万
展开全部
一楼的错了
明显要递归调用函数
楼上的程序只能计算1+2+.....n
的值
下面这个程序才是正确的
#include<stdio.h>
int
main()
{
int
fun(int
n),sum=0;
int
n;
scanf("%d",&n);
for(int
i=n;i>=1;i--){
sum+=fun(i);
}
printf("%d",sum);
}
int
fun(int
n)
{
if(n==1)
return
1;
else
return
n+fun(n-1);
}
没有打注释,有哪里看不懂的可以追问

其实不用递归也是可以的
我新编了一个可能更容易看懂一点
#include<stdio.h>
int
main()
{
int
n,sum=0,i,j;
scanf("%d",&n);
for(i=n;i>=1;i--){
for(j=i;j>=1;j--){
sum+=j;
}
}
printf("%d",sum);
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式