c++程序设计原理与实践第四章课后答案Word下载.docx

上传人:b****5 文档编号:19712587 上传时间:2023-01-09 格式:DOCX 页数:19 大小:336.83KB
下载 相关 举报
c++程序设计原理与实践第四章课后答案Word下载.docx_第1页
第1页 / 共19页
c++程序设计原理与实践第四章课后答案Word下载.docx_第2页
第2页 / 共19页
c++程序设计原理与实践第四章课后答案Word下载.docx_第3页
第3页 / 共19页
c++程序设计原理与实践第四章课后答案Word下载.docx_第4页
第4页 / 共19页
c++程序设计原理与实践第四章课后答案Word下载.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

c++程序设计原理与实践第四章课后答案Word下载.docx

《c++程序设计原理与实践第四章课后答案Word下载.docx》由会员分享,可在线阅读,更多相关《c++程序设计原理与实践第四章课后答案Word下载.docx(19页珍藏版)》请在冰豆网上搜索。

c++程序设计原理与实践第四章课后答案Word下载.docx

doublemax;

doublemin;

请您输入一组距离:

dist)

dists.push_back(dist);

for(inti=0;

i<

dists.size();

i++)

sum+=dists[i];

sort(dists.begin(),dists.end());

//利用标准函数库algorithm的sort函数对向量进行升序排列,

//找出最大数。

总距离为:

sum<

最小距离为:

dists[0]<

最大距离为:

dists[dists.size()-1]<

平均距离为:

sum/dists.size()<

Vc6.0环境下运行结果如下:

4.

#include<

cstdlib>

time.h>

intn,N;

srand(time(0));

//取当前时间为种子,确保每次产生的随机数不一样。

N=1+rand()%100;

//产生1-100的随机数。

系统已经为您生成了一个(1~100)的随机数,有趣的猜数字之旅现在开始(^_^)"

8;

i+=1;

cout<

请输入您猜的数字:

"

cin>

n;

if(n==N&

&

=7)

{

cout<

恭喜你,答对了!

,你真聪明(^_^)"

break;

}

n<

15&

n>

7)

{cout<

我敢说你可以做的更好!

break;

}

if(i==7)

很遗憾!

你没有猜出来,请再接再厉。

正确答案是:

N<

if(n<

N)

您的数字比系统给定的数字小,请您继续猜."

