首页 > 其他分享 >6-1 计算捐款总量

6-1 计算捐款总量

时间:2023-04-28 22:11:24浏览次数:39  
标签:name money float 捐款 Donator 捐款人 计算 总量

这里需要设计一个捐款人类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
 1 static float totalMoney;
 2 static void printTotal()
 3 {
 4     cout<<"total"<<":"<<Donator::totalMoney<<endl;
 5 }
 6 };
 7 float Donator::totalMoney=0.0;
 8 void Donator::setName(string _name)
 9 {
10     
11     name=_name;
12 }
13 void Donator::setMoney(float _money){
14     
15     
16     totalMoney+=_money;
17     money= _money;
18 }
19 string getMaxName(Donator d[],int n)
20 {
21     float maxmoney=0;
22     int a=n;
23     string maxname;
24     for(int i=0;i<a;i++)
25     {
26         if (d[i].getMoney()>maxmoney)
27         {
28             maxmoney=d[i].getMoney();
29             maxname=d[i].getName();
30             
31             
32         }
33         
34     }
35     
36     return maxname;
37 }

 

标签:name,money,float,捐款,Donator,捐款人,计算,总量
From: https://www.cnblogs.com/liubingyu/p/17363282.html

相关文章

  • PHP计算两个经纬度之间的据离
    直接上代码/***@param$lat1*@param$lng1*@param$lat2*@param$lng2*@returnint*/functiongetDistance($lat1,$lng1,$lat2,$lng2){//将角度转为狐度$radLat1=deg2rad($lat1);//deg2rad()函数将角度转换为弧度$radLat2=deg2rad......
  • Liunx中使用expr命令并结合sed计算文件中的数字
    Liunx中使用expr命令并结合sed计算文件中的数字  数据样例:已选择153682行。已选择539794行。已选择627588行。 echo计算所有已选择的数据总共有多少条记录sed-n'{/已选择/s/[^0-9]*//gp}'exp.txt|sed-n's/[0-9]*/&/;:a;$!N;/[0-9]*/s/\n/+/;ta;P;D'|xargsexpr......
  • 计算实时分贝值
    首先安装依赖:sudoaptinstall-yportaudio19-devpipinstallpyaudio接着运行程序,记得插入麦克风importnumpyasnpimportscipy.signalassignalimportpyaudio#创建PyAudio对象pa=pyaudio.PyAudio()#打开音频输入流stream=pa.open(format=pyaudio.paInt......
  • 模型的显存和参数量计算
    模型的显存和参数量计算https://blog.csdn.net/weixin_49305813/article/details/119179849https://blog.csdn.net/NODIECANFLY/article/details/102854842......
  • 量子相关计算基本操作
    NOT,SWAPC-NOT量子门量子门NOT门NOT:输入与输出相反。量子门SWAP门SWAP:交换两个输入量子门C-NOT门 C-NOT:Controlled-NOT根据控制位决定输入是否变为相反的值。控制位为0,输出为目标值原值;控制位为1,输出为目标值的非值。此过程控制位的值保持不变。 C-NOT门中,控制位也......
  • 计算类的大小
    1.对象存储规则类实例化出的对象,有成员变量和成员函数,它们是存储在对象的?实际上,只有非静态的成员变量存储在对象中,而成员函数是存储在公用代码段中,如下图现在知道了成员变量存储在对象中,成员函数在公用代码段,那么成员变量在内存中是如何存储的对象中的成员变......
  • 计算机操作系统随笔
    计算机操作系统是一种控制和管理计算机硬件和软件资源的软件程序,类比为一座大厦的物业管理。它负责管理计算机硬件资源,如中央处理器、内存、硬盘等,以及软件资源,如程序、文件等。一座大厦的物业管理主要负责管理大厦的各项资源,如电力、水源、电梯、消防等,确保大厦能够正常运作。......
  • 计算机网络基础——10 活动目录AD的配置和应用
    10.1实验目的1.了解域和活动目录的概念2.掌握 Windows server 2003 中活动目录 AD 的安装与配置3.掌握加入域和登录域的方法10.2实验相关知识:域与活动目录的概念  一台 Windows 计算机,在网络中要么隶属于工作组,要么隶属于域。工作组通常是几部计算机组成的逻辑集合,又......
  • 通过组策略在计算机网络位置添加ftp
    原理在%APPDATA%\Microsoft\Windows\NetworkShortcuts目录添加ftp快捷方式即可。操作名称中填入完整路径和ftp快捷方式的名称,比如这样:%APPDATA%\Microsoft\Windows\NetworkShortcuts\share ......
  • c# 计算程序执行时间,计算一段代码执行所用的时间,测试效率
    usingSystem;usingSystem.Threading;classClass1{ [System.Runtime.InteropServices.DllImport("Kernel32.dll")] staticexternboolQueryPerformanceCounter(reflongcount); [System.Runtime.InteropServices.DllImport("Kernel32.dll")] ......