
C语言,编写函数f(n)计算1+2+3+。。。+n。要求返回double类型。 利用函数编程:输入一个整数n,计
2个回答
展开全部
#include <math.h>
#include <stdlib.h>
void main()
{
int Num,i,j;
double dResult;
dResult = 0;
printf("Please Enter a Number:\n");
scanf("%d",&Num);
j = 0;
for(i=1;i<=Num;i++){
j = j + i;
dResult += (i+0.0)/j;
}
printf("The Result is %lf",dResult);
getch();
return;
}
其中dResult += (i+0.0)/j;
这一句中,i+0.0是一个类似于强制类型转换的操作,因为C中如果整数除以整数结果肯定为整数,不会为double型。当然也可以将这一句修改为dResult += (double)i/j;
#include <stdlib.h>
void main()
{
int Num,i,j;
double dResult;
dResult = 0;
printf("Please Enter a Number:\n");
scanf("%d",&Num);
j = 0;
for(i=1;i<=Num;i++){
j = j + i;
dResult += (i+0.0)/j;
}
printf("The Result is %lf",dResult);
getch();
return;
}
其中dResult += (i+0.0)/j;
这一句中,i+0.0是一个类似于强制类型转换的操作,因为C中如果整数除以整数结果肯定为整数,不会为double型。当然也可以将这一句修改为dResult += (double)i/j;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
double f(int n)
{
int i;
double sum=0.0;
for(i=1; i<=n; i++) {
sum+= i;
}
return sum;
}
int main()
{
int n;
int i;
double sum=0.0;
printf("input n: ");
scanf("%d", &n);
for(i=1; i<=n ; i++) {
sum += i/f(i);
}
printf("1/f(1)+...+%d/f(%d) = %lf\n", n, n, sum);
return 0;
}
double f(int n)
{
int i;
double sum=0.0;
for(i=1; i<=n; i++) {
sum+= i;
}
return sum;
}
int main()
{
int n;
int i;
double sum=0.0;
printf("input n: ");
scanf("%d", &n);
for(i=1; i<=n ; i++) {
sum += i/f(i);
}
printf("1/f(1)+...+%d/f(%d) = %lf\n", n, n, sum);
return 0;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询