首页 > 编程语言 >编写一个程序,记录捐助给“维护合法权利团体”的资金。该程序要求用户输入捐献者数目,然后要求用户输入每一个捐献者的姓名和款项。这些信息被储存在一个动态分配的结构数组中。每个结构有两个成员:用来储存姓名的

编写一个程序,记录捐助给“维护合法权利团体”的资金。该程序要求用户输入捐献者数目,然后要求用户输入每一个捐献者的姓名和款项。这些信息被储存在一个动态分配的结构数组中。每个结构有两个成员:用来储存姓名的

时间:2023-12-14 13:56:25浏览次数:28  
标签:donater 程序 捐款 捐款者 姓名 捐献者

编写一个程序,记录捐助给“维护合法权利团体”的资金。该程序要求用户输入捐献者数目,然后要求用户输入每一个捐献者的姓名和款项。这些信息被储存在一个动态分配的结构数组中。每个结构有两个成员:用来储存姓名的字符数组(或 string 对象)和用来存储款项的 double 成员。读取所有的数据后程序将显示所有捐款超过 10000 的捐款者的姓名及其捐款数额。该列表前应包含一个标题,指出下面的捐款者是重要捐款人(Grand Patrons)。然后,程序将列出其他的捐款者,该列表要以 Patrons 开头。如果某种类别没有捐款者,则程序将打印单词“none”。该程序只显示这两种类别,而不进行排序。

#include <iostream>
#include <vector>
using namespace std;

struct Donation {
    string name = "";
    double money = 0;
};
int main(){
    int num;
    //把所有捐款超过 10000 的捐款者的姓名及其捐款数额保存在maxPerson容器里,
    //其它的保存在minPerson容器里
    vector<Donation> maxPerson;
    vector<Donation> minPerson;
    cout << "请输入捐款者的人数:";
    cin >> num;
    Donation* donater = new Donation[num];
    for (int i = 0; i < num; i++) {
        cout << "请输入第 " << i + 1 << " 位捐款者的姓名和款项:";
        cin >> donater[i].name >> donater[i].money;
        if (donater[i].money > 10000) {
            maxPerson.push_back(donater[i]);
        }
        else {
            minPerson.push_back(donater[i]);
        }
        //cin.sync();
    }
    cout << "***********Grand Patrons**************" << endl;
    if (maxPerson.size()) {
        for (auto a : maxPerson) {
            cout << "姓名:" << a.name << "\t捐献款项:" << a.money << endl;
        }
    }
    else {
        cout << "none" << endl;
    }
    cout << "***********Patrons**************" << endl;
    if (minPerson.size()) {
        for (auto b : minPerson) {
            cout << "姓名:" << b.name << "\t捐献款项:" << b.money << endl;
        }
    }
    else {
        cout << "none" << endl;
    }
    delete[] donater;

    return 0;
}

标签:donater,程序,捐款,捐款者,姓名,捐献者
From: https://www.cnblogs.com/smartlearn/p/17901020.html

相关文章

  • docker~构建java应用程序的正确姿势
    我们的构建和打包,都是在docker环境进行的,你可以使用Dockerfile中的多镜像模式,也可以单独执行,我是在jenkinspipeline中用到这个,所以我单独写,这个使我的Dockerfile更加简洁。构建java项目,我们为了保证宿主机的整洁,我们采用docker的方式进行项目的编译和打包$workspace是在docke......
  • 微信小程序抓包及测试案例
    网上大多数的小程序测试抓包都是用的安卓模拟器,这里使用的是BurpSuite+Proxifer+微信客户端的抓包方式环境准备Burp2023.9.2Proxifier4.5Proxifier是一款功能非常强大的socks5客户端,可以让不支持通过代理服务器,工作的网络程序能通过HTTPS或socks或代理链。其是收费软件,免费试......
  • 小程序配置
    JSON配置app.json是当前小程序的全局配置,包括了小程序的所有页面路径、界面表现、网络超时时间、底部tab等。点击查看代码{"pages":[//页面路由,在这里添加路由可以自动生成对应文件"pages/index/index","pages/logs/logs","pages/demo01/demo01"],......
  • 第1-14届河南省大学生程序设计竞赛(ICPC-ACM河南省赛)
    河南省大学生程序设计竞赛又称为河南省内的ACM,是河南省内大学生程序设计的盛宴  2021年5月22日至23日,河南省第十三届大学生程序设计竞赛在  河南农业大学举行,2022年 4月16日,中原工学院我院2022年(第14届)ACM程序设计竞赛决赛在学院基础实验楼举行。5月20日至21日,2023年......
  • [good]visual studio 2022 创建空的win32程序
    参考这个VS创建空的Win32程序-fenggwsx-博客园(cnblogs.com)   编译运行 ......
  • 程序员成长:微创新是怎么发生的
    一、"发现的乐趣"今天在看费曼的一本书,叫做《发现的乐趣》里面有一个评论。我觉得还挺有意思的,今天拿出来跟大家分享一下。那么这个评论的原文就是说“创新是来自于解决问题的结果”。 费曼是20世纪著名的物理学家,诺贝尔物理学奖获得者。他出生于1918年,于1995年去世。费曼在物......
  • 《程序员进阶心法》读书(二)
    《程序员进阶心法》读书(二)(一)主要是第一二篇的知识点,本文是剩余的第三四篇的知识点描述问题的模式问题的上下文问题的具体描述问题的解决思考和思路问题的解决方案和具体技术或办法问题解决后的留下的思考或者其他延伸的疑问个人体会:或许可以作为写一片技术......
  • 《程序员进阶心法》读书(一)
    《程序员进阶心法》读书(一)前段时间在why佬技术群里有童鞋介绍了《程序员进阶心法》这本书,后来去图书馆借书偶然又遇到了这本书,我本人也是一直在找一个突破技术的方法,遂借来读读,我是先粗读了一遍,后又细读了比较关心的章节,收获比较大,特此记录。在前言里作者提到:这是一本关于路径......
  • 揭秘IT行业市场现状,2024年成为程序员还有发展前景吗?
    前言IT行业的发展前景仍然非常广阔,尽管有一些声音认为该行业已经饱和,但实际上程序员仍然有大量的需求,并且薪资水平也在持续增长。首先,IT行业的发展速度非常快,新技术不断涌现,比如人工智能、大数据、云计算等等。这些新技术的应用范围越来越广泛,对程序员的需求也越来越大。因此,程序员......
  • (13)不运行程序,立即预览报表
    前提是要在设计的时候,数据库已正确连接和显示 双击frxReport1 ......