6-9 计算捐款总量 (10 分)
这里需要设计一个捐款人类Donator及一个相关函数getMaxName( ),Donator类中包含捐款人的姓名及其捐款额,其部分代码如下:
class Donator{private:string name; //捐款人姓名float money; //捐款金额,单位:元 public:void setName(string _name);void setMoney(float _money);string getName(){return name;}float getMoney(){return money;}
请根据题意将代码补充完整,以输出一批捐款人来到前后的捐款总金额,以及本批次捐款人中捐款最高者的姓名,题目保证捐款人数不少于1人。
裁判测试程序样例:
#include <iostream>
using namespace std;class Donator{private:string name;float money; //单位:元 public:void setName(string _name);void setMoney(float _money);string getName(){return name;}float getMoney(){return money;}/* 你编写的代码将被嵌入这里*///读取n个捐款人的姓名和捐款额
void read(Donator dt[],int n){string name;float money;for(int i=0;i<n;i++){cin>>name>>money;dt[i].setName(name);dt[i].setMoney(money);}
}int main(){int n;cin>>n; 输入本批次将参与的捐款人数cin>>Donator::totalMoney; //输入目前已有的捐款总额 Donator::printTotal();Donator d[n];read(d,n);Donator::printTotal();cout<<getMaxName(d,n)<<endl;//输出本批次中捐款最高者姓名 return 0;
}
输入样例:
第一行为捐款人数及当前的捐款总额,第二行开始每行为一个捐款人的姓名和个人捐款金额。
3 28.5
Xiaoyu 12
Mike 81.5
Joey 50
输出样例:
输出本批次捐款人到达前后的捐款总额,及本批次中捐款最高者的姓名。
total:28.5
total:172
Mike
my answer:
static float totalMoney;static void printTotal(){cout<<"total"<<":"<<Donator::totalMoney<<endl;}
};float Donator:: totalMoney = 0.0;
void Donator :: setName(string _name){name = _name;}
void Donator :: setMoney(float _money){totalMoney += _money;}string getMaxName(Donator d[], int n){float maxmoney = 0;string maxname;for(int i = 0; i < n; i++){if(d[i].getMoney() > maxmoney){//cout<<n;maxmoney = d[i].getMoney();maxname = d[i].getName();}}return maxname;}
编辑setmoney()函数时没有为每个对象中的money赋值,只进行了总捐款量的增加,因此最后的输出结果可能时任意一个人,也可能是空;看来以后进行此类操作时,先为每个类的数据成员赋值再进行其他操作。(蓝桥杯的炸弹问题我也犯了相同错误
6-9 计算捐款总量 (10 分)相关推荐
- 计算捐款总量 (10 分)
计算捐款总量 (10 分) 这里需要设计一个捐款人类Donator及一个相关函数getMaxName( ),Donator类中包含捐款人的姓名及其捐款额,其部分代码如下: class Donator{ ...
- 6-1 计算捐款总量 (10分)
//编者注:考题版权归属版权方,作答代码版权归属编者,请勿私自盗用.本代码仅供参考,还请各位读者不吝赐教. 这里需要设计一个捐款人类Donator及一个相关函数getMaxName( ),Donato ...
- 7-11 分段计算居民水费 (10 分)
7-11 分段计算居民水费 (10 分) 为鼓励居民节约用水,自来水公司采取按用水量阶梯式计价的办法,居民应交水费y(元)与月用水量x(吨)相关:当x不超过15吨时,y=4x/3:超过后,y=2.5x ...
- 7-4 计算存款利息(10 分)
7-4 计算存款利息(10 分) 本题目要求计算存款利息,计算公式为interest=money×(1+rate)year−money,其中interest为存款到期时的利息(税前),money ...
- 7-1 计算π的值 (10分)_PTA_Java基础练习
7-1 计算π的值 (10分) 在数学中,我们可以通过π=4╳(1-1/3+1/5-1/7+1/9--1/(2╳n+1)) 来计算,n越大,计算值越靠近.输入正整数n来计算π. 输入样例: 在这里给出 ...
- 计算油费 (10 分)
计算油费 (10 分) 现在90号汽油6.95元/升.93号汽油7.44元/升.97号汽油7.93元/升.为吸引顾客,某自动加油站推出了"自助服务"和"协助服务" ...
- 7-2 计算职工工资 (10分)
7-2 计算职工工资 (10分) 给定N个职员的信息,包括姓名.基本工资.浮动工资和支出,要求编写程序顺序输出每位职员的姓名和实发工资(实发工资=基本工资+浮动工资-支出). 输入格式: 输入在一行中 ...
- Python: 7-4 计算个人所得税 (10 分)
Python: 7-4 计算个人所得税 (10 分) 假设个人所得税为:税率×(工资−1600).请编写程序计算应缴的所得税,其中税率定义为: 当工资不超过1600时,税率为0: 当工资在区间(160 ...
- 7-7 计算个人所得税(10 分)
7-7 计算个人所得税(10 分) 假设个人所得税为:税率×(工资−1600).请编写程序计算应缴的所得税,其中税率定义为: 当工资不超过1600时,税率为0: 当工资在区间(1600, 2500]时 ...
最新文章
- 人字拖藏SIM卡、戴微型蓝牙耳机!为考教师岗,多人作弊被抓
- 科学家公布地球“裸照”
- Tensorflow中的Protocol Buffer
- 心动的本质是什么_那一刻,我怦然心动了......
- java文档注释 编写格式
- 数据建模_浅谈数据仓库建设中的数据建模方法
- JAVA线程1 - 基本概念
- php qq邮箱群发
- 2021-05-04 16:37:16.550 ERROR 3268 --- [nio-8080-exec-3] o.a.c.c.C.[.[.[/].[dispatcherServlet] :
- php微信公众号图文回复,微信公众号回复图文消息——2018年6月6日
- ubuntu16.04(虚拟机) 上MPD(Music Player Daemon)+MPC运行环境搭建
- checkstyle配置规格说明
- LYF95101A 是一款高性能、高集成度、具有快速
- mysql数据库配置_mysql数据库怎么配置
- 想知道自己30分钟能“走”多远嘛?
- 【2014 年末岁首】
- BiomaRt 包进行基因ID转换
- 航班数据实时查询技术整理与剖析
- 大数据建模与数据模型工具
- 作死的神秘12行代码:分分钟让你电脑崩溃手机重启
热门文章
- 【软件工程】软件工程系统开发——系统设计概述
- R语言编写自定义函数计算分类模型评估指标:准确度、特异度、敏感度、PPV、NPV、数据数据为模型预测后的混淆矩阵、比较多个分类模型分类性能(逻辑回归、决策树、随机森林、支持向量机)
- ICCV2019——SCRDet Towards More Robust Detection for Small, Cluttered and Rotated Objects
- 如何简单计算patch代码变化量?
- c语言提纲,C语言复习提纲
- Windows系统自带图标位置
- Docker网络模式与数据管理
- 部署Kubernetes集群+Dashboard可视化页面-1.18.6版本
- 详细讲解WIN7系统上Virtualbox4.2.8安装RedHat Enterprise Linux 6.4
- VPX-M1 3U VPX 刀片计算机产品