c++js猜数字游戏代码码错误。

一个简单的猜数字游戏的实现(一)
前言:这几天看Essential C++, 第一章Stanley B.Lippman用C++实现了一个猜数字的小游戏,细细体会,程序虽小,但五脏俱全,一个完整的程序设计思路,变量命名,小的语法细节及指针带来的弹性设计,细细揣摩受益颇多,在这里把程序的设计过程和夹杂着自己的思路整理一下,也感谢侯捷老师细致的翻译。
1.功能需求分析:游戏功能:给出Fibonacci数列的前两个数字,用户猜测第三个数字;注:我们往往从用户那里得到一个较为模糊的需求,软件功能的概括描述,或游戏功能的简单概括,而我们在用计算机实现时需要得到一个细致的需求分析,通过从计算机的角度思考及和用户的不断反馈,逐渐的细化功能需求,最终获得一个从计算机角度的需求文档。需求文档:游戏提示用户给出猜测,在游戏设计中,我们需要考虑猜测结果正确或错误的处理方式,如果正确应给出提示;
如果错误,询问用户是否愿意猜一次,并设置一个次数上限,当猜错的次数超过此上限时应提示用户并结束游戏。
有了详细的需求文档我们就可以进行下一步的数据结构设计和程序流程设计了;设计时将程序划分为若干个小的模块,考虑实现该功能模块的数据结构及代码,最后考虑整个流程及相应的流程控制量;
2.设计过程:游戏的数列需用一个数组保存,用大小为3的整型数组;程序提示前两个数字,用户输入猜测数字,并与数组第三个数字比较;数据结构:数列:int Fibonacci[3];用户输入信息:int usr_猜测次数:const int max_tries=3;int num_tries=0;
流程控制量:char usr_bool usr_
见上传文件:猜数字游戏(1).rar
一个良好的变量命名习惯和变量初始化习惯;
一些经典程序功能模块要能够熟练简洁快速的实现,从需要的变量到代码;
如询问用户 的流程控制:
char usr_ //获取用户输入
bool usr_ //循环控制布尔量
if(usr_rsp=='n'||usr_rsp=='N')
&&&&& usr_more=&&&&&&&
阅读(...) 评论()C++猜数字游戏_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
C++猜数字游戏
&&基于命令窗口的猜数字游戏程序
阅读已结束,下载文档到电脑
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,方便使用
还剩9页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢13:07 提问
编程实现一个C++猜数字游戏
计算机随机生成一个1~100的数字让人去猜。
如果人输入的数字大了,提示大了,如果输入的数字小了,提示小了。然后再次让人猜。
如果人输入的数字和生成的数字一样,提示猜对了,输出猜的次数,并且结束程序。
按赞数排序
#include&iostream&
#include&cstdlib&
#include&ctime&
int main()
srand(time(NULL));
const int n=rand()%99+1;
int num,count=1;
for(cin&&num!=n;++count,cin&&num)
cout&&"小了"&&
cout&&"大了"&&
cout&&"猜对了\n"
&&"猜的次数:"&&count&&
import java.util.R
import java.util.S
public class MyGameDemo01 {
public static void main(String[] args){
Scanner s = new Scanner(System.in);
int data =1;
Random rand = new Random();
while(data!=-1){
System.out.println("游戏开始:请输入数字。");
gameData=rand.nextInt(99)+1;
int count=0;
while(data!=gameData){
data = Integer.parseInt(s.nextLine().toString());
System.out.println("小了");
}else if(data&gameData){
System.out.println("大了");
System.out.println("恭喜才对了,您一共猜了"+count+"次!");
System.out.println("继续游戏:1,退出游戏:-1");
data = Integer.parseInt(s.nextLine().toString());
System.out.println("游戏结束!!!");
其他相关推荐编写一个猜数字游戏的程序:程序随机选择一个1到1000的数,然后输出:
& & I have a number between 1 and 1000. & &
& & Can you guess my number?
& & Please type your first guess:
& & 接着,游戏者输入一个结果。程序根据比较结果输出以下三条信息之一:
& & 1)Excellent! You guessed the number!
& & & & &Would you like to play again (y or n)?
& & 2)Too low.Try again.
& & 3)Too high.Try again.
如果游戏者猜错,则程序进行循环,直到猜对。程序通过Too high或Too low消息帮助学生接近正确答案。请思考:怎样才能猜得最快?
&span style=&font-size:14&&#include&iostream&
#include &cstdlib&
#include&time.h&
//此函数用于产生随机数
int Random_
srand(time(0));&span style=&white-space:pre&& &/span&//获取系统时间来作为种子
Random_number=1+rand()%1000;
return Random_
int main()
int Random_number,guss_
while(true)
Random_number=RNG();
cout&&Random_number&&//输出系统产生的随机数,免得难得猜。
cout&&&I have a number between 1 and 1000&&&
cout&&&Can you guess my number?&&&
cout&&&Please type your first guess:&;
cin&&guss_
while(guss_number&1||guss_number&1000)
cout&&&Input error,once again!&;
cin&&guss_
while(true)
if(guss_number==Random_number)
cout&&&Excellent! You guessed the number!&&&
cout&&&Would you like to play again (y or n)?:& ;
if(yes_no=='n')
exit(0); //返回操作系统
//跳出第一层循环
if(guss_number&Random_number)
cout&&&Too low.Try again &;
cin&&guss_
while(guss_number&1||guss_number&1000)
cout&&&Input error,once again!&;
cin&&guss_
if(guss_number&Random_number)
cout&&&Too high.Try again &;
cin&&guss_
while(guss_number&1||guss_number&1000)
cout&&&Input error,once again!&;
cin&&guss_
运行截图如下:
本文已收录于以下专栏:
相关文章推荐
【项目4-学习辅助软件开发】通过本题学习一些系统函数。任务1——猜数字游戏  随机产生一个1000内的数字,要求用户猜测这个整数。输入一个猜测想的整数,判断是否与产生的随机数相等,由屏幕显示判断结果。...
C++猜数字(文曲星游戏)
C++基础——简单的猜数游戏C++是面向对象的编程语言。类和对象使得解决问题变得非常方便。对于猜数游戏这样的程序来说,不需要使用类和对象,只需要借助函数即可完成。这里借助猜数游戏这个程序来复习基本的语...
摩尔的Java学习笔记1.9
猜数游戏,随机生成一个整数(0-100),用户输入他所猜的数,程序回答大了或者小了,用户再输入他所猜的数,直至猜对了为止。...
*程序的版权和版本声明部分:
*程序的版权和版本声明部分:
*Copyright(c)2013,烟台大学计算机学院学生
*All rights reserved.
*文件名称:
C++一个猜数游戏程序
他的最新文章
讲师:李江龙
讲师:司徒正美
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)c语言编程猜数字游戏_百度知道
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。
c语言编程猜数字游戏
1、随机生成没有重复的4个数。(每个数字在0-9范围内)。
2、用户从键盘输入4个不重复的数,程序能对用户输入的数与随机生成的数进行匹配,并给出提示信息:“有 x个数数值和位置都相同!有 y个数数值相同,但位置不同。”
3、控制用户的尝试次数为10次。
用Visual C++6.0做
我有更好的答案
main(){int i=0,n;srand(time(0))分析;n&);if(i&n)printf(&this number is too smaller!&#92:先产生一个随机数N;%d&quot。如果I小于N,则提示小于信息。直到I==N;n&);}if(i==n)printf(&PASS;n=rand()%100+1;while(i!=n){printf(&quot!%3d&,n);getch();}提示:srand(time(0)),则输出成功信息。然后输入数I,如果A大于N;scanf(&quot,则提示大于信息。这是我用C语言写的;p,&i);if(i&n)printf(&quot。环境:WIN-C ,如果是C++环境把倒数第二排getch(),TORBO C;this number is too big!\);删掉!已经调试成功:\n&n=rand()%100+1;是用来生成一个1~100以内的随机数
#include &stdio.h&#include&time.h&#include&string.h&#include&stdlib.h&int isfilled(int a[4],int x){ int i=0; for(;a[i]!=-1&&i&4;i++)
if(a[i]==x)
return 0; return 1;}int judge1(const int a[4],const int b[4]){ int i,count=0; for(i=0;i&4;i++)
if(a[i]==b[i])
count++; }int find(const int a[4],const int x){ int i=0; for(;i&4;i++)
if(a[i]==x)
return 0;}int judge2(const int a[4],const int b[4]){ int temp=0,i; for(i=0;i&4;i++)
temp+=find(a,b[i]); return temp-judge1(a,b);}int main(){int a[4],b[4],i=0,x,number=100,flag=0;memset(a,-1,sizeof(a));//初始化为-1srand(time(NULL));while(i!=4){ x=rand()%10; if(isfilled(a,x))
a[i++]=x;}printf(&初始化完成,您目前的得分%d\n&,number);while(number&&!flag){ printf(&请您猜4个数字\n&); scanf(&%d%d%d%d&,b,b+1,b+2,b+3); if(judge1(a,b)==4) {
printf(&恭喜,您猜对了所有数字,您的得分是%d\n&,number);
flag=1; } else {
printf(&有%d个数数值和位置都相同!有%d个数数值相同,但位置不同。\n&,judge1(a,b),judge2(a,b));
number-=10; } }if(!number)printf(&猜数字失败,正确的数字及顺序是\n&);for(i=0;i&4;i++)printf(&%d &,a[i]);printf(&结束\n&);return 0;}
为您推荐:
其他类似问题
您可能关注的内容
猜数字游戏的相关知识
换一换
回答问题,赢新手礼包

我要回帖

更多关于 c语言猜数字游戏代码 的文章

 

随机推荐