sin()双精度输出为0.00000。(C语言)
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
int main(void)
{
int i;
double interval;
for(i=0;i<30;i++)
{
interval = i/10.0;
printf("sin(%lf) = %lf t", interval, abs(sin(interval)));
};
printf("n+++++++++n");
return 0;
}
每个区间项的正弦值是 0.000000。示例罪 (0.60000) = 0.000000
回答
该abs函数是一个整数函数。这意味着您有未定义的行为,因为您使用了不匹配的格式说明符%lf。
对于浮点数,您需要使用fabs.