李爱华程磊面向对象程序设计课后答案完整版Word文档下载推荐.docx

上传人:b****4 文档编号:14358459 上传时间:2022-10-22 格式:DOCX 页数:42 大小:24.14KB
下载 相关 举报
李爱华程磊面向对象程序设计课后答案完整版Word文档下载推荐.docx_第1页
第1页 / 共42页
李爱华程磊面向对象程序设计课后答案完整版Word文档下载推荐.docx_第2页
第2页 / 共42页
李爱华程磊面向对象程序设计课后答案完整版Word文档下载推荐.docx_第3页
第3页 / 共42页
李爱华程磊面向对象程序设计课后答案完整版Word文档下载推荐.docx_第4页
第4页 / 共42页
李爱华程磊面向对象程序设计课后答案完整版Word文档下载推荐.docx_第5页
第5页 / 共42页
点击查看更多>>
下载资源
资源描述

李爱华程磊面向对象程序设计课后答案完整版Word文档下载推荐.docx

《李爱华程磊面向对象程序设计课后答案完整版Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《李爱华程磊面向对象程序设计课后答案完整版Word文档下载推荐.docx(42页珍藏版)》请在冰豆网上搜索。

李爱华程磊面向对象程序设计课后答案完整版Word文档下载推荐.docx

x=50.6y=10z=A

x=216.34y=10z=A

x=216.34y=2z=A

x=216.34y=2z=E

(3)

xyz

50010000

50015001500

5002001500

 

2-6

intmain()

int*p,*init;

intcountp=0;

intcountn=0;

p=newint[20];

init=p;

for(inti=0;

i<

20;

i++)

{

cin>

*p;

p++;

}

p=p-20;

for(i=0;

if(*p>

0)countp++;

if(*p<

0)countn++;

cout<

*p<

"

正数有:

countp<

负数有:

countn<

p=init;

delete[]p;

return0;

2-7不做要求

//#include<

string>

voidcheckagescore(stringname,intage)

if(name=="

exit"

)throwname;

if(age<

0||age>

50)

throwage;

stringname;

intage;

for(inti=0;

5;

i++)

{

cin.ignore();

getline(cin,name);

cin>

age;

try

{

checkagescore(name,age);

}

catch(string)

cout<

exception:

nameisexit"

continue;

catch(int)

ageisnotproper"

continue;

}

cout<

name:

name<

age:

age<

return0;

第三章

3-1

(1)A

(2)C(3)B(4)C(5)C

(6)B(7)B(8)C(9)C

3-7

(1)

main()函数中

p1.age=30;

语句是错误的。

age是类的私有成员

构造函数应当给常数据成员和引用成员初始化,将构造函数改为:

A(inta1,intb1):

a(a1),b(b1){}

A(inta1):

a(a1),b(a){}再将main中的Aa(1,2);

改为Aa

(1);

(1)在Test类中添加语句:

voidprint();

voidPrint(){

-"

x-y<

改为

voidTest:

:

Print(){

main函数中

Init(38,15);

改为:

A.Init(38,15);

Print();

A.Print();

3-8

ConstructingA

ConstructingB

DestructingB

DestructingA

doublea,doubleb

point&

p

p.x

3-9

classbox

intlen1,len2,len3;

public:

box(intl1,intl2,intl3){len1=l1;

len2=l2;

len3=l3;

longvolumn(){returnlen1*len2*len3;

};

3-10

classTest{

intm1,m2;

public:

voidInit(inta,intb){m1=a;

m2=b;

voidPring(){cout<

m1<

m2<

3-11

3-12

第四章

4-6

(1)D

(2)D(3)D(4)D(5)B

(6)D

4-7

staticintcount=0;

这样初始化静态成员值是不对的将其改为

staticintcount;

在类外,main函数前加

intSample:

count=0;

cstdlib>

classCtest

private:

intx;

constinty1;

constinty2;

Ctest(inti1,inti2):

y1(i1),y2(i2)

y1=10;

//y1为常量不能赋值

x=y1;

intreadme()const;

intCtest:

readme()const

inti;

i=x;

x++;

//常函数内不能改变成员值

returnx;

Ctestc(2,8);

inti=c.y2;

c.y2=i;

//y2为常量,不能改值

i=c.y1;

//y1私有,类外不能访问

将出错语句全部注释

4-8

题中印刷错误,将classC构造函数改为:

C()

{cout<

constructorC:

运行结果为:

constructorA

constructorB

constructorC

40

3

4

4-9#include<

iostream.h>

#include<

stdio.h>

classDate

intyear;

intmonth;

intday;

Date(inty,intm,intd)

year=y;

month=m;

day=d;

voiddisp()

year<

month<

day<

friendintcount_day(Date&

d,intk);

friendintl(intyear);

friendinth(Date&

d1,Date&

d2);

intcount_day(Date&

d,intk)

staticintday_tab[2][12]={{31,28,31,30,31,30,31,31,30,31,30,31},

{31,29,31,30,31,30,31,31,30,31,30,31}};

//使用二维数组存放各月天数,第一行对应非闰年,第二行对应闰年

intj,i,s;

if(l(d.year))

j=1;

//闰年,取1

elsej=0;

//非闰年,取0

if(k)//K非0时

s=d.day;

for(i=1;

d.month;

i++)//d.month为输入的月份

s+=day_tab[j][i-1];

else//K为0时

s=day_tab[j][d.month]-d.day;

for(i=d.month+1;

i<

=12;

i++)

returns;

//S为相差的天数

intl(intyear)

if(year%4==0&

&

year%100!

=0||year%400==0)//是闰年

return1;

else//不是闰年

inth(Date&

d2)

intdays,day1,day2,y;

if(d1.year<

d2.year)//第一个日期年份小于第二个日期年份

days=count_day(d1,0);

for(y=d1.year+1;

d2.year;

y++)

if(l(y))//闰年

days+=366L;

else//非闰年

days+=365L;

days+=count_day(d2,1);

elseif(d1.year==d2.year)

day1=count_day(d1,1);

day2=count_day(d2,1);

days=day2-day1;

else

days=-1;

returndays;

voidmain()

{intyear1,year2,month1,month2,day1,day2;

输入日期1"

year1>

month1>

day1;

输入日期2"

year2>

month2>

day2;

Dated1(year1,month1,day1),d2(year2,month2,day2);

intds=h(d1,d2);

输出结果:

if(ds>

=0)

d1.disp();

printf("

与"

);

d2.disp();

之间有%d天\n\n"

ds);

else//第一个日期小于第二个日期

时间错误!

4-10

#include<

string.h>

classStudent

intnumber;

charname[20];

Student(inti=0,char*s="

\0"

)//构造学生对象

{number=i;

strcpy(name,s);

voidPrint()/

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 解决方案

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1