| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 474 人关注过本帖
标题:为什么显示结果错误?
只看楼主 加入收藏
glglzb
Rank: 2
等 级:论坛游民
帖 子:47
专家分:22
注 册:2011-10-12
结帖率:93.33%
收藏
已结贴  问题点数:20 回复次数:7 
为什么显示结果错误?
序列极值
时间限制:1000 ms  |  内存限制:32767 KB
描述
给定一个长度为n 的整数序列,要求输出该序列的最小值和最大值。

输入
第一行有一个整数,表示测试数据的组数:


对于每组测试数据有两行: 第一行为一个整数 n (n<=1000) 表示序列的长度。


第二行为一个长度为n 的序列(数字范围为0~32767)。

输出
对于每组输入数据,输出一行: 该序列的最小值和最大值(中间用空格隔开)

样例输入
2
3
1 2 3
3
7 2 4
样例输出
1 3
2 7

我的代码是:
#include<stdio.h>
int main()
{
    int n,a,b[1001];
    int i,j,k,l,m;
    int min,max=0;
    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
        scanf("%d",&a);
        for(j=0;j<a;j++)
        {
            scanf("%d",&b[j]);
        }
        min=b[0];
        for(k=0;k<a;k++)
        {
            if(max<=b[k])
                max=b[k];
            if(min>=b[k])
                min=b[k];
        }
        printf("%d %d\n",min,max);
    }
    return 0;
}
到底哪里错了?谢谢
搜索更多相关主题的帖子: 测试 内存 include 最大值 
2012-02-09 11:08
lonmaor
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:郑州
等 级:版主
威 望:75
帖 子:2637
专家分:6423
注 册:2007-11-27
收藏
得分:5 
先说一点
 int min,max=0;
只初始化了max,而min为不可预知的值

从不知道到知道,到知道自己不知道,成长的道路上脚步深深浅浅
2012-02-09 11:12
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:15 
嗯,不好意思,睡眠不足,少看了一行。
这题用不着数组,一共用5个整型变量就够了。
为表示歉意送一段代码给你借鉴,不知道这哪里的题目,但应该可以AC
程序代码:
#include<stdio.h>
int main()
{
    int m, n, max, min, t;
    for(scanf("%d", &m); m--; printf("%d %d\n", min, max))
    for(scanf("%d%d", &n, &t), n--, max = min = t; n--;)
    {
        scanf("%d", &t);
        if(t > max) max = t;
        else if(t < min) min = t;
    }
    return 0;
}


[ 本帖最后由 beyondyf 于 2012-2-9 11:40 编辑 ]

重剑无锋,大巧不工
2012-02-09 11:15
glglzb
Rank: 2
等 级:论坛游民
帖 子:47
专家分:22
注 册:2011-10-12
收藏
得分:0 
回复 2楼 lonmaor
在for循环里面  我有min=b[0];
2012-02-09 11:18
glglzb
Rank: 2
等 级:论坛游民
帖 子:47
专家分:22
注 册:2011-10-12
收藏
得分:0 
回复 2楼 lonmaor
在for循环里面  有min=b[0];
2012-02-09 11:21
glglzb
Rank: 2
等 级:论坛游民
帖 子:47
专家分:22
注 册:2011-10-12
收藏
得分:0 
回复 3楼 beyondyf
如果使用数组,就像这样的话,结果出错在哪啊?
2012-02-09 11:38
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
回复 6楼 glglzb
将min=b[0];改成max = min=b[0];就可以了

重剑无锋,大巧不工
2012-02-09 11:43
glglzb
Rank: 2
等 级:论坛游民
帖 子:47
专家分:22
注 册:2011-10-12
收藏
得分:0 
AC   谢谢!
2012-02-09 16:14
快速回复:为什么显示结果错误?
数据加载中...
 
   



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

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