{ }
CPerson ps(23,\张三\ps.Print();
问题一:以上程序存在三个错误,在不改变主函数内容的前提下,试改正该程序。
#include
public: void Print(); CPerson(int m,string n) { age=m; name=n; } private: int age; string name; };
void CPerson::Print() { cout<<\}
void main() { CPerson ps(23,\张三\ ps.Print(); }
3.2.2 程序设计
1.设计实现一个CPoint类,满足以下要求: a. 该类包含两个整型成员变量x(横坐标)和y(纵坐标),以及一个输出函数Print()用来输出横坐标和纵坐标,要求不可以在类的外部直接访问成员变量;
8
b.可以采用没有参数的构造函数初始化对象,此时的成员变量采用默认值0; c.可以采用直接输入参数的方式来初始化该类的成员变量;
#include
void CPoint::print() { cout< CPoint::point(int x1,int y1) { x=x1; y=y1; } void main() { CPoint p; CPoint(); p.print(); p.point(1,2); p.print(); p.GetX(); p.GetX(); } 9 3.3思考题 1.设计一个CStudent(学生)类,并使CStudent类具有以下特点: a.有学生姓名、学号、程序设计、信号处理、数据结构三门课程的成绩; b.全部信息由键盘输入; c.通过成员函数统计学生平均成绩,当课程数量增加时,成员函数无须修改仍可以求取平均成绩; d.输出学生的基本信息、各科成绩与平均成绩; e.学生对象用链表存储; f.统计不及格学生人数。 #include public: void setstudent(char *name,char *sn,float score[N]); void showstudent(); private: char Sname[10]; char Sno[8]; float Score[3]; float Avg; float Sum; int count; }; void CStudent :: setstudent(char *name,char *sn,float score[N]) { int i; float Sum=0.0; int count=0; strcpy(Sname,name); strcpy(Sno,sn); for(i=0;i 10 count++; } for(i=0;i<3;i++) { Sum=Sum+Score[i]; } Avg=Sum/count; } void CStudent ::showstudent() { int i; cout< void main() { int i,j,k=0; char name[10],no[8]; float score[N]; for(j=1;j<=M;j++) { cout<<\ \ cin>>name; cout<<\ \ cin>>no; cout<<\ \ for(i=0;i S1.setstudent(name,no,score); S1.showstudent(); if(score[i]<60) k++; 11