Problem D: 指针函数 您所在的位置:网站首页 求正方形的编程函数 Problem D: 指针函数

Problem D: 指针函数

2024-06-28 18:24| 来源: 网络整理| 查看: 265

Description

YHZ自认为很聪明的人, 在C语言课上老师布置了一个作业,让能求正方形和圆的面积, 正当YHZ要跃跃欲试的时候, 老师却要求使用函数指针来实现这个功能,YHZ立马就不会了,他现在向你求助,你能帮他完成这个程序吗?

 

提示:

编写calAreaSquare(double x)函数来计算边长为x的正方形面积。

编写calAreaCircle(double x)函数来计算半径为x的圆面积。

编写calArea函数用以上两个函数作为参数实现求正方形和圆的面积。

Pi的求法

#include

Pi= acos(-1.0)

 

Input

第一行有一个正数T表示有T个询问。 接下来有T行,每行有一个正数op, 和一个浮点数x,

如果op = 1, x 表示正方形的边长。 如果 op = 2, x 表示圆的半径。

 

Output

输出只有一行表示所求的面积(保留五位小数)。

 

Sample Input 2 1 2 2 1 Sample Output 4.00000 3.14159 #include #include double calAreaSquare(double(*funp)(double),double x) { double k; k=(*funp)(x); return k; } double calAreaCircle(double(*funp)(double),double x) { double k,Pi; Pi=acos(-1.0); k=Pi*(*funp)(x); return k; } double f1(double x) { return(x*x); } int main(void) { int t,op; double(*funp)(double); double x; funp=f1; scanf("%d",&t); while(t--) { scanf("%d%lf",&op,&x); if(op==1) { printf("%.5lf\n",calAreaSquare(funp,x)); } if(op==2) { printf("%.5lf\n",calAreaCircle(funp,x)); } } return 0; }

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有