A编程题--运动会

A编程题--运动会

时间: 1ms        内存:128M

描述:

小平所在单位举办运动会,规定每人最多可参加三项比赛,每项比赛取前六名。奖励规定:第一名奖励80元,第二、三名奖励60元,第四、五名奖励40元,第六名奖励20元。小平参加了游泳,跑步,投掷项目。

//主函数已给定如下,其他内容自由设计,提交时不需要提交主函数
int main()
{
    Sports spts;
    int rank,i;
    int money=0;
    for(i=0; i<3; i++)
    {
        cin>>rank;
        money +=spts.calc(rank);
    }
    cout<<money<<endl;
    return 0;
}

输入:

小平游泳,跑步,投掷项目的名次

输出:

小平的奖励金额

示例输入:

3 7 6

示例输出:

80

提示:

参考答案(内存最优[1092]):

#include <stdio.h>
int main()
{

    int q,s=0,g,i;
    for(i=0;i<3;i++)
    {
        scanf("%d",&q);
        if(q==1)s=s+80;
        else if(q==2||q==3)s=s+60;
        else if(q==4||q==5)s=s+40;
        else if(q==6)s=s+20;
    }

    printf("%d\n",s);
    return 0;

}

参考答案(时间最优[0]):

#include <iostream>
using namespace std;
class Sports
{
public:
    int calc(int rank);
};
int Sports::calc(int rank)
{
    int money[]= {0,80,60,60,40,40,20};
    if(rank<0||rank>6) rank=0;
    return money[rank];
}

int main()
{
    Sports spts;
    int rank,i;
    int money=0;
    for(i=0; i<3; i++)
    {
        cin>>rank;
        money +=spts.calc(rank);
    }
    cout<<money<<endl;
    return 0;
}

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注