| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2283 人关注过本帖
标题:一个简单的猜字游戏
只看楼主 加入收藏
编程2011
Rank: 2
来 自:湖南
等 级:论坛游民
帖 子:73
专家分:19
注 册:2011-3-3
结帖率:92%
收藏
已结贴  问题点数:0 回复次数:11 
一个简单的猜字游戏
    随机数的应用
   
程序代码:
#include<iostream>
#include<cstdlib>
#include<ctime>
using namespace std;

int main()
{
    int t;srand(time(0));//产生随机数
    t=(1+rand()%1000);//
    int m=1;
    cout<<"我有一个数从1到1000,你能猜得到我的数字嘛?"<<endl;
    cout<<"请输入你的数: ";
     int n;
    while(m>0)
    {
        cin>>n;
        if(n==t)
            cout<<"很幸运,你猜对了!"<<endl;
        if(n<t)
            cout<<" 太低了,再试一次"<<endl;
        if(n>t)
            cout<<" 太高了,再试一次"<<endl;
    }   
        return 0;
}
搜索更多相关主题的帖子: 游戏 
2011-03-30 23:18
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6815
专家分:42393
注 册:2010-12-16
收藏
得分:0 
程序存在好几次不足:
1 是不是应该在猜中了的时候加个break?
2 如果m>0一直为真 就没有必要用这个变量了 直接while (true) 还明确一点
3 没有必要用 if() if () if() 这样的逻辑,用if ()else if() else if()就行了

我行我乐
公众号:逻辑客栈
我的博客:
https://blog.yuccn. net
2011-03-30 23:55
编程2011
Rank: 2
来 自:湖南
等 级:论坛游民
帖 子:73
专家分:19
注 册:2011-3-3
收藏
得分:0 
回复 2楼 yuccn
在猜中后,如果你仍想猜,这时跳出程序就没有意义了,另外,break 不能随便用。
2011-03-31 22:41
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6815
专家分:42393
注 册:2010-12-16
收藏
得分:1 
要不就继续猜,要不就退出,这个总比在死循环好。你的程序都没有再次产生随机数,猜中了再猜一个已知数字来死循环?

另外,break 不能随便用。??这个是什么道理。。。

而且,没有人说顺不顺便便用,只是说合不合理吧了。

[ 本帖最后由 yuccn 于 2011-4-1 00:03 编辑 ]

我行我乐
公众号:逻辑客栈
我的博客:
https://blog.yuccn. net
2011-04-01 00:00
yh1336679081
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-3-31
收藏
得分:0 
我也觉得无法再次产生随机数十个问题。。。另外我就没什么说的咯。。。对于我这个初学者来说,挺不错的。
2011-04-01 11:36
编程2011
Rank: 2
来 自:湖南
等 级:论坛游民
帖 子:73
专家分:19
注 册:2011-3-3
收藏
得分:0 
回复4楼得
srand(time(0)这个语句就是来产生活的随机数的,每次运行都不会有相同的数,你运行下就知道了

[ 本帖最后由 编程2011 于 2011-4-2 00:15 编辑 ]
2011-04-02 00:12
编程2011
Rank: 2
来 自:湖南
等 级:论坛游民
帖 子:73
专家分:19
注 册:2011-3-3
收藏
得分:0 
回复 4楼 yuccn

srand(time(0)这个语句就是来产生活的随机数的,每次运行都不会有相同的数,你运行下就知道了

2011-04-02 00:16
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:1 
回复 7楼 编程2011
yuccn 的意思是说猜中了后再猜还有什么意思。

虽然每次运行出的随机数不一样,但你这个程序即使猜中了也不既出循环。还让人猜同一个数,这很无趣。至少也得再生成一个随机数让人猜吧。
2011-04-02 10:51
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6815
专家分:42393
注 册:2010-12-16
收藏
得分:0 
呵呵,还是版主读懂我的意思。难觅。。。

我行我乐
公众号:逻辑客栈
我的博客:
https://blog.yuccn. net
2011-04-02 14:23
paoshituan
Rank: 2
等 级:论坛游民
帖 子:22
专家分:26
注 册:2010-8-10
收藏
得分:0 
几点疑惑
<iostream> <cstdlib>           是什么意思
#include <ctime>
srand(time( 0 ));    随机数有范围吧!多少?  t=( 1 +rand()% 1000 )这个应该是限定范围,rand何意? ;
cout << "  " <<endl    见过,但不理解,怎么回事?
2011-04-05 16:41
快速回复:一个简单的猜字游戏
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.091252 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved