| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4011 人关注过本帖
标题:猜数字游戏
只看楼主 加入收藏
谷雨寒
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-6-12
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:11 
猜数字游戏
谁能帮我编一个c猜数字游戏,到8次提醒已经猜了8次到15次停止结束,谢谢
搜索更多相关主题的帖子: 数字 游戏 
2010-06-12 17:49
myhnuhai
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:3
帖 子:425
专家分:1725
注 册:2010-3-17
收藏
得分:3 
看看这个能满足你的要求吧:
#include "stdlib.h"
#include "stdio.h"
#include "time.h"
void main()

{
    int i,m,n;
    srand( (unsigned)time( NULL ) );
    m=rand()%101;
    printf("请输入数字:");
    for(i=1;i<=15;i++)
    {
        scanf("%d",&n);
        if(m==n)
            printf("恭喜你答对了!");
        else if(m<n)
            printf("您输入的数大于实际数:");
        else
            printf("您输入的数小于实际数:");
    if(i==8)
        printf("\n已经猜了8次:");
        if(i==15)
        printf("\n您已经猜了15次到此结束!欢迎在玩!");
    }
   
}

不要让肮脏的记忆,迷失了原本纯洁的心灵!
2010-06-12 18:28
goyoyo315
Rank: 1
等 级:新手上路
帖 子:12
专家分:3
注 册:2006-5-25
收藏
得分:3 
程序代码:
帮了整了一个程序,好久都没有搞C语言了,基本可以运行了,你慢慢完善吧。

#include <stdlib.h>
#include <stdio.h>
#include <time.h>

int getRand();
int main(){

    /* 初始化变理 */

    int count = 0; /* 猜的总数 */
    int randNum = 0; /* 随机数 */
    int getRandNum = 0; /* 用户输入的数字 */
    randNum = getRand();
    while(count < 15){

        printf("Please input you guess num:");
        /* 没有做异常处理 */
        scanf("%d",&getRandNum);

        /* 执行次数累加 */
        count++;
        if(count == 8){
            printf("you have guess  : %d \n\n",count);
        }
        if(getRandNum == randNum){
            printf("you guess is right\n");
            break;
        }
        if(getRandNum < randNum){
            printf("you guess num is less than system num\n");
        }
        if(getRandNum > randNum){
            printf("you guess num is greater than system num\n");
        }
    }
    return 0;
}

/*

 * 获取随机数

 * 返回整数

 */
int getRand(){
    srand((unsigned)time(NULL));
    return rand()%101;
}



[ 本帖最后由 goyoyo315 于 2010-6-12 19:07 编辑 ]
2010-06-12 18:55
谷雨寒
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-6-12
收藏
得分:0 
非常感谢!!!
2010-06-12 19:55
张君
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:57
专家分:113
注 册:2010-5-13
收藏
得分:3 
回复 2楼 myhnuhai
这里边要猜的数字是随机得吧?
 

