安徽省小学组省赛2014年第一题 木板面积(C++)

1.木板面积(area)

一年一次的夏令营又要开始了,卡卡西和小伙伴们早就做好了准备,满心期待着这趟快乐之旅。在一个阳光明媚的清晨,卡卡西在老师的带领下来到了这次夏令营的首站——“神奇木材加工厂”。这个木材加工厂比较特别,工人们只制作圆形和长方形样式的木板,工厂的测量工人每天需要计算每块成品木板的面积以便统计使用木材的数量。如果是一个圆形木板,他们只需要测量半径的长度;如果是一个长方形木板,仅需要测量两条边的长度(单位:厘米)。对工人师傅们而言,测量是一件很简单的事,但是计算木板面积却是一件重复而又繁琐的事,看着测量工人们愁眉苦脸的样子,卡卡西急在心上,亲爱的小朋友们,你们能帮助卡卡西,为测量工人们解决这个问题吗?

输入:输入数据有两行。第一行一个正整数m,表示测量的木板形状(1表示圆

形,2表示长方形);第二行有若干个数,如果m=1,第二行给出圆形的半径a(规定圆周率取3.14);如果m=2,第二行给出长方形长和宽a,b(中间用空格隔开)。

输出:木板面积。(最后输出结果四舍五入精确到小数点后2位)

样例1:

输入:(area.in)

1

3.0

输出:(area.out)

28.26

样例2:

输入:(area.in)

2

3.0 4.0

输出:(area.out)

12.00   

数据范围:

0≤木板边长或半径≤500

解题思路:

相信各位都知道一些求基本图形面积的公式吧。在这里再次跟大家说一下吧233。圆:3.14*半径*半径     长方形:长*宽    如果还不理解或者是不大记得的的童鞋可以去百度。好的,回到题目,这道题目特别声明了“最后输出结果四舍五入精确到小数点后2位”。对于一些小萌新来说,一般用的都是cin  cout 对于scanf 和 printf都并不是太熟悉(包括我QWQ)但是这道题目,用 printf 输出还是要更加的方便一些的。下面附上本蒟蒻的代码(捂脸)~~~里面是会有解释的。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
using namespace std;
int main()
{
    int m;
    double a,b,s=0;
    cin>>m;
    if (m==1)
    {
        cin>>a;
        s=3.14*a*a;
    }
    if (m==2)
    {
        cin>>a>>b;
        s=a*b;
    } 
    printf("%.2f",s);//保留两位输出,如果想要换成保留n(随便什么数字都可以)位的话,可以将“.2f”换成“.nf”不懂可以问我~
    return 0;
}

作者:暄妍

我的博客:http://www.cnblogs.com/zbyrainbow/

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

原文地址:https://www.cnblogs.com/zbyrainbow/p/8482977.html