当前位置 : 主页 > 编程语言 > c语言 >

C语言实现三角函数表

来源:互联网 收集:自由互联 发布时间:2021-05-12
本文实例为大家分享了C语言列写三角函数表的具体代码,供大家参考,具体内容如下 下面是用 函数指针 实现的三角函数表,其中cos函数、sin函数和tan函数都已经在 math.h 中定义, 函数

本文实例为大家分享了C语言列写三角函数表的具体代码,供大家参考,具体内容如下

下面是用函数指针实现的三角函数表,其中cos函数、sin函数和tan函数都已经在<math.h>中定义,函数tabulate中使用的函数ceil也属于<math.h>,当给定double型实参x时,函数ceil会返回大于或等于x的最小整数。当给定三角函数的起始值,终止值和步长以后,程序会打印出相对应的三角函数值。

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

// 传递函数指针f时,tabulate函数显示函数f的值
void tabulate(double (*f)(double), double first, double last, double incr);

int main(void)
{
 double initial, final, increment;

 printf("Enter initial value: ");
 scanf("%lf", &initial);

 printf("Enter final value: ");
 scanf("%lf", &final);

 printf("Enter increment: ");
 scanf("%lf", &increment);

 printf("\n x cos(x)"
  "\n ------- -------\n");
 tabulate(cos, initial, final, increment);

 printf("\n x sin(x)"
  "\n ------- -------\n");
 tabulate(sin, initial, final, increment);

 printf("\n x tan(x)"
  "\n ------- -------\n");
 tabulate(tan, initial, final, increment);

 return 0;
}

void tabulate(double (*f)(double), double first, double last, double incr)
{
 double x;
 int i, num_intervals;

 num_intervals = ceil((last - first) / incr);
 for (i = 0; i <= num_intervals; i++) {
 x = first + i * incr;
 printf("%10.5f %10.5f\n", x, (*f)(x));
 }
}

参考资料:

《C语言程序设计现代方法》

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自由互联。

网友评论