C++程序设计基础习题2及其解答第二版Word文件下载.docx

上传人:b****7 文档编号:22150564 上传时间:2023-02-02 格式:DOCX 页数:15 大小:35.01KB
下载 相关 举报
C++程序设计基础习题2及其解答第二版Word文件下载.docx_第1页
第1页 / 共15页
C++程序设计基础习题2及其解答第二版Word文件下载.docx_第2页
第2页 / 共15页
C++程序设计基础习题2及其解答第二版Word文件下载.docx_第3页
第3页 / 共15页
C++程序设计基础习题2及其解答第二版Word文件下载.docx_第4页
第4页 / 共15页
C++程序设计基础习题2及其解答第二版Word文件下载.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

C++程序设计基础习题2及其解答第二版Word文件下载.docx

《C++程序设计基础习题2及其解答第二版Word文件下载.docx》由会员分享,可在线阅读,更多相关《C++程序设计基础习题2及其解答第二版Word文件下载.docx(15页珍藏版)》请在冰豆网上搜索。

C++程序设计基础习题2及其解答第二版Word文件下载.docx

default:

}

(a)1(b)2(c)3(d)4

4.已知inti=0,x=0;

下面while语句执行时循环次数为(d)。

while(!

x&

i<

3){x++;

}

(a)4(b)3(c)2(d)1

5.已知inti=3;

下面do_while语句执行时循环次数为(b)。

do{i--;

cout<

<

i<

endl;

}while(i!

=1);

(a)1(b)2(c)3(d)无限

6.下面for语句执行时循环次数为(b)。

