- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
c语言编程题及答案(三)
猜数游戏
在这个实验中,我们将尝试编写一个猜数游戏程序,这个程序瞧上去有些难度,但就是如果按下列要求循序渐进地编程实现,会发现其实这个程序就是很容易实现得。那么,现在就开始吧,先编写第1个程序,然后试着在第1个程序得基础上编写第2个程序,……
程序1编程先由计算机“想一个1~100之间得数请人猜,如果人猜对了,则计算机给出提示“Right!”,否则提示“Wrong!”,并告诉人所猜得数就是大(Toohigh)还就是小(Toolow),然后结束游戏、要求每次运行程序时机器所“想”得数不能都一样。
程序2编程先由计算机“想一个1~100之间得数请人猜,如果人猜对了,则结束游戏,并在屏幕上输出人猜了多少次才猜对此数,以此来反映猜数者“猜”得水平;否则计算机给出提示,告诉人所猜得数就是太大还就是太小,直到人猜对为止。
程序3编程先由计算机“想”一个1~100之间得数请人猜,如果人猜对了,则结束游戏,并在屏幕上输出人猜了多少次才猜对此数,以此来反映猜数者“猜”得水平;否则计算机给出提示,告诉人所猜得数就是太大还就是太小,最多可以猜10次,如果猜了10次仍未猜中得话,结束游戏。
程序4编程先由计算机“想”一个1~100之间得数请人猜,如果人猜对了,在屏幕上输出人猜了多少次才猜对此数,以此来反映猜数者“猜”得水平,则结束游戏;否则计算机给出提示,告诉人所猜得数就是太大还就是太小,最多可以猜10次,如果猜了10次仍未猜中得话,则停止本次猜数,然后继续猜下一个数。每次运行程序可以反复猜多个数,直到操作者想停止时才结束。
【思考题】如果用scanf输入用户猜测得数据时,如果用户不小心输入了非法字符,如字符a,那么程序运行就会出错,用什么方法可以避免这样得错误发生呢?请读者编写程序验证方法得有效性、
答案:
1、
#include<stdio。h
#include〈stdlib、h〉
#include〈time、h〉 ?/*将函数time所需要得头文件time、h包含到程序中*/
main()
{
intmagic;? /*计算机”想”得数*/
?intguess; ???/*人猜得数*/
srand(time(NULL)); /*用标准库函数srand()为函数rand()设置随机数种子*/
?magic=rand()%100+1;
?printf(”Pleaseguessamagicnumber:”);
?scanf("%d”,guess);
if(guess〉magic)
?{
?printf(Wrong!Toohigh!\n”);
?}
?elseif(guess〈magic)
?{
printf(”Wrong!Toolow!\n");
}
?else
?{
?printf("Right!\n”);
?printf(Thenumberis:%d\n,magic);
?}
}
2、
#include〈stdio.h
#include〈stdlib。h〉
#includetime。h>
main()
{
intmagic;? ??/*计算机”想”得数*/
?intguess; ?? /*人猜得数*/
?intcounter; ??/*记录人猜得次数*/
srand(time(NULL));
?magic=rand()%100+1;
counter=0;
?do
{
printf(Pleaseguessamagicnumber:”);
? scanf(%d",guess);
??counter++;
if(guess>magic)
?{
? ?printf(Wrong!Toohigh!\n”);
}
elseif(guess〈magic)
{
????printf(”Wrong!Toolow!\n);
?}
}while(guess!=magic);/*直到人猜对为止*/
printf("Right!\n”);
printf(counter=%d\n”,counter);
}
3、
#include<stdio。h
#includestdlib。h
#include<time。h〉
main()
{
intmagic; ? /*计算机想”得数*/
?intguess;?? ?/*人猜得数*/
?intcounter; ? /*记录人猜得次数*/
?srand(time(NULL));
magic=rand()%100
文档评论(0)