c语言定义函数total(n)计算1+2+……+n,函数的返回值是int.

2.按要求编写程序:
(1)定义函数total(n)计算1+2+……+n,函数的返回值是int。
(2)定义函数main(),输入正整数n,计算并输出下列算式的值,要求调用函数total(n)计算1+2+……+n。

参考程序:
#include <stdio.h>
I(1)nt total(int n)
{
int i,sum=0;
for(i=1;i<=n;i++)
sum+=i;
return sum;
}
(2)main()
{
int i,n,m;
double sum=0;
while(scanf("%d",&n),n<=0);
for(i=1;i<=n;i++)
{
m=total(i);
sum+=1.0/m;
}
printf("sum=%f\n",sum);
}

我觉得这个题目的答案好像有问题,我觉得倒数第五行的m=total(i)应该改为m=total(n),因为当我们输入一个n的整数时,应该按照n的值来确定和,i是一个变量,请问我的想法对吗?

应该与题目要求有关系吧,要求(2)中”计算并输出下列算式的值“,算式是怎样的?

如果算式是计算1/1+1/3+1/6+......1/m,那么就使用m=total(i)。

如果使用m=total(n),那就是计算1/m+1/m+1/m+......+1/m了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-04-23
while(scanf("%d",&n),n<=0);
m=total(n);
安照题意直接就完了,答案是 sum(1/sum(1到 i))
第2个回答  2014-04-23
你再认真看看题目

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网