C++语言程序设计课后答案Word文件下载.docx

上传人:b****3 文档编号:7199839 上传时间:2023-05-08 格式:DOCX 页数:45 大小:24.69KB
下载 相关 举报
C++语言程序设计课后答案Word文件下载.docx_第1页
第1页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第2页
第2页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第3页
第3页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第4页
第4页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第5页
第5页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第6页
第6页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第7页
第7页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第8页
第8页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第9页
第9页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第10页
第10页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第11页
第11页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第12页
第12页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第13页
第13页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第14页
第14页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第15页
第15页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第16页
第16页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第17页
第17页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第18页
第18页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第19页
第19页 / 共45页
C++语言程序设计课后答案Word文件下载.docx_第20页
第20页 / 共45页
亲,该文档总共45页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

C++语言程序设计课后答案Word文件下载.docx

《C++语言程序设计课后答案Word文件下载.docx》由会员分享,可在线阅读,更多相关《C++语言程序设计课后答案Word文件下载.docx(45页珍藏版)》请在冰点文库上搜索。

C++语言程序设计课后答案Word文件下载.docx

i+j;

/*输出结果*/

return0;

}

改正:

intmain()

inti;

//给i赋值

i+j="

<

程序运行输出:

i+j=30

2-18编写一个程序,运行时提示输入一个数字,再把这个数字显示出来。

源程序:

请输入一个数字:

"

;

cin>

>

i;

您输入一个数字是"

i<

endl;

5

您输入一个数字是5

2-20打印ASCII码为32~127的字符。

for(inti=32;

i<

128;

i++)

(char)i;

!

#$%G'

()*+,./0123456789:

?

@ABCDEFGHIJKLMNOP_QRSTUVWXYZ[\]^'

abcdefghijklmnopqrstuvwxyz<

|>

~s

2-21运行下面的程序,观察其输出,与你的设想是否相同?

unsignedintx;

unsignedinty=100;

unsignedintz=50;

x=y-z;

Differenceis:

x;

x=z-y;

\nNowdifferenceis:

x<

endl;

50

Nowdifferenceis:

4294967246

注意,第二行的输出并非-50,注意x、y、z的数据类型。

2-22运行下面的程序,观察其输出,体会i++与++i的差别。

intmyAge=39;

//initializetwointegers

intyourAge=39;

Iam:

myAge<

yearsold.\n"

Youare:

yourAge<

yearsold\n"

myAge++;

//postfixincrement

++yourAge;

//prefixincrement

Oneyearpasses...\n"

Anotheryearpasses\n"

myAge++<

++yourAge<

Let'

sprintitagain.\n"

Iam39yearsold

Youare39yearsold

Oneyearpasses

Iam40yearsold

Youare40yearsold

Anotheryearpasses

Youare41yearsold

sprintitagain

Iam41yearsold

2-28编写一个完整的程序,实现功能:

向用户提问"

现在正在下雨吗?

,提示用户输入Y或N。

若输入为Y,显示"

现在正在下雨。

若输入为N,显示"

现在没有下雨。

否则继续提问"

stdlib.h>

charflag;

while

(1)

(YesorNo):

flag;

if(toupper(flag)=='

Y'

break;

N'

x

l

q

n

或:

y

2-29编写一个完整的程序,运行时向用户提问"

你考试考了多少分?

(0~100)"

,接收输入后判断其等级,显示出来。

规则如下:

inti,score;

你考试考了多少分?

(0~100):

score;

if(score>

100||score<

0)

分数值必须在0到100之间!

else

i=score/10;

switch(i)

case10:

case9:

你的成绩为优!

case8:

你的成绩为良!

case7:

case6:

你的成绩为中!

default:

你的成绩为差!

}

(0~100):

85

2-31用穷举法找出1~100间的质数,显示出来。

分别使用while,do-while,for循环语句实现。

使用while循环语句:

math.h>

inti,j,k,flag;

i=2;

while(i<

=100)

flag=1;

k=sqrt(i);

j=2;

while(j<

=k)

if(i%j==0)

flag=0;

j++;

if(flag)

是质数."

i++;

使用do…while循环语句:

do{

}while(j<

=k);

}while(i<

=100);

使用for循环语句:

