C语言题:求结果,给出步骤解释
输入n(n≥1),计算1+(1+2)+(1+2+3)+...+(1+2+...+n)的值。voidmain(){inti,n;longsum=0;longcal(int)...
输入n(n≥1), 计算1+(1+2)+(1+2+3)+...+(1+2+...+n)的值。
void main ( )
{
int i,n;
long sum=0;long cal(int);
scanf ("%d",&n);
for (i=1;i<=n;i++) sum=sum+cal(___); /*第一空*/
printf ("1+(1+2)+...+(1+2+...+n)=%ld\n",sum);
}
long cal(___) /*第二空*/
{
static long s=0;
s=s+m;
___; /*第三空*/
}
答案:
第一空:i
第二空:int m
第三空:return s(或 return(s))
long cal(___)
static long s=0;
s=s+m;
___;
} 尤其这一段看不懂求解释 展开
void main ( )
{
int i,n;
long sum=0;long cal(int);
scanf ("%d",&n);
for (i=1;i<=n;i++) sum=sum+cal(___); /*第一空*/
printf ("1+(1+2)+...+(1+2+...+n)=%ld\n",sum);
}
long cal(___) /*第二空*/
{
static long s=0;
s=s+m;
___; /*第三空*/
}
答案:
第一空:i
第二空:int m
第三空:return s(或 return(s))
long cal(___)
static long s=0;
s=s+m;
___;
} 尤其这一段看不懂求解释 展开
3个回答
展开全部
long cal(___) /*第二空*/
{
static long s=0;
s=s+m;
___; /*第三空*/
}
这是一个函数的实现,括号的内的int m为传进去的参数,return s为计算之后的返回值
{
static long s=0;
s=s+m;
___; /*第三空*/
}
这是一个函数的实现,括号的内的int m为传进去的参数,return s为计算之后的返回值
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
s 是一个静态变量所以s存储的值会在函数调用之后继续存在。
第一次调用cal函数时,传入值是1,所以s = s + 1 = 1
第二次调用,传入值是2, s = s+2 = 3
...
第一次调用cal函数时,传入值是1,所以s = s + 1 = 1
第二次调用,传入值是2, s = s+2 = 3
...
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询