int minute; int sec; };
Time t; int main() {
t.set_time(); t.show_time(); return 0; }
程序3
#include
void set_time(void); void show_time(void); private: int hour; int minute; int sec; };
void Time::set_time(void) {cin>>hour; cin>>minute; cin>>sec; }
void Time::show_time(void)
{cout< Time t; int main() { t.set_time(); t.show_time(); return 0; } 14 实验3:程序代码 (1)3.5 #include Student(int n,string nam,char s) {num=n; name=nam; sex=s; cout<<\ } ~Student() {cout<<\ void display() {cout<<\ cout<<\ cout<<\ } private: int num; string name; char sex; }; int main() {Student stud1(10010,\ stud1.display(); Student stud2(10011,\ stud2.display(); return 0; } (2)修改析构函数: ~Student() {cout<<\ (3)增加部分: Student *p=new Student(10012,\Li_si\m'); delete p; (4)增加部分: 数据成员: 15 private: float score; 成员函数: public: Student() {}; void readdata() { cin>>num>>score;} float getscore() {return score;} 修改main: 增加:Student s[10]; int i; float total=0; 增加: for (i=0;i<10;i++) { s[i].readdata(); total+=s[i].getscore(); } cout< (5)增加: 在类Student中:friend void fdisplay(Student *s); 在类外: void fdisplay(Student *s) {cout<<\}; 在main函数中: Student s1; s1.readdata(); fdisplay(&s1); 16 实验4: 程序1: #include class Matrix //定义Matrix类 {public: Matrix(); //默认构造函数 friend Matrix operator+(Matrix &,Matrix &); //重载运算符“+” void input(); //输入数据函数 void display(); // private: int mat[2][3]; }; Matrix::Matrix() //{for(int i=0;i<2;i++) for(int j=0;j<3;j++) mat[i][j]=0; } Matrix operator+(Matrix &a,Matrix &b) //{Matrix c; for(int i=0;i<2;i++) for(int j=0;j<3;j++) {c.mat[i][j]=a.mat[i][j]+b.mat[i][j];} return c; } void Matrix::input() //{cout<<\ for(int i=0;i<2;i++) for(int j=0;j<3;j++) cin>>mat[i][j]; } void Matrix::display() //{for (int i=0;i<2;i++) {for(int j=0;j<3;j++) {cout< int main() {Matrix a,b,c; a.input(); 17 输出数据函数 定义构造函数 定义重载运算符“+”函数 定义输入数据函数 定义输出数据函数 b.input(); cout< cout< c=a+b; //用重载运算符“+”实现两个矩阵相加 cout< 另外的参考矩阵类: 定义一个矩阵类Matrix //首先定义了矩阵类的最大行数和列数 #include class Matrix //定义Matrix类 {public: Matrix() { Row = 2;Column = 2;}; //默认构造函数 Matrix(int r,int c) //带参数的构造函数 { int i,j; if (r>MaxRow) Row = MaxRow; else Row = r; if (c>MaxColumn) Column = MaxColumn; else Column = c; for(i=0;i for (j=0;j int MatVal[MaxRow][MaxColumn]; //矩阵值 int Row;//行数 int Column; //列数 }; 18