for(i=2;

=100;

for(j=2;

j<

=k;

j++)

2是质数.

3是质数.

5是质数.

7是质数.

11是质数.

13是质数.

17是质数.

19是质数.

23是质数.

29是质数.

31是质数.

37是质数.

41是质数.

43是质数.

47是质数.

53是质数.

59是质数.

61是质数.

67是质数.

71是质数.

73是质数.

79是质数.

83是质数.

89是质数.

97是质数.

2-33定义一个表示时间的结构体,可以精确表示年、月、日、小时、分、秒;

提示用户输入年、月、日、小时、分、秒的值,然后完整地显示出来。

源程序见"

实验指导"

部分实验二

2-34在程序中定义一个整型变量,赋以1~100的值,要求用户猜这个数,比较两个数的大小,把结果提示给用户,直到猜对为止。

分别使用while、do…while语句实现循环。

//使用while语句

voidmain(){

intn=18;

intm=0;

while(m!

=n)

请猜这个数的值为多少?

(0~~100):

m;

if(n>

m)

你猜的值太小了!

elseif(n<

你猜的值太大了!

你猜对了!

//使用do…while语句

}while(n!

=m);

50

25

10

15

18

第三章函数

3-2观察下面程序的运行输出,与你设想的有何不同?

仔细体会引用的用法。

intintOne;

int&

rSomeRef=intOne;

intOne=5;

intOne:

\t\t"

intOne<

rSomeRef:

\t"

rSomeRef<

intintTwo=8;

rSomeRef=intTwo;

//notwhatyouthink!

\nintOne:

intTwo:

intTwo<

5

8

3-7编写函数,参数为两个unsignedshortint型数,返回值为第一个参数除以第二个参数的结果,数据类型为shortint;

如果第二个参数为0,则返回值为-1。

在主程序中实现输入输出。

shortintDivider(unsignedshortinta,unsignedshortintb)

if(b==0)

return-1;

returna/b;

typedefunsignedshortintUSHORT;

typedefunsignedlongintULONG;

USHORTone,two;

shortintanswer;

Entertwonumbers.\nNumberone:

one;

Numbertwo:

two;

answer=Divider(one,two);

if(answer>

-1)

Answer:

answer;

Error,can'

tdividebyzero!

Entertwonumbers.

Numberone:

8

2

4

3-8编写函数把华氏温度转换为摄氏温度,公式为:

C=(F-32)*5/9;

在主程序中提示用户输入一个华氏温度,转化后输出相应的摄氏温度。

部分实验三

3-10编写函数求两个整数的最大公约数和最小公倍数。

intfn1(inti,intj);

//求最大公约数的函数

inti,j,x,y;

请输入一个正整数:

i;

请输入另一个正整数:

j;

x=fn1(i,j);

y=i*j/x;

和"

的最大公约数是:

的最小公倍数是:

y<

intfn1(inti,intj)

inttemp;

if(i<

j)

temp=i;

i=j;

j=i;

while(j!

=0)

temp=i%j;

j=temp;

returni;

120

72

120和72的最大公约数是:

24

120和72的最小公倍数是:

360

3-12在主程序中提示输入整数n,编写函数用递归的方法求1+2+…+n的值。

intfn1(inti);

从1累加到"

i<

的和为:

fn1(i)<

intfn1(inti)

if(i==1)

return1;

returni+fn1(i-1);

100

从1累加到100的和为:

5050

3-14用递归的方法编写函数求Fibonacci级数,公式为fib(n)=fib(n-1)+fib(n-2),n>

2;

fib

(1)=fib

(2)=1;

观察递归调用的过程。

3-15用递归的方法编写函数求n阶勒让德多项式的值,在主程序中实现输入、输出;

floatp(intn,intx);

intn,x;

请输入正整数n:

n;

请输入正整数x:

n="

x="

P"

("

)="

p(n,x)<

floatp(intn,intx)

if(n==0)

elseif(n==1)

returnx;

return((2*n-1)*x*p(n-1,x)-(n-1)*p(n-2,x))/n;

1

n=1

x=2

P1

(2)=2

3

4

n=3

x=4

P3(4)=154

第四章类

4-9设计并测试一个名为Rectangle的矩形类,其属性为矩形的左下角与右上角两个点的坐标,能计算矩形的面积。

classRectangle

public:

Rectangle(inttop,intleft,intbottom,intright);

~Rectangle(){}

intGetTop()const{returnitsTop;

}

intGetLeft()const{returnitsLeft;

intGetBottom()const{returnitsBottom;

intGetRight()const{returnitsRight;

voidSetTop(inttop){itsTop=top;

voidSetLeft(intleft){itsLeft=left;

voidSetBottom(intbottom){itsBottom=bottom;

voidSetRight(intright){itsRight=right;

intGetArea()const;

private:

intitsTop;

intitsLeft;

intitsBottom;

intitsRight;

};

Rectangle:

:

Rectangle(inttop,intleft,intbottom,intright)

itsTop=top;

itsLeft=left;

itsBottom=bottom;

itsRight=right;

intRectangle:

GetArea()const

intWidth=itsRight-itsLeft;

intHeight=itsTop-itsBottom;

return(Width*Height);

RectangleMyRectangle(100,20,50,80);

intArea=MyRectangle.GetArea();

Area:

Area<

\n"

3000

UpperLeftXCoordinate:

20

4-11定义一个矩形类,有长、宽两个属性,有成员函数计算矩形的面积

Rectangle(floatlen,floatwidth)

Length=len;

Width=width;

~Rectangle(){};

floatGetArea(){returnLength*Width;

floatGetLength(){returnLength;

floatGetWidth(){returnWidth;

floatLength;

floatWidth;

floatlength,width;

请输入矩形的长度:

length;

请输入矩形的宽度:

width;

Rectangler(length,width);

长为"

length<

宽为"

width<

的矩形的面积为:

r.GetArea()<

长为5

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

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2