C语言实现任意函数求不定积分
求函数f在a和b点之间的定积分
要求具有通用性,可求任意函数的定积分(以下代码中my_fun可改为想求的函数)
输入数据
•积分上限a、积分下限b、分割段数n
梯形法求定积分
#include<stdio.h>
#include<math.h>
double integrate(double (*fun)(double),double a,double b,int n);double my_fun(double x){return x*x;
}
int main(){double a,b;int n;printf("积分上限:a="); scanf("%lf",&a);printf("积分下限:b="); scanf("%lf",&b);printf("分割段数:n="); scanf("%d",&n);printf("sin函数积分值:%f\n",integrate(sin,a,b,n));printf("cos函数积分值:%f\n",integrate(cos,a,b,n));printf("x^2函数积分值:%f\n",integrate(my_fun,a,b,n));return 0;
}
double integrate(double (*fun)(double),double a,double b,int n){int i;double h=(b-a)/n;double sum=(fun(a)+fun(b))/2;for(i = 1;i <= n-1;i++)sum += fun(a+i*h);sum = h*sum;return sum;
}
PS:在Linux系统下使用gcc编译通常会出现以下错误
wuyy@ubuntu:~$ gcc jifen.c -o jifen
/tmp/ccl4v1pg.o: In function `main':
jifen.c:(.text+0xb7): undefined reference to `sin'
jifen.c:(.text+0xeb): undefined reference to `cos'
collect2: error: ld returned 1 exit status
这通常是缺少数学库而导致
这时只需要在编译时手动加入gcc libm.so库即可,如下:
wuyy@ubuntu:~$ gcc jifen.c -lm -o jifen
wuyy@ubuntu:~$ ./jifen
C语言实现任意函数求不定积分相关推荐
- 初学者 C语言如何通过函数求同心圆环面积
C语言如何通过函数求同心圆环面积: #include <stdio.h> #include <stdlib.h> #define pr 3.1415926float getar ...
- c语言学习-编写函数求x的n次方的值
编写函数求x的n次方的值 程序流程图: 代码: #include<stdio.h> long mul(int j ,int k) {int i; long mu=1; for(i=0;i& ...
- c语言用循环函数求平方,用C语言程序三种循环语句分别编写程序,求1-100的平方值?...
C语言用for语句求1~100中是3的倍数的所有整数之和,提供两种解法如下: 第一种:这是比较经典的方法: #include int main(){int sum=0;for(int i=1;i 由热 ...
- 【C语言】分段函数求值 控制输出格式 float精确到小数点后几位
案例如下 //分段函数求值 #include <stdio.h> //#include <math.h> int main() {float x,y;printf(" ...
- 利用C语言中的函数求3个数的平均值
[问题描述] 编程实现求三个整数的平均值,其中定义一个函数avg, 求三个整型数的均值, 要求有返回值.main函数负责读取数据和输出结果. [输入形式] 三个整数,空格分隔. [输出形式] 输出平均 ...
- c语言用rho函数求复数模长,Pollard Rho 算法简介
$\text{update 2019.8.18}$ 由于本人将大部分精力花在了cnblogs上,而不是洛谷博客,评论区提出的一些问题直到今天才解决. 下面给出的Pollard Rho函数已给出散点图. ...
- java语言不用pow函数求x的n次方_X的N次方求解——pow(x,n)实现
最近看到这样的一个题目求X的N次方,自己想了一些解决办法,记录一下留作日后参考. 求X的N次方,首先暴力求解: int exp(int x, int n) { int ret = 1; for(int ...
- C语言用fun函数求平均值,下列给定程序中,函数fun()的功能是:给定n个实数,输出平均值,并统计平均..._考试资料网...
填空题下列给定程序中,函数fun()的功能是:给定n个实数,输出平均值,并统计平均值以上(含平均值)的实数个数.例如, n=8时,输入193.199,195.673,195.757,196.051,1 ...
- java语言不用pow函数求x的n次方_【算法】自己实现x的n次幂(pow函数)
面试遇到了一个问题,是自己实现一个pow(x,n)函数返回一个值,是x的n次幂,回想当时回答的不好,就是死板的直接while 一直乘下去,面试官始不太满意,我想也是,这也太简单了,可是当时死活也想不出 ...
最新文章
- 'keytool' 不是内部或外部命令,也不是可运行的程序
- PHPMailer - PHP email transport class
- Codeforces Round #700 (Div. 2)A~D2解题报告
- linux标准I/O——流的打开和关闭
- vue-jest测试用例_用Jest快速介绍测试驱动的开发
- 数据库开发 - 事务 死锁分析与解决
- MySQL图形化管理器——EMS SQL Management Studio
- k8s之创建etcd集群
- AS100 和AS90 2个不同自治区域如何通信
- Linux--进程组 作业 会话 守护(精灵)进程
- 数学第一单元计算机思维导图,七年级下册数学第一单元思维导图
- Google奥运会彩蛋,你确定不来参加一下吗?
- 最大公约数是啥意思_什么是最大公约数
- 【雷丰阳SSM基础】【Spring】【03】IoC容器_配置bean—上
- BZOJ.4453.cys就是要拿英魂!(后缀数组 单调栈)
- python使用pywinauto驱动微信客户端实现公众号爬虫
- PythonStock(33)特别的巧,发现一个使用 vue 开发的股票系统应用,具备了一些基础的功能,可以拿过来直接跑起来。使用dockerfile进行构建,并跑起来
- aI_Challenger 机器翻译
- github项目创建
- 关于H5的20道面试题及答案