自学内容网 自学内容网

C语言 指针方法 用矩形法求定积分的通用函数

写一个用矩形法求定积分的通用函数,分别求e^x,sinx,cosx这三个函数从0到1的定积分

#include <stdio.h>
#include <math.h>

double rectangleMethod(double (*func)(double), double a, double b, int n) {
    double sum = 0.0;
    double width = (b - a) / n;
    for (int i = 0; i < n; i++) {
        double x = a + i * width;
        sum += func(x) * width;
    }
    return sum;
}

int main() {
    int n = 1000;
    printf("Integral of e^x from 0 to 1: %f\n", rectangleMethod(exp, 0, 1, n));
    printf("Integral of sin(x) from 0 to 1: %f\n", rectangleMethod(sin, 0, 1, n));
    printf("Integral of cos(x) from 0 to 1: %f\n", rectangleMethod(cos, 0, 1, n));
    return 0;
}

代码解释:

  • rectangleMethod函数通过指针调用传递的函数指针来计算定积分。
  • main函数中,使用rectangleMethod函数计算e^xsin(x)cos(x)的定积分。

原文地址:https://blog.csdn.net/Random_N1/article/details/140502992

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!