一个C++程序,不知哪出错,请高手详细指教,谢.(前面已问过,未解决,所以如能解决赏20分)

2025-05-20 21:10:03
推荐回答(2个)
回答(1):

#include
#include
using namespace std; //加上

struct donation{
double money;
string name;
};
int main()
{
//using namespace std;
cout<<"Enter the number of donators: ";
int size,i;
(cin>>size).get();
donation * ps = new donation[size];
for (i=0;i{
cout<<"name"<getline(cin,ps[i].name); // 数组名就是数组首元素地址,所以ps[i]就是在对应数组位置的结构,无需(*ps)[i]
cout<<"money "<cin>>ps[i].money;
cin.get();
}
cout<<"Grand Patrons:\n";
for (i=0;i{
if (ps[i].money>10000)
{
cout<cout<}
}
if(i==0)
cout<<"none\n";
cout<<"Patrons:\n";
for (i=0;i{
if (ps[i].money<10000)
{
cout<cout<}
}
if(i==0)
cout<<"none\n";
return 0;
}

回答(2):

struct donation{
double money;
string name;
}; //少了个;
int main()
{
using namespace std;
cout<<"Enter the number of donators: ";
int size,i;
cin>>size;
donation * ps = new donation[size];
for (i=0;i{
cout<<"name"<getline(cin,ps[i].name); //这里不用*
cout<<"money "<cin>>ps[i].money; //同上
cin.get();
}
cout<<"Grand Patrons:\n";
for (i=0;i{
if (ps[i].money>10000) //同上
{
cout<cout<}
}
if(i==0)
cout<<"none\n";
cout<<"Patrons:\n";
for (i=0;i{
if (ps[i].money<10000) //同上
{
cout<cout<}
}
if(i==0)
cout<<"none\n";
return 0;
}