类与对象练习题Word格式.docx
- 文档编号:20885660
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:11
- 大小:16.64KB
类与对象练习题Word格式.docx
《类与对象练习题Word格式.docx》由会员分享,可在线阅读,更多相关《类与对象练习题Word格式.docx(11页珍藏版)》请在冰豆网上搜索。
inti=1;
fileo<
i<
."
cout<
while(filei>
c){
if(c=='
\n'
){
i++;
fileo<
\n"
cout<
}else{
c;
}
}
filei.close();
fileo.close();
}
#include<
iostream.h>
fstream.h>
classdog
{
public:
intweight;
intage;
dog()
{
dog(intweight1,intage1)
weight=weight1;
age=age1;
~dog()
};
intmain()
dogdog1(5,10);
dogdog2;
ofstreamfout;
ifstreamfint;
fout.open("
out.txt"
fout<
dog1.weight<
dog1.age<
endl;
fint.open("
fint>
dog2.weight>
dog2.age;
dog2.weight<
dog2.age<
fout.close();
//二进制
ofstreamfdata("
file.dat"
ios:
:
binary);
fdata.write((char*)(&
dog1),sizeof(dog1));
ifstreamfint1("
fint1.read((char*)(&
dog2),sizeof(dog2));
return0;
//dsStack.h:
interfaceforthedsStackclass.
//
//////////////////////////////////////////////////////////////////////
#if!
defined(AFX_DSSTACK_H__784FB507_8F89_496B_9619_22C97C0AA0D8__INCLUDED_)
#defineAFX_DSSTACK_H__784FB507_8F89_496B_9619_22C97C0AA0D8__INCLUDED_
#if_MSC_VER>
1000
#pragmaonce
#endif//_MSC_VER>
template<
classT>
structnode
Tdata;
node*next;
template<
classdsStack
private:
intsize;
node<
T>
*floor;
*top;
dsStack();
virtual~dsStack();
Tpop();
voidpush(Tob);
intgetSize();
dsStack<
dsStack()
size=0;
top=newnode<
top->
data=0;
next=0;
floor=top;
~dsStack()
*p;
p=top;
while(p)
top=top->
next;
deletep;
p=top;
floor=0;
top=0;
TdsStack<
pop()
Ttmp;
tmp=top->
data;
top=top->
size--;
deletep;
returntmp;
voiddsStack<
push(Tob)
*p=newnode<
p->
data=ob;
next=top;
top=p;
size++;
intdsStack<
getSize()
returnsize;
#endif//!
#include"
dsStack.h"
typedefdoubleT;
voidmain()
dsStack<
st;
Ti;
Ta;
for(i=1;
10;
i++)
st.push(i);
st.getSize()<
5;
a=st.pop();
cout<
a<
st.push(i+0.1);
string.h>
classString
char*str;
//首地址
intlen;
//长度值
String();
String(String&
str);
~String(){}
voidset(char*s);
voidshow();
intgetlen();
voiddelchar(charch);
String&
operator=(String&
operator+=(String&
friendStringoperator+(String&
String&
intoperator==(String&
String:
String()//构造函数
len=0;
str=newchar[len+1];
*str='
\0'
String(String&
s)
len=s.len;
strcpy(str,s.str);
voidString:
set(char*s)
{
len=strlen(s);
strcpy(str,s);
show()//输出
str="
str<
len="
len<
intString:
getlen()
returnlen;
delchar(charch){}
String&
String:
s)//赋值
if(s.str)
str=newchar[strlen(s.str)+1];
strcpy(str,s.str);
elsestr=0;
returns;
s)//连接
strcat(str,s.str);
Stringoperator+(String&
s1,String&
s2)//友元函数连接
Stringt;
t.len=s1.len+s2.len;
t.str=newchar[t.len+1];
strcpy(t.str,s1.str);
strcat(t.str,s2.str);
returnt;
operator==(String&
s)//比较2
returnstrcmp(str,s.str);
/*定义一个描述教师的类Teacher,数据成员包括工号num、姓名name、性别sex、家庭住址faddr、联系电话tel、E-mail地址、
职务headship、职称post和工资salary。
对于数据成员,要求用字符数组实现工号、姓名、家庭住址、联系电话、E-mail地址、
职务和职称,用字符型量实现性别,用整型量实现工资。
成员函数包括:
(1)设置工号
(2)设置姓名(3)设置性别(4)设置家庭住址
(5)设置联系电话(6)设置E-mail地址(7)设置职务(8)设置职称(9)设置工资(10)输出一个教师的全部描述信息。
在主函数中定义一个教师类对象,然后对所有成员函数进行测试。
*/
#include"
teacher.h"
teacherBetty;
//定义一个教师对象
voidteacher:
display()
工号num:
tnum<
姓名name:
tname<
性别sex:
tsex<
家庭住址faddr:
tfaddr<
联系电话tel:
ttel<
E-mail地址:
tmail<
职务headship:
theadship<
职称post:
tpost<
工资salary:
tsalary<
#definek100
classteacher//定义教师类,设置其成员
charnum[k];
charname[k];
charfaddr[k];
//家庭住址
chartel[k];
charmail[k];
charheadship[k];
//职务
charpost[k];
//职称
charsex;
intsalary;
//工资
charsetTnum(chartnum[k])
{strcpy(num=tnum);
charsetTname(chartname[k])
{strcpy(name=tname);
charsetTfaddr(chartfaddr[k])//家庭住址
{strcpy(faddr=tfaddr);
charsetTtel(charttel[k])
{strcpy(tel=ttel);
charsetTmail(chartmail[k])
{strcpy(mail=tmail);
charsetTheadship(chartheadship[k])//职务
{strcpy(headship=theadship);
charsetTpost(chartpost[k])//职称
{strcpy(post=tpost);
charsetTsex(chartsex[k])
{sex=tsex;
intsetTsalary(inttsalary[k])//工资
{salary=tsalary;
voiddisplay();
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 对象 练习题