-2

嗨,首先这是我的程序,我想让我的程序的所有输出在列中隔离

这是我的程序的输出,现在我想让输出在年龄和部分中都符合要求:

#include<iostream>
#include <iomanip>
using namespace std;
struct student {
string fullname[200];
string  course[200];
int age[200];
};
student p1;
main()
{
    int input;
    cout<<"How many Student do you like to Add:";
    cin>>input;
    for(int i=0; i!=input; i++)
    {
        cout<<"----------Input #"<<i+1<<"----------"<<endl;
        cout<<"Enter Name: ";
        cin.ignore();
        getline (cin,p1.fullname[i]);
        cout<<"Enter Age: ";
        cin>>p1.age[i];
        cout<<"Enter Section: ";
        cin>>p1.course[i];
    }

    cout<<"\n\n----------------- List of Student that is 19 Above -----------------"<<endl;
    cout<<"\nFull Name:"<<setw(20)<<"Age:"<<setw(20)<<"Section:"<<endl;

    for(int i=0; i!=input; i++)
    {
        if(p1.age[i] >= 19)
        {
        cout<<p1.fullname[i]<< setfill(' ') <<setw(20) <<p1.age[i]<< setfill(' ') <<setw(20)<<p1.course[i]<<endl;       
        }
    }
    system("PAUSE");
}
4

1 回答 1

1

您需要在要编写setfillsetw字段之前申请。而且您还需要将其应用于fullname.

cout << setfill(' ')
     << setw(20) << p1.fullname[i]
     << setw(20) << p1.age[i]
     << setw(20) << p1.course[i]
     << endl;
于 2017-02-15T10:33:42.043 回答