时间:2021-05-20
题目要求
利用指针编写程序,用梯形法计算下列公式中的定积分:
参考代码
首先说明一下指针的用处:因为所传递的参数均为数字,并不需要使用指针提高效率,故这里使用指针指向函数。
请注意calc()函数中的这一语句:
double(*pfunction)() = &function;即实现了我所描述的过程。
代码如下:
#include <stdio.h>#include <math.h>double function(double x){ return (double)(pow(x,3) + x/2 + 1);}double calc(double a, double b){ double ha, hb, result=0; int i; double(*pfunction)() = &function; for(i=0; i<1000; i++){ ha = (*pfunction)(a+i*(b-a)/1000.0); hb = (*pfunction)(a+(i+1)*(b-a)/1000.0); result += ((ha + hb)*(b-a)/1000.0)/2.0; } return result;}void main(){ double a = 0, b = 10, result; result = calc(a, b); printf("%lf", result);}运行结果
【输出】
2535.002500与实际值2535并无太大差距。若想提高精确度可进一步提高微元分段的数量。
以上这篇C语言:利用指针编写程序,用梯形法计算给定的定积分实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
分析:高中的时候,我们学习过,可以通过矩形法或者矩形法来求定积分。思路就是将积分区间划分成n等份,然后将这n等份近似看成矩形(或梯形),然后对所有的矩形(或梯形
本文为大家分享了C语言使用矩形法求定积分的通用函数,供大家参考,具体内容如下要求:写一个用矩形法求定积分的通用函数,分别求:sin(x),cos(x),e^x。
C++编写选择结构的程序下面,通过两个实例来说明如何编写较为复杂的C++程序。【例】编写程序,判断某一年是否为闰年。#includeusingnamespace
C语言练习题,编写程序求分段函数的值。有一个分段函数,其形式如下:编写程序,当输入x值后,输出y值。实现方法如下:main(){intx,y;printf("P
问题描述:用C或C++语言编写一个简单的词法分析程序,扫描C语言小子集的源程序,根据给定的词法规则,识别单词,填写相应的表。如果产生词法错误,则显示错误信息、位