定义一个描述学生基本情况的类,数据成员包括:年龄、姓名、性别;成员函数包括:输入和输出各个数据成员的值。 分别给出如下的3个文件: ①含类定义的头文件student.h, //student.h (这是头文件,在此文件中进行类的声明) class Student //类声明 { public: void display( ); //公用成员函数原型声明 private: int num; char name[20]; char sex; }; ②包含成员函数定义的源文件student.cpp //student.cpp //在此文件中进行函数的定义 #include <iostream> using namespace std; #include "student.h" //不要漏写此行,否则编译通不过 void Student::display( ) //在类外定义display类函数 { cout<<"num: "<<num<<endl; cout<<"name: "<<name<<endl; cout<<"sex: "<<sex<<endl; } ③包含主函数的源文件main.cpp。 为了组成一个完整的源程序,应当有包括主函数的源文件: //main.cpp 主函数模块 #include <iostream> using namespace std; #include "student.h" //将类声明头文件包含进来 int main( ) {Student stud; //定义对象 stud.display(); //执行stud对象的display函数 return 0; } 请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value。上机调试并运行。
时间: 2024-02-05 17:05:12 浏览: 85
好的,我知道了。以下是完整的程序:
student.h:
```
class Student {
public:
void display();
void set_value(int n, const char* na, char s);
private:
int num;
char name[20];
char sex;
};
```
student.cpp:
```
#include <iostream>
#include <cstring>
#include "student.h"
using namespace std;
void Student::display() {
cout << "num: " << num << endl;
cout << "name: " << name << endl;
cout << "sex: " << sex << endl;
}
void Student::set_value(int n, const char* na, char s) {
num = n;
strcpy(name, na);
sex = s;
}
```
main.cpp:
```
#include <iostream>
#include "student.h"
using namespace std;
int main() {
Student stud;
stud.set_value(123, "Tom", 'M');
stud.display();
return 0;
}
```
运行结果:
```
num: 123
name: Tom
sex: M
```
这个程序定义了一个学生类,包括年龄、姓名和性别三个数据成员,以及输入和输出数据成员的值的成员函数。在类中增加了一个对数据成员赋初值的成员函数set_value,用于对学生对象的数据成员进行赋值。在主函数中,首先定义了一个学生对象stud,然后调用set_value函数对其数据成员进行赋值,最后调用display函数输出学生对象的数据成员。
阅读全文