做自己就好,保持自己,记得微笑
2010-06-13 09:00
谷雨寒
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-6-12
收藏
得分:0 
要求程序完成以下功能:
1)    随机抽取一个4位整数k,要求这个四位数没有重复数字,最高位不是0
2)    提示玩家,猜一个数字
3)    根据玩家猜的数,与k比较,判断玩家猜的数字中位置正确的数字个数m和数字正确而位置不对的数的个数n,并以mAnB的形式输出
4)    如果玩家没有猜对,那么提示mAnB,让玩家继续猜,否则输出“你太棒了,这个数字就是****,你一共猜了*次哦!”
5)    如果玩家猜了8次还不对,那么提示玩家“你已经猜了8次了,还要继续吗?(1:yes/0:false),玩家选择1的话,就继续猜,如果选择0的话,就结束游戏,如果输入既不是1也不是0,提示用户“输入非法,重新输入”。
6)    如果玩家猜了15次还不对,那么提示玩家“你已经猜了15次啦,是不是方法不对啊?休息一会再来玩吧!”,然后退出游戏。
2010-06-13 12:19
谷雨寒
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-6-12
收藏
得分:0 
回复 5楼 张君
不好意思,要求没写清楚
具体要求如下:要求程序完成以下功能:
1)    随机抽取一个4位整数k,要求这个四位数没有重复数字,最高位不是0
2)    提示玩家,猜一个数字
3)    根据玩家猜的数,与k比较,判断玩家猜的数字中位置正确的数字个数m和数字正确而位置不对的数的个数n,并以mAnB的形式输出
4)    如果玩家没有猜对,那么提示mAnB,让玩家继续猜,否则输出“你太棒了,这个数字就是****,你一共猜了*次哦!”
5)    如果玩家猜了8次还不对,那么提示玩家“你已经猜了8次了,还要继续吗?(1:yes/0:false),玩家选择1的话,就继续猜,如果选择0的话,就结束游戏,如果输入既不是1也不是0,提示用户“输入非法,重新输入”。
6)    如果玩家猜了15次还不对,那么提示玩家“你已经猜了15次啦,是不是方法不对啊?休息一会再来玩吧!”,然后退出游戏。
2010-06-14 08:32
谷雨寒
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-6-12
收藏
得分:0 
回复 2楼 myhnuhai
非常感谢!!能不能再帮我写一个如下要求的程序?
猜数字游戏 要求程序完成以下功能:
1)    随机抽取一个4位整数k,要求这个四位数没有重复数字,最高位不是0
2)    提示玩家,猜一个数字
3)    根据玩家猜的数,与k比较,判断玩家猜的数字中位置正确的数字个数m和数字正确而位置不对的数的个数n,并以mAnB的形式输出
4)    如果玩家没有猜对,那么提示mAnB,让玩家继续猜,否则输出“你太棒了,这个数字就是****,你一共猜了*次哦!”
5)    如果玩家猜了8次还不对,那么提示玩家“你已经猜了8次了,还要继续吗?(1:yes/0:false),玩家选择1的话,就继续猜,如果选择0的话,就结束游戏,如果输入既不是1也不是0,提示用户“输入非法,重新输入”。
6)    如果玩家猜了15次还不对,那么提示玩家“你已经猜了15次啦,是不是方法不对啊?休息一会再来玩吧!”,然后退出游戏。
2010-06-14 08:34
谷雨寒
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-6-12
收藏
得分:0 
回复 3楼 goyoyo315
谢谢!!能不能再写一个如下程序
猜数字游戏  要求程序完成以下功能:
1)    随机抽取一个4位整数k,要求这个四位数没有重复数字,最高位不是0
2)    提示玩家,猜一个数字
3)    根据玩家猜的数,与k比较,判断玩家猜的数字中位置正确的数字个数m和数字正确而位置不对的数的个数n,并以mAnB的形式输出
4)    如果玩家没有猜对,那么提示mAnB,让玩家继续猜,否则输出“你太棒了,这个数字就是****,你一共猜了*次哦!”
5)    如果玩家猜了8次还不对,那么提示玩家“你已经猜了8次了,还要继续吗?(1:yes/0:false),玩家选择1的话,就继续猜,如果选择0的话,就结束游戏,如果输入既不是1也不是0,提示用户“输入非法,重新输入”。
6)    如果玩家猜了15次还不对,那么提示玩家“你已经猜了15次啦,是不是方法不对啊?休息一会再来玩吧!”,然后退出游戏。
2010-06-14 08:35
sunyh1999
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:14
帖 子:1178
专家分:3032
注 册:2009-5-17
收藏
得分:3 
2楼写得有点问题,如果回答正确还要继续输入,我已经更正:
#include "stdlib.h"
#include "stdio.h"
#include "time.h"
void main()

{
    int i,m,n;
    srand( (unsigned)time( NULL ) );
    m=rand()%101;
    printf("please input a number:\n");
    for(i=1;i<=15;i++)
    {
        scanf("%d",&n);
        if(m==n)
        {printf("You are right\n");break;}
            
        else if(m<n)
            printf("Too big please try again!:\n");
        else
            printf("Too small please try again!:\n");
   
        if(i==15)
        printf("You lose!The number is %d",m);
    }
   
}

欢迎来到我的博客:http://blog..cn/noisunyuhong
2010-06-14 18:21
快速回复:猜数字游戏
数据加载中...
 
   



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

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