6.6
#include <iostream> #include <string> using namespace std; struct donation{ string name; double num; }; void main66() { cout<<"Please enter the number of people:"; //cin>>(const int number); int number; int belowW=0; //计算小于10000的人数 cin>>number; donation *p=new donation[number];//动态分配结构数组 donation *q=p; int i=0; while(i<number) { cout<<"\nEnter the "<<i+1<<" name:"; cin>>q->name; cout<<"\nEnter the num:"; cin>>q->num; if(q->num<10000) belowW++; i++; q++; } //q=p; //重置指针 //测试,遍历数组是否正确 /** int j=0; while(j<number) { cout<<q->name<<": "<<q->num<<endl; j++; q++; }*/ //输出大于10000的 donation *ss=new donation[belowW];//存放小于10000的捐款人信息 donation *s=ss; q=p; int k=0; cout<<"Grand Patrons:"<<endl; while(k<number) { if(q->num>10000) cout<<q->name<<": "<<q->num<<endl; else //小于10000的存到另一个数组 { s->name=q->name; s->num=q->num; s++; } q++; k++; } //显示剩余的人,或者你也可以向上面一样,改一下条件即可 int h=0; s=ss;//重置指针 cout<<"\n\nPatronns"<<endl; while(h<belowW) { cout<<s->name<<": "<<s->num<<endl; h++; s++; } cin.get(); delete []p; //释放内存,仅需要释放使用New分配的内存 delete []ss; //释放内存, system("pause"); }
——————————————————————————————————————————————————
//写的错误或者不好的地方请多多指导,可以在下面留言或者给我发邮件,指出我的错误以及不足,以便我修改,更好的分享给大家,谢谢。
转载请注明出处:https://www.royalchen.com/
author:royalchen
Email:royalchen@royalchen.com
———————————————————————————————————————————————————