| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 324 人关注过本帖
标题:牛人 请进 帮改一下 谢了
只看楼主 加入收藏
jc24
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-10-12
收藏
 问题点数:0 回复次数:1 
牛人 请进 帮改一下 谢了
题目描述

这里有一个猜数字的游戏,游戏的规则是这样,系统随机生成一个0-100(不包括0和100)之间的数字。然后让玩家来猜,开始给出数字的范围为(0-100),如果玩家猜的数比生成的数大,提示数字太大,并更新范围为(当前小数-他猜的数)如果猜的比生成的数小,则提示太小。并更新范围为(他猜的数-当前的大数)。如果猜的数字超出范围,则提示超出范围。如果猜对了,则提示正确和猜了几次。例如随机生成的数字是50,然后玩家猜的是30,则提示太小,并更新范围到(30-100),然后玩家猜70,提示太大,并更新范围到(30-70),如果玩家猜80,则提示超出范围。当玩家猜50时,提示正确猜了4次。现在你的程序就是要实现类似这样的功能。

输入

开始是一个正整数n,表示有n组测试数据。
每组数据包括,一个整数k,表示随机生成的数字,和一个整数m,表示这个玩家总共猜了几次。
接着是m个整数,分别表示玩家猜的数字。

输出

对于每组测试数组,如果玩家回答在数字范围外,则输出“超出范围”。
在有效范围内,如果在比生成的数字小则输出“数字太小”。如果比生成的数字大,则输出“数字太大”,并在提示的同一行输出更新之后的范围,两个整数表示范围。整数用一个空格隔开,第一个整数和前面的提示也用一个空格隔开。
如果数据刚好是生成的数,则输出正确,和他了几次的次数。次数用一个空格和前面提示隔开,对于剩余数据需要被读入,但是不做任何的提示输出。
如果一组测试中,所有的数字都没有回答正确,则输出“回答错误”。
每次提示输出都独占一行。

样例输入

2
50 5
10 10 70 70 60
60 4
60 50 40 70


样例输出

数字太小 10 100
超出范围 10 100
数字太大 10 70
超出范围 10 70
数字太大 10 60
回答错误
正确 1
#include<stdio.h>
int main()
{
    int b=1,i,k,o,m,n,zuo=0,you=100,a;
    scanf("%d",&n);
    for(i=1;i<=n;i++)
    {
      scanf("%d%d",&m,&o);
      zuo=0;you=100;
       for(k=0;k<o;k++)
       {
        scanf("%d",&a);
        
        if(a>zuo&&a<you)
           {
               if(a<m)
               {
                 zuo=a;
                 printf("数字太小 %d %d\n",zuo,you);
                }
               else if(a>m)
                {
                    you=a;
                    printf("数字太大 %d %d\n",zuo,you);
                }        
               else if(a==m)
               {
                   b=0;
                 printf("正确 %d\n",k+1);
                 break;
               
                }   
            }   
        else
        printf("超出范围 %d %d\n",zuo,you);
       }   
       if(b=1)
       printf("回答错误");
      
     }     
         
   
    system("pause");
    return 0;
}
2008-12-08 13:20
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:0 
第一:少了rand,无法随机生成数字;

第二:没有看到边界条件改变的语句,从始至终都看到zuo=0,you=100;

第三:书写格式混乱。

--------------------------------

    基于此,希望 LZ 再好好改改。
2008-12-08 19:04
快速回复:牛人 请进 帮改一下 谢了
数据加载中...
 
   



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

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