for(inti=0,j=5;

i=j;

{cout<

j<

endl;

i++;

j--;

(a)0(b)5(c)10(d)无限

7.以下死循环的程序段是(b)。

(a)for(intx=0;

x<

3;

){x++;

};

(b)intk=0;

do{++k;

}while(k>

=0);

(c)inta=5;

while(a){a--;

(d)inti=3;

for(;

i;

i--);

2.2阅读下列程序,写出执行结果

1.#include<

iostream.h>

voidmain()

{inta,b,c,d,x;

a=c=0;

b=1;

d=20;

if(a)d=d-10;

elseif(!

b)

if(!

c)

x=15;

elsex=25;

cout<

d<

}

【答案】

20

2.#include<

{inta=0,b=1;

switch(a)

{case0:

switch(b)

{case0:

cout<

"

a="

<

a<

b="

b<

break;

case1:

}

case1:

a++;

b++;

a=0b=1

a=1b=2

3.#include<

{inti=1;

while(i<

=10)

if(++i%3!

=1)

continue;

elsecout<

4

7

10

4.#include<

{inti=0,j=5;

do

{i++;

if(i>

3)break;

}while(j>

0);

i="

'

\t'

j="

i=4j=1

5.#include<

{inti,j;

for(i=1,j=5;

i<

j;

i++)

{j--;

′\t′<

33

6.#include<

{inti,s=0;

for(i=0;

5;

switch(i)

s+=i;

case2:

default:

s+=2;

s="

s<

s=7

7.#include<

{inti,j,x=0;

=3;

{x++;

for(j=0;

j<

j++)

{if(j%2)continue;

x++;

x="

x=16

2.3思考题

1.C++中有什么形式的选择控制语句?

归纳它们语法形式、应用场合。

根据一个实际问题使用不同的条件语句编程。

2.什么叫循环控制?

归纳比较C++中各种循环控制语句的语法、循环条件和循环结束条件的表示形式及执行流程。

3.根据一个实际问题,用不同的循环语句编程,分析其优缺点。

4.用if语句和goto语句组织循环,改写思考题2.3第3小题编写的程序。

分析在什么情况下可以适当使用goto语句。

2.4编程题

1.输入某学生成绩,若成绩在85分以上输出“verygood”,若成绩在60分到85分之间输出“good”,若成绩低于60分输出“nogood”。

【解答】

#include<

voidmain()

{floatscore;

pleaseinputscore:

"

;

cin>

>

score;

if(score>

=85)cout<

Verygood!

;

elseif(score>

=60)cout<

Good!

Nogood!

2.输入三个数,按从小到大的顺序输出。

voidmain()

{inta,b,c,t;

a,b,c="

a>

b>

c;

if(a>

b){t=a;

a=b;

b=t;

c){t=a;

a=c;

c=t;

if(b>

c){t=b;

b=c;

\t'

c<

3.输入三角形的三条边,判别它们能否形成三角形,若能,则判断是等边、等腰、还是一般三角形。

{floata,b,c;

a,b,c="

cin>

c;

if(a+b>

c&

b+c>

a&

c+a>

b)

{if(a==b&

b==c)

等边三角形!

elseif(a==b||a==c||b==c)

等腰三角形!

elsecout<

一般三角形!

不能形成三角形!

endl;

4.输入百分制成绩,并把它转换成五级分制,转换公式为:

{floatscore;

chargrade;

score="

if(score>

=0&

score<

=100)

{switch(int(score)/10)

{case10:

case9:

grade='

a'

case8:

b'

case7:

c'

case6:

d'

case5:

case4:

case3:

case2:

case1:

case0:

e'

else

{cout<

数据输入错误!

gotoend;

grade<

end:

//分号不能省

5.编程序模拟剪刀、石头和纸游戏。

游戏规则为:

剪刀剪纸,石头砸剪刀,纸包石头。

玩游戏者从键盘上输入s(表示剪刀)或r(表示石头)或p(表示纸),要求两个游戏者交替输入,计算机给出输赢的信息。

{charfirst,second;

Firstinput(s,rorp):

first;

Secondinput(s,rorp):

second;

switch(first)

{case'

s'

:

switch(second)

{case'

Scissortiesscissor."

case'

r'

Scissoriscrushedbyrock."

p'

Scissorcutspaper."

default:

secondinputerror!

case'

switch(second)

Rockcrushesscissor."

Rocktiesrock."

Rockiswrappedbypaper."

}

Paperiscutbyscissor."

Paperwrapstherock."

Papertiespaper."

default:

Firstinputerror!

6.输入一个整数,输出该整数的所有素数因子。

例如,输入120,输出为2、2、2、3和5。

{intm,i=2;

pleaseinputm:

m;

=m)

if(m%i==0)

{cout<

"

m=m/i;

elsei++;

7.使用迭代公式

编程序求某一正整数a的平方根。

#include<

math.h>

{constfloateps=1e-8;

floata,x0,x;

pleaseinputa:

a;

x0=a/2;

x=(x0+a/x0)/2;

while(fabs(x-x0)>

eps)

{x0=x;

x=(x0+a/x0)/2;

8.已知X=0

,10

,20

,…,180

,求sinx,cosx和tanx的值。

iomanip.h>

{constdoublepi=3.14159265;

inti;

doublex,y1,y2,y3;

setw

(2)<

x"

setw(15)<

sin(x)"

setw(15)

<

cos(x)"

tg(x)"

=18;

{x=i*10*pi/180;

y1=sin(x);

y2=cos(x);

y3=y1/y2;

y1<

y2<

y3<

9.在100到200中找出同时满足用3除余2,用5除余3和用7除余2的所有整数。

{inti;

for(i=100;

=200;

{if((i%3==2)&

(i%5==3)&

(i%7==2))

10.求100到999中的水仙花数。

所谓水仙花数是指一个三位数,它的每位数字的立方之和等于该数。

例如,因为153=1

+5

+3

,所以153为水仙花数。

{inti,a,b,c;

=999;

{a=i/100;

b=(i-a*100)/10;

c=i-a*100-b*10;

if(i==a*a*a+b*b*b+c*c*c)cout<

11.求1000之内的所有完数。

所谓完数是指一个数恰好等于它的所有因子之和。

例如,因为6=1+2+3,所以6为完数。

{inti,j,s;

for(i=1;

=1000;

{s=0;

for(j=1;

i;

if(i%j==0)s=s+j;

if(i==s)cout<

12.编一程序显示如下图案:

*

***

*****

*******

*********

{inti,j,k;

=5;

{for(k=1;

k<

=5-i;

k++)cout<

=2*i-1;

j++)cout<

*"

13.已知XYZ+YZZ=532,其中X,Y和Z为数字,编一程序求出X,Y和Z。

{intx,y,z,i;

for(x=1;

x<

=9;

x++)

for(y=1;

y<

y++)

for(z=0;

z<

z++)

{i=100*x+10*y+z+100*y+10*z+z;

if(i==532)cout<

′\t′

<

y="

y<

z="

z<

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

当前位置:首页 > 表格模板 > 书信模板

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

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