用C语言写定积分的通用函数:sin(x),cos(x),eX.
2019-01-26 14:07
99 查看
[code]#include<stdio.h> /************************************************************/ /*sin,cos,exp函数已经存在于系统的数学函数库中,程序开头需要定义math头文件*/ /************************************************************/ #include<math.h> /****************主函数**************************************/ int main() { float integral(float(*)(float), float, float, int); float fsin(float); float fcos(float); float fexp(float); float a1, b1, a2, b2, a3, b3, c, (*p)(float);//定义一个float类型的指针 int n = 20; //输入积分上下限 printf("enter a1,b1:\n"); scanf("%f%f", &a1, &b1); printf("enter a2,b2:\n"); scanf("%f%f", &a2, &b2); printf("enter a3,b3:\n"); scanf("%f%f", &a3, &b3); p = fsin;//用float型指针指向fsin函数 c = integral(p, a1, b1, n); printf("sin(x)=%f\n", c); p = fcos;//用float型指针指向fcos函数 c = integral(p, a2, b2, n); printf("cos(x)=%f\n", c); p = fexp;//用float型指针指向exp函数 c = integral(p, a3, b3, n); printf("exp(x)=%f\n", c); return 0; } float integral(float(*p)(float), float a, float b, int n) { int i; float x, h, s; h = (b - a) / n;//牛顿莱布尼茨公式运用 x = a; s = 0; for (i = 0; i < n; i++) { x = x + h; s = s + (*p)(x)*h; } return (s); } float fsin(float x) { return sin(x); } float fcos(float x) { return cos(x); } float fexp(float x) { return exp(x); }
相关文章推荐
- 函数指针及其在积分通用函数的应用
- C++第13周报告(二)定义自定义函数,计算sin和cos的近似值
- C中关于sin(),cos(),pow()函数使用的一个问题
- C语言中cos(x)或sin(x),x输入的是弧度,怎么输入角度
- C语言 程序 用*显示cos(x)和sin(x)
- 用C语言编写通用冒泡排序函数
- 第13周报告2:定义自定义函数,计算sin和cos的近似值
- 第十二周 输出sin与cos的值(借鉴贺老师的函数)
- C语言 程序 绘制余弦曲线和直线 , 绘制cos(x)和sin(x)
- 第13周报告2:定义自定义函数,计算sin和cos的近似值
- SDK编译数学函数出错:"undefined reference to 'cos/sin'
- Xilinx SDK 编译包含有sin, cos, or tan 等数学函数时如何成功编译
- c语言调用lua脚本的通用函数
- 【C】C语言中sin和cos的用法
- sqrt sin cos exp 函数泰勒公式和迈克劳林实现
- 使用 System.Sin、System.Cos 函数画圆 - 绘制五环图标
- 问题一百三十九:函数cos()和sin()
- C语言实现cordic算法求sin和cos值
- IOS中正弦sin、cos等函数运算的坑
- sin(cos(x))积分