c语言猜数游戏

任务描述

本关任务:猜数游戏。

相关知识

为了完成本关任务,你需要掌握:C 语言基础。

猜数游戏

在上一关的基础上继续编写此次游戏。编程先由计算机“想”一个1~100之间的数请玩家猜,如果玩家猜对了,在屏幕上输出玩家猜了多少次才猜对此数,以此来反映玩家“猜”数的水平,则结束游戏;否则计算机给出提示,告诉玩家所猜的数是太大还是太小,最多可以猜10次,如果猜了10次仍未猜中,则停止本次猜数,然后继续猜下一个数。每次运行程序可以反复猜多个数,直到玩家想停止时才结束。

测试输入:

50  
13  
10  
24  

预期输出:

Please guess a magic number:50  
Wrong!Too high!  
Please guess a magic number:13  
Wrong!Too low!  
Please guess a magic number:10  
Wrong!Too low!  
Please guess a magic number:24  
Right!  
The number is:24  
counter=4  
Do you want to continue(Y/N or y/n)?  

答案:

#include  <stdio.h>  
#include  <stdio.h>  
#include  <stdlib.h>  
#include  <time.h>     
int main(void)  
{   
    int magic;                //计算机"想"的数          
    int guess;                //玩家猜的数  
    int counter;            //记录玩家猜的次数  
    char reply;                //玩家输入的回答  
    srand(11);    
    /*************** Begin ***************/       
    do{  
        magic = rand() % 100 + 1;     
        counter = 0;              
        do{  
                printf("Please guess a magic number:");  
                scanf("%d", &guess);         
                counter ++;                 
                if (guess > magic)      
                {  
                    printf("Wrong!Too high!\n");  
                }  
                else if (guess < magic)    
                {   
                    printf("Wrong!Too low!\n");  
                }  
                else  
                {  
                    printf("Right!\n");  
                }  
        }while (guess!=magic && counter<10);//猜错且未超10次时继续猜    
        printf("counter = %d\n", counter);   
        printf("Do you want to continue(Y/N or y/n)?");  
        scanf(" %c", &reply);      // %c前面有一个空格   
    }while ((reply == 'Y') || (reply == 'y'));  
    /*************** End ***************/  
    printf("The game is over!\n");      
    return 0;  
}  
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

黑战士安全

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值