黑马程序员技术交流社区

标题: 用C语言实现猜数游戏 [打印本页]

作者: tingfeng1992    时间: 2015-6-21 01:17
标题: 用C语言实现猜数游戏
猜数游戏的玩法是电脑产生一个1--1000之内的随机数,给玩家十次机会,看能否才对。该游戏的实现利用for循环,判断玩家是否能在十次内猜对。
算法思想如下: 1.首先设置两个变量用来存放玩家输入的数据和电脑产生的随机数
2.使用随机数函数,产生一个1-1000范围内的随机数
3.设置一个循环,使玩家最多可以猜数猜10次。如果玩家猜出,玩家赢了,游戏结束;或者到了10次还是没有猜出来,游戏结束,玩家失败
4.在循环内提醒玩家输入要猜得数
5.接收玩家输入的数
6.判断玩家输入的数是否属于1-1000这个范围
7.做比较,判断玩家输入的数是否与电脑的随机数相同,并且输出比较结果,并且决定下一步的执行程序:如果猜对了,结束游戏;如果没猜对,并且猜测次数不到10次,重新猜测;如果已经是第10次,结束游戏;

游戏代码如下:#include <stdio.h>
#include <stdlib.h>

int main(int argc, const char * argv[]) {
    int playerNum=0;
    int randomNum=0;
    randomNum=arc4random_uniform(1000)+1;//产生1-1000范围内的随机数
    //printf("随机数%d\n",randomNum);一般是不需要输出,但是作为测试可以输出
    int oldNumber=0;
    for(int i=1;i<=10;i++)
    {
        printf("第%d次,你还有%d次机会,你上次猜测的数为%d\n请输入你要猜测的数:\n",i,10-i,oldNumber);
        scanf("%d",&playerNum);
        {
            if(playerNum==randomNum)
            {
                printf("恭喜你猜对了,游戏结束!!\n");
                return 0;
            }
            else if(playerNum>randomNum)
            {
                printf("猜大了\n");
            }
            else
            {
                printf("猜小了\n");
            }
        }
        oldNumber=playerNum;
   
    }
    printf("游戏失败,你没有猜对,正确答案是%d\n",randomNum);
    return 0;
}

作者: 张国繁    时间: 2015-6-21 10:44
我感觉这个好难啊
作者: tingfeng1992    时间: 2015-6-21 15:34
张国繁 发表于 2015-6-21 10:44
我感觉这个好难啊

还好吧,就是一个for循环,循环10次,我感觉主要是随机数,这个真不熟悉




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2