实验一 类与对象的定义和使用Word格式文档下载.docx
《实验一 类与对象的定义和使用Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《实验一 类与对象的定义和使用Word格式文档下载.docx(18页珍藏版)》请在冰豆网上搜索。
,stringc="
未知"
floatd=0)
{ID=a;
name=b;
course=c;
score=d;
cout<
<
"
构造函数调用"
name<
endl;
}
~student()
{cout<
析构函数调用"
}
floatgetscore(){returnscore;
voidshow()
学号:
ID<
endl
<
姓名:
课程:
course<
成绩:
score<
};
studentmax(student*p,intn)
{studentt;
t=*p;
for(inti=1;
i<
n;
i++,p++)
if(t.getscore()<
p->
getscore())t=*p;
returnt;
studentmin(student*p,intn)
if(t.getscore()>
getscore())t=*p;
floataverage(student*p,intn)
{floatt=0;
for(inti=0;
t=t+p->
getscore();
returnt/n;
voidmain()
{studentsmax,smin;
floatave;
students[5]={student(1001,"
张三"
"
女"
89),student(1001,"
李四"
男"
59),
student(1001,"
王五"
80),student(1001,"
赵六"
100),
student(1001,"
孙七"
70)};
smax=max(s,5);
最高分学生信息如下:
smax.show();
smin=min(s,5);
最低分学生信息如下:
smin.show();
平均分是:
average(s,5)<
运行结果截图:
存在的问题
Student类的对象只能存放一门课程名称与成绩
解决方案(列出遇到的问题和解决办法,列出未解决的问题)
将coure成员改成数组
将score成员改成数组
修改max函数、min函数实现相关操作
做一个类和对象的实验要求包括学生姓名身高体重学号成绩等函数
要构造和晰构函数
高手指点
在线等候
推荐答案
?
贴一段了~
#include<
classStudent
{
private:
stringNum;
stringName;
floatheight;
floatweigth;
floatScore;
Student(stringNum,stringName,floatheight,floatweigth,floatScore)
{this->
Num=Num;
this->
Name=Name;
height=height;
weigth=weigth;
Score=Score;
~Student()
{
voidoutput()//输出
Num<
\t"
Name<
height<
weigth<
Score<
main()
Studentscore[2]={Student("
001"
小王"
1.85,65.0,95.0),Student("
002"
1.60,60.0,90.0)};
cout<
学号"
姓名"
身高(m)"
体重(kg)"
分数"
for(intj=0;
j<
2;
j++)
score[j].output();
回答时间:
2009-12-2217:
45
实验六类和对象
实验目的
熟练掌握类、对象的的概念以及对事物的抽象。
熟练掌握成员、方法的概念以及构造方法的概念。
理解面向对象的程序设计方法。
实验内容
1、定义一个类实现银行帐户的概念,包括的变量有"
帐号"
和"
存款余额"
,包括的函数有"
存款"
、"
取款"
查询余额"
和”显示帐号”。
定义main()函数,在main()函数中国创建帐户类的对象,并完成相应操作。
提示:
关键代码如下:
账户类包含的部分函数
intgetleftmoney(){
returnleftmoney;
voidsavemoney(doublemoney){
leftmoney+=money;
voidgetmoney(doublemoney){
if(money<
=leftmoney)
leftmoney-=money;
else
只能取:
leftmoney;
…
main()函数中的部分代码:
bankaccountba(888123,1000);
ba.savemoney(21000);
”存入21000元后余额为:
ba.getleftmoney();
ba.getmoney(11500);
11500元后余额为:
2、定义一个“圆”类Circle,该圆类的数据成员包括:
圆心点位置及圆的半径;
函数成员有:
设置圆心位置和半径的函数,获取圆心位置和半径的函数及构造函数。
要求构造函数可以接收圆心位置参数,而半径使用缺省值1。
编写完整的程序并创建Circle类的对象,并且分别调用各种函数,对比这些函数的执行结果,并据此写出详细的实验报告。
3.先创建一个Point类,然后定义Trianglele类。
在Trianglele类中定义三个Point的实体来表示一个三角形的三个点,再定义一个函数setTri对这三个点进行初始化,然后定义两个函数求三角形的周长、面积。
在main()中创建一个对象,求给定三点的三角形的周长、面积。
、实验目的:
掌握类和对象的使用。
2、实验环境与条件:
windows2000,VC++6.0
3、实验内容:
编写程序:
定义一个Book(图书)类,在该类定义中包括
数据成员:
m_Bookname(书名)umber(存书数量);
、m_Price(价格)和m_N
成员函数:
默认构造函数,带参数构造函数,复制构造函数,析构函数,Display()显示图书的情况;
Borrow()将存书数量减1,并显示当前存书数量;
Restore()将存书数量加1,并显示当前存书数量。
在main函数中,要求创建Book类对象,并对该图书进行简单的显示、借阅和归还管理。
4、辅助指导说明
建立一个win32控制台工程,选择空工程
在工程中建立一个或多个C++源程序。
可以有任意多个头文件。
注意一个工程中只能有一个main()函数。
main()函数应当在C++源程序文件中。
使用调试菜单,可以设置断点。
可以单步执行,观察变量的值。
通过在项目上用右键中的菜单设置。
5.源代码
新建一个类:
classBook
stringm_Bookname;
intnumber;
floatm_Price;
Book();
book(stringbookName,intbookNumber,floatbookPrice);
virtual~Book(){};
voidDisplay();
intBorrow();
intRestore();
}
写函数(举例):
Book:
:
Book()//构造
stringm_Bookname=。
。
;
intnumber=。
floatm_Price。
voidBook:
Display()
书名:
m_Bookname<
数量:
number<
主函数:
Bookbook;
//类对象
book.Book(历史,2,13.5);
book.Display();
return;
Book(stringbookName,intbookNumber,floatbookPrice);
Book(Book*cbook);
voidBorrow();
voidRestore();
Book()//无参构造
m_Bookname="
number=0;
m_Price=0;
Book(stringbookName,intbookNumber,floatbookPrice)//有参构造
m_Bookname=bookName;
number=bookNumber;
m_Price=bookPrice;
Book(Book*cbook)//复制构造
m_Bookname=cbook.m_Bookname;
number=cbook.number;
m_Price=cbook.m_Price;
价格:
m_Price<
Borrow()
if(number>
0)
number--;
else
库存量为0"
Restore()
number++;
intmain()
Bookbook1;
Bookbook2("
C++"
5,12.5);
Bookbook3(&
book2);
book2.Borrow();
book3.Restore();
book1.Display();
book2.Display();
book3.Display();
return0;
声明一个简单的Computer类,有数据成员芯片(cpu),内存(ram),光驱(cdrom)等等,有两个公有函数run,stop。
Cpu为CPU类的一个对象,ram,为RAM类的一个对象,cdrom为CDROM类的一个对象,声明并实现这个类
classCPU
doublefrequency;
//主频多少GHZ
CPU(doublefrequency=2.93);
~CPU();
CPU:
CPU(doublefrequency)
frequency=frequency;
买了一个主频为:
this->
frequency<
GHZ的CPU!
~CPU()
classRAM
intmemory;
//内存多少G
RAM(intmemory=2);
~RAM();
RAM:
RAM(intmemory)
memory=memory;
买了一根大小为:
memory<
G的内存!
~RAM()
classCDROM
stringbrand;
//光驱什么牌子
CDROM(stringbrand="
SAMSUNG"
);
~CDROM();
CDROM:
CDROM(stringbrand)
brand=brand;
买了一个牌子为:
brand<
的光驱!
~CDROM()
classComputer
CPUcpu;
RAMram;
CDROMcdrom;
Computer(CPUiCpu,RAMiRam,CDROMiCdrom);
~Computer();
voidrun();
voidstop();
Computer:
Computer(CPUiCpu,RAMiRam,CDROMiCdrom):
cpu(iCpu),ram(iRam),cdrom(iCdrom)
电脑组装完成!
voidComputer:
run()
电脑开机!
stop()
电脑关机!
~Computer()
voidmain(){
Computerc(cpu,ram,cdrom);
c.run();
c.stop();