if(n>

您的数字比系统给定的数字大,请继续猜."

if(n!

=N)

continue;

Vc6.0环境下运行结果如图:

5.

inlinevoidkeep_window_open(){charch;

cin>

ch;

doublea;

intk;

doubleb;

charopreator;

doubleresult;

输入任意字符开始,输入q退出(^_^)"

k)

if(k=='

q'

)exit(0);

请您输入三个参数:

a>

b;

opreator;

switch(opreator)

{case'

+'

:

result=a+b;

运算结果为:

a"

opreator<

b="

result<

break;

case'

*'

result=a*b;

-'

result=a-b;

/'

if(b==0)cout<

数据不合法,不能做除法操作,请重新输入:

else{result=a/b;

%'

if(a-(int)a!

=0||b-(int)b!

=0)cout<

数据不合法,不能做取余操作,请重新输入:

//判断不是整数不能取余操作。

default:

参数没有对应的操作!

输入任意字符继续,输入q退出(^_^)"

keep_window_open();

6.

string>

intn;

charc;

stringstr;

numbs(10);

numbs[0]="

zero"

numbs[1]="

one"

numbs[2]="

two"

numbs[3]="

three"

numbs[4]="

four"

numbs[5]="

five"

numbs[6]="

six"

numbs[7]="

seven"

numbs[8]="

eight"

numbs[9]="

nine"

如果您想输入数字,请输入'

s'

如果您想输入单词,请输入'

w'

.退出请输入'

c)

if(c=='

)exit(0);

switch(c)

请输入您要转换的数字(0~9):

switch(n)

case0:

对应的英文单词是'

zero'

case1:

one'

case2:

two'

case3:

three'

case4:

four'

case5:

five'

case6:

six'

case7:

seven'

case8:

eight'

case9:

nine'

没有对应的单词!

}break;

请输入您要转换的英语单词(zero~nine):

str;

if(str=="

)cout<

str<

对应的阿拉伯数字是'

0'

elseif(str=="

1'

2'

3'

4'

5'

6'

7'

8'

9'

没有对应选项!

7.

intk,a2,b2;

charopreator,c;

stringa1,b1;

doubleoperate(doublea,doubleb,charopreator);

doublechange(stringx);

if(k=='

如果想进行数字操作,请输入'

n'

如果想进行英文形式的操作,请输入'

c;

result=operate(a,b,opreator);

a<

b<

="

a1>

b1;

a2=change(a1);

b2=change(b1);

result=operate(a2,b2,opreator);

a1<

b1<

没有满足您输入的操作!

 

doubleoperate(doublea,doubleb,charopreator)

if(b==0){cout<

数据不合法,不能做除法操作,请重新输入!

exit(0);

elseresult=a/b;

returnresult;

doublechange(stringx)

doublec;

if(x=="

)c=0;

elseif(x=="

)c=1;

elseif(x=="

)c=2;

elseif(x=="

)c=3;

elseif(x=="

)c=4;

elseif(x=="

)c=5;

elseif(x=="

)c=6;

elseif(x=="

)c=7;

elseif(x=="

)c=8;

)c=9;

returnc;

8.

cmath>

inti=1,n,sum=0;

请您输入米的数量:

n)

if(n=='

while(sum<

=n)

sum+=pow(2,i-1);

格子数:

每次米的数量:

i+=1;

i=1;

//重新对i和sum赋值,以便进行下一次计算。

sum=0;

输入'

结束,请您输入米的数量:

Vc6.0环境下运行结果如下图:

9.

inti;

for(i=1;

=64;

Vc6.0环境下运行情况如下:

10.

tchar.h>

//unicode中_tmain()的头文件。

stdlib.h>

//随机数头文件。

conio.h>

//控制台输入输出,getch()的头文件。

unix和linux通常没有这个头文件,要自己加载。

iomanip>

intmun_eqv=0;

//用于记录平局数

intmun_cpt=0;

//记录电脑胜利局数

intmun_men=0;

//记录用户胜利局数

intcpt;

//电脑出的随机数。

};

//电脑随机出现1,2,3,与人的输入(r,s,c分别表示石,头剪,刀布)进行比较,得出输赢结果。

最后统计结果。

//i表示帮助g表示查看结果q退出游戏

//实现步骤

intcomputer()

{

srand((unsigned)time(NULL));

returnrand()%3;

}

voidstar()

mun_eqv=0;

mun_cpt=0;

intmun_men=0;

现在开始!

请出招吧!

voidanswer()//判断最后的输赢

endl<

总下了"

mun_men+mun_cpt+mun_eqv<

局"

其中,"

mun_eqv<

平局"

//cout<

人比电脑:

+mun_men+"

比"

+mun_cpt+"

+mun_eqv+"

平"

mun_men<

mun_cpt<

if(mun_cpt==mun_men)

{

平局,彼此彼此!

}

elseif(mun_cpt<

mun_men)

祝贺你取得胜利,什么时候请客呀!

else

胜负及兵家常事,回去修炼几年再来吧!

voidwork(charyou,inthim)//9种情况讨论

if(you=='

r'

him==0)

setw(10)<

石头对石头"

平局!

我们彼此彼此吧?

mun_eqv++;

elseif(you=='

him==1)

剪刀对剪刀"

c'

him==2)

布对布"

天呀,你的石头,我的剪刀!

你胜了"

mun_men++;

天呀,你的剪刀剪我的布!

你胜了,谢谢刀下留情!

天呀,你的布包我的石头!

怎么样,石头同志,尝过我布的利害了吧?

你输了,还敢再来吗?

mun_cpt++;

怎么样,布布同志,尝过我剪刀的利害了吧?

怎么样,剪刀同志,我的石头你也敢来?

voidhelp()

石头剪刀布游戏"

用户按“r”(Rock)表示石头,“s”(Scissors)表示剪刀,“c”(Cloth)表示布,“b”(begin)表示开始,“i”(Instruction)表示查看帮助,“g”(game)表示查看结果,“q”(Quit)表示退出。

当游戏开始后,按R、S、C进行人机游戏。

游戏规则:

布包石头,石头碰剪刀,剪刀剪布为胜利,"

如果出的是同样的,比如同是石头,则平局。

int_tmain(intargc,_TCHAR*argv[])

booly=true;

help();

star();

while(y)

charb;

b=getch();

switch(b)

case'

cpt=computer();

work(b,cpt);

b'

i'

g'

answer();

exit

(1);

return0;

Vc6.0环境下的运行情况如图:

11.

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

当前位置:首页 > 考试认证 > 财会金融考试

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

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