📄 cjj114.htm
字号:
}<BR>
void disp(){ cout<<endl<<"
n="<<n<<endl;}<BR>};<BR>void
main()<BR>{<BR> Sample
s1(10),s2(20),s3(30),s4(40);<BR>
s1.add(s2);<BR>
s1.add(s3);<BR>
s1.add(s4);<BR>
s1.disp();<BR>
cout<<endl;<BR>}<BR><BR>本程序的执行结果如下:<BR>
n=100<BR><BR>---------------------------------------------------<BR><BR><FONT
color=#0000ff>题8.编写一个程序,设计一个点类Point,求两个点之间的距离。<BR></FONT>解:<BR>
设计一个普通函数distance(Point &p1,Point
&p2),用于计算p1和p2点之间的距离。<BR>本题程序如下:<BR>#include<iostream.h><BR>#include<math.h><BR>class
Point<BR>{<BR> int
x,y;<BR>
public:<BR>
Point(int i,int
j){x=i;y=j;}<BR>
int getx(){ return
x;}<BR>
int gety(){ return
y;}<BR>
void
disp()<BR>
{<BR>
cout<<"("<<x<<"'"<<y<<")";<BR>
}<BR>};<BR>float distance(Point &p1,Point
&p2) //
对象引用作为参数<BR>{<BR> float
d;<BR>
d=sqrt((p1.getx()-p2.getx())*(p1.getx()-p2.getx())+<BR>
(p1.gety()-p2.gety())*(p1.gety()-p2.gety()));<BR>
return d;<BR>}<BR>void
main()<BR>{<BR> Point
p1(2,2),p2(5,5);<BR> p1.disp();
cout<<"与"; p2.disp();<BR>
cout<<"之间距离="<<distance(p1,p2)<<endl;<BR>}<BR><BR>本程序执行结果如下<BR>(2,2)
与 (5,5)
之间距离=4.24264<BR><BR>-----------------------------------------------------<BR><BR><FONT
color=#0000ff>题9.编写一个程序,设计一个职工类Person,一个系有若干个职工,按职务分为系主任、室主任和职工,给出他们之间的领导关系。<BR></FONT>解:<BR>
类Person有姓名、职务和指向领导的指针等私有数据,以及两个构造函数和以下成员函数:setleader()(设置当前职工的领导);getname()(获取职工姓名);getleader()(获取领导者对象指针);disp()(输出姓名和职务)。<BR>本题程序如下:<BR>#include<iostream.h><BR>#include<stdio.h><BR>#include<string.h><BR>class
Person<BR>{<BR> char
name[10];<BR> char
prof[10];<BR> Person
*leader;<BR>
public:<BR>
Person(){strcpy(name,"\0");}<BR>
Person(char n[],char
p[])<BR>
{<BR>
strcpy(name,n);<BR>
strcpy(prof,p);<BR>
leader=new
Person;<BR>
}<BR>
void setleader(Person
&p){leader=&p;} //
对象引用作为参数<BR>
char *getname(){ return
name;}<BR>
Person
*getleader()<BR>
{<BR>
return
leader;<BR>
}<BR>
void
disp()<BR>
{<BR>
printf("%10s
%10s%",name,prof);<BR>
}<BR>};<BR>void main()<BR>{<BR>
Person
p[]={Person("王华","室主任"),Person("李明","职工"),<BR> Person("陈强","系主任"),Person("章城","职工"),<BR> Person("张伟","室主任"),Person("许源","职工")};<BR>
p[0].setleader(p[2]);<BR>
p[1].setleader(p[0]);<BR>
p[3].setleader(p[4]);<BR>
p[4].setleader(p[2]);<BR>
p[5].setleader(p[4]);<BR>
printf(" 姓名
职务
领导姓名\n");<BR>
printf("------------------------------\n");<BR>
for(int i=0;i<6;i++)<BR>
{<BR>
p[i].disp();<BR>
printf("%10s\n",(p[i].getleader())->getname());<BR>
}<BR>}<BR><BR>本程序的执行结果如下:<BR>姓名
职务
领导姓名<BR>----- ------
-------<BR>王华
室主任
陈强<BR>李明
职工
王华<BR>陈强
系主任
<BR>章城
职工
张伟<BR>张伟 室主任
陈强<BR>许源
职工 张伟
<BR></TD>
</TR>
</TBODY>
</TABLE>
</TD>
</TR>
<TR>
<TD height=35 width="100%">
<DIV align=center></DIV>
</TD>
</TR>
</TBODY>
</TABLE>
</TD></TR></TBODY>
</TABLE>
</TD></TR></TBODY>
</TABLE>
</TD></TR></TBODY>
</TABLE>
<TABLE align=center border=0 cellPadding=0 cellSpacing=0 width=750>
<TBODY>
<TR>
<TD bgColor=#c1c1c1 height=1></TD>
</TR>
</TBODY>
</TABLE>
<TABLE align=center border=1 cellPadding=0 cellSpacing=1
style="BORDER-COLLAPSE: collapse" width=550>
<TBODY>
<td align=center>
<div align="center">
<p><a href=mailto:jjsun36@sohu.com ><span class="body14black">mailto:jjsun36@sohu.com</span></a><span class="body12red">
热线电话:0523-4864559</span></p>
</div>
</td>
</TBODY>
</TABLE>
</BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -