C程序设计习题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C++程序设计练习题

学院:计算机学院

专业班级:物联网1002

学号:

姓名:徐远志

第八章

1.下面是一个类的测试程序,试设计出能是用如下测试程序的类.

Int main()

{

Test x;

(30,20);

();

return 0;

}

解:

#include

using namespace std;

class Test 义并实现一个矩形类Crectangle。该类包含了下列成员函数。

Crectangle(): 累的构造函数,根据需要可以定义多个构造函数SetTop(),SetLeft(): 设置矩形的左上角坐标

SetLength(),SetWidth(): 设置矩形的长和宽

Perimeter(): 求矩形的周长

Area(): 求矩形的面积

GetWidth(): 返回矩形的宽度

Getlength(): 返回矩形的长度

IsSquare(): 判断矩形是否为正方形

Move(): 将矩形从一个位置移动到另一个位置

Size(): 改变矩形的大小

Where(): 返回矩形的左上角的坐标

PrintRectangle(): 输出矩形的四个顶点的坐标

数据成员

int top,left;

int length,width;

解:

#include

using namespace std;

class Crectangle 次歌手大赛中,有JudgeNum个评委给选手打分,参加比赛的选手有PlayerNum

名,现为比赛积分编写一个CompetitionResult类,类的定义如下:(定义略)

(1)写出所有的成员函数和实现代码。

(2)编写main()函数对该类进行测试。在函数体中,定义了一个competitionResult 类的对象数组r[PlauerNum],他的每个元素记录了每个选手的所有信息,个评委的打分通过键盘的输入,在屏幕上应有提示信息进行交互式操作,比赛结果按选手得分从高到底排列输出。

解:

(1)CompetitionResult::CompetitionResult()

{

num=0; strcpy(name,"");

for(int i=0;i

score[i]=;

average=0;

}

CompetitionResult::CompetitionResult(short n,char*ps)

{

num=n;strcpy(name,ps);

for(int i=0;i

score[i]=;

average=0;

}

float CompetitionResult::MaxScore()

{ int max=score[0];

for(int i=0;i

if(max

return max;

}

float CompetitionResult::MinScore()

{ int min=score[0];

for(int i=0;i

if(min>score[i]) min=score[i];

return min;

}

void CompetitionResult::SetAvg()

{ int i;float sum=;

for(i=0;i

sum+=score[i];

sum=sum-MaxScore()-MinScore();

average=sum/(JudgeNum-2);

}

float CompetitionResult::GetAvg()

{ return average;

}

short CompetitionResult::GetNo(int i) {return num;}

void CompetitionResult::SetNo(int i) {num=i;}

char CompetitionResult::* GetName() {return name ;}

float CompetitionResult::GetScore(int j) {return score[j];}

void CompetitionResult::Setscore(int k,float av) { score[k]=av; } void Sort(CompetitionResult *pr,int n)

{

int i,j ,k;

CompetitionResult temp;

for(i=0;i

{

k=i;

for(j=i+1;j

if((pr[j].average)>(pr[k].average))

k=j;

if(k!=j)

{

temp=pr[i];

pr[i]=pr[k];

pr[k]=temp;

}

}

}

(2)

int main()

相关文档
最新文档