解题思路:
QQ截图20171015111216.jpg

注意事项:
一定要注意,用户输出的不一定是整数,有可能是小数,所以w和h要用double型,

如果用int型提交了之后会是答案错误。

参考代码:

#include <stdio.h>
#define PI 3.141592653589793238

int main()
{
    double w, h, r, result1, result2;
    while(scanf("%lf%lf", &w, &h) == 2 && w != 0)
    {
        r = w / (2 * PI);//第一种情况
        result1 = PI * r * r * (h - 2 * r);
        r = h / (2 * PI + 2);
        r = r * 2 > w ? w / 2 : r;//第二种情况
        result2 = PI * r * r * w;
        printf("%.3f\n", result1>result2 ? result1:result2);
    }//输出两种情况算出来的最大者即可
    return 0;
}


点赞(8)
 

0.0分

18 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 22 条评论

Newguy 7年前 回复TA
解决了我多年看不懂英文的问题
验题君 7年前 回复TA
大神,请收下我的膝盖!