C++程序设计 (第三版) 谭浩强 习题8.4
习题 8.4 在本章第8.3.3节中分别给出了包含类定义的头文件student.h,包含成员函数定义的源文件student.cpp以及包含主函数的源文件main.cpp。请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value。上机调试并运行。
IDE工具:VS2010
Note: 使用不同的IDE工具可能有部分差异。
代码块
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
class Student{
public:
void display();
void set_value();
private:
int num;
string name;
char sex;
};
void Student::set_value(){
cout<<"Enter Student Number(100 ~ 999): ";
cin>>num;
while(num < 100 || num > 999){
cout<<"Number Error! Retry!\nEnter Student Number(100 ~ 999): ";
cin>>num;
}
fflush(stdin);
cout<<"Enter Student Name: ";
getline(cin, name);
cout<<"Enter Student Gender(M or F): ";
cin>>sex;
while(sex != 'M' && sex != 'F'){
cout<<"Gender Error! Retry!\nEnter Student Gender(M or F): ";
cin>>sex;
}
cout<<endl;
}
void Student::display(){
cout<<setiosflags(ios::right);
cout<<"Number: "<<setw(3)<<num;
cout<<" Name: "<<setw(10)<<name;
cout<<" Gender: "<<setw(2)<<sex<<endl<<endl;
}
int main(){
Student stu;
stu.set_value();
stu.display();
system("pause");
return 0;
}