C++ Primer Plus 第五版中文版 第六章 编程练习6

本文介绍了一个简单的C++程序设计案例,该程序用于记录并展示捐赠给维护合法权利团体的捐款信息。程序通过用户输入获取捐款者的姓名和捐款金额,并将其存储在一个动态分配的结构数组中。最终程序会列出所有捐款超过10000的重要捐款人以及其它捐款者。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  程序要求:
                编写一段程序,记录捐助给"维护合法权利团体"的钱.该程序要求用户输入捐献者数目,然后要求用户输入每一个捐献者姓名和款项 . 这些信息被储存在一个动态分配的结构数组中.每个结构有两个成员.用来储存姓名的字符数组(或STRING对象)和用来储存款项的double成员.读取所有数据后.程序将显示所有捐款超过10000的捐款者姓及其捐款数额.该列表应包含一个标题.指出线面的捐款为重要捐款人.  然后程序列出其他捐款者 .. 如果某类别没有捐款者   则程序打印单词 "none".该程序只显示这2种类别 而不进行排序..
 
  1. //记录捐助给  "维护合法权利团体的钱"
  2. #include <iostream>
  3. #include <cstring>
  4. #include <cctype>
  5.     using namespace std;
  6. struct JuanZhuZhe 
  7. {
  8.     char name[80];
  9.     double money;
  10. };
  11. int main()
  12. {
  13.     cout <<"你大爷?";
  14.     int number=0;
  15.     cout << "请输入捐助者人数目:";
  16.     cin>>number;
  17.     if (number<=0)
  18.     {
  19.         cout <<"没有捐款者 ~~Bye```/n";
  20.         return 1;
  21.     }
  22.     JuanZhuZhe *XinXiZu=new JuanZhuZhe[number];
  23.     int i=0;
  24.     while (cout <<"请输入捐款人#"<<i+1<<":" && cin>>XinXiZu[i].name && cout<<"请输入捐款数#"<<i+1<<":" && cin>>XinXiZu[i].money)
  25.     {
  26.         ++i;
  27.         if (i==number)
  28.         {
  29.             break;
  30.         }
  31.     }
  32.     if (i==0)
  33.     {
  34.         cout <<"没有信息 ````Bye/n";
  35.         return 2;
  36.     }
  37.     cout <<"重要捐款人           捐款数/n";
  38.     int ji=0;
  39.     for (int f=0;f<i;++f)
  40.     {
  41.         if (XinXiZu[f].money >10000)
  42.         {
  43.             cout <<XinXiZu[f].name<<"               "<<XinXiZu[f].money<<endl;
  44.             ++ji;
  45.         }
  46.         if (f==(i-1))
  47.         {
  48.             if (ji==0)
  49.             {
  50.                 cout <<"none                none/n";
  51.             }
  52.         }
  53.     }
  54.     cout<<"其他捐款者            捐款数/n";
  55.     ji=0;
  56.     for (f=0;f<i;++f)
  57.     {
  58.         if(XinXiZu[f].money<=10000)
  59.         {
  60.             cout <<XinXiZu[f].name<<"               "<<XinXiZu[f].money<<endl;
  61.             ++ji;
  62.         }
  63.         if (f==(i-1) &&ji==0)
  64.         {
  65.             cout <<"none                none/n";
  66.         }
  67.     }
  68.     delete []XinXiZu;
  69.     return 0;
  70. }
  71. //本人菜鸟一个 = =#  我到现在还不会 怎么吧 char数组换成 string 来用...貌似我看书还是不仔细..
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值