| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2070 人关注过本帖
标题:定积分函数 float integral() 谭浩强 C程序设计 第二版245页遗留问题,不会 ...
取消只看楼主 加入收藏
泣无痕
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-3-14
结帖率:100%
收藏
 问题点数:0 回复次数:0 
定积分函数 float integral() 谭浩强 C程序设计 第二版245页遗留问题,不会做的请看过来······
谭浩强 C程序设计 第二版245页曾遗留一个问题,就是编写一个定积分函数,求五个函数的定积分,给出的提示是编写一个通用函数,其形式是float integral(float a,float b,float(*fun)(float)).小可现在正研究C语言呢,就顺便把这个程序编了出来。希望有用的着的童鞋拿去看~~~~~~
#include<stdio.h>
#include<math.h>
main()
{ float f1(float);
  float f2(float);
  float f3(float);
  float f4(float);
  float f5(float);
  float integral(float,float,float(*fun)());
  float a,b;
 printf("enter a and b:");
 scanf("%f,%f",&a,&b);
 printf("\n函数(1+x)在%4.1f到%4.1f的积分是:",a,b);
 integral(a,b,f1);
 printf("\n函数(2*x+3)在%4.1f到%4.1f的积分是:",a,b);
 integral(a,b,f2);
 printf("\n函数(e^x+1)在%4.1f到%4.1f的积分是:",a,b);
 integral(a,b,f3);
 printf("\n函数(x^2+2*x+1)在%4.1f到%4.1f的积分是:",a,b);
 integral(a,b,f4);
 printf("\n函数(x^3)在%4.1f到%4.1f的积分是:",a,b);
 integral(a,b,f5);
}
f1(float x)
{
    return 1+x;
}
f2(float x)
{ return 2*x+3;
}
f3(float x)
{return exp(x)+1;
}
f4(float x)
{return x*x+2*x+1;
}
f5(float x)
{return x*x*x;
}
integral(float m,float n,float (*fun)(float))
{float sum=0.0;
float length=0.000001;
float z=m;
while(z<n)
   {sum+=((*fun)(z)+(*fun)(z+length))*length/2;   /*这里可以替换为sum+=((*fun)(z+length))*length; */
    z+=length;                                    /*当然也可以替换为sum+=((*fun)(z))*length; */
   }
 printf("%6.3f\n",sum);
}
搜索更多相关主题的帖子: float 函数 integral 谭浩强 程序设计 
2010-03-15 10:06
快速回复:定积分函数 float integral() 谭浩强 C程序设计 第二版245页遗留问题, ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024151 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved