关于使用指向函数的指针变量作函数参数的求定积分的问题

2024-12-03 17:51:36
推荐回答(1个)
回答1:

你的函数存在两个问题:
1 sec=(a-b)/parts; //分割区间a b
你a和b都是整数,parts也是整数,这样如果(a-b)/parts<0或者是小数的话,小数部分都会被省略,所以要强制类型转换,改为 sec=(double)((a-b))/parts; 这样除法运算的结果就会是double了

2 你输入的参数刚好符合你程序的问题:
double i=(double)a;
double Tn=0;
sec=(a-b)/parts; //分割区间a b
while(i 执行以上代码 a=12 b=6 i=(double)a i=12.000000>b
所以你的while()循环就没有执行就退出了,结果当然是0了