A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© huzhiqiang 中级黑马   /  2016-5-18 21:50  /  1456 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 huzhiqiang 于 2016-5-18 21:55 编辑

原题需求是:用户输入5个整数,打印所输入的整数的最大值和最小值。
下面是我自己鼓捣的,我想请教一下有木有什么方法可以使用户无论输入多少个整数,都能找出所输入的整数中的最大和最小值
#include <stdio.h>

int main(int argc, const char * argv[]) {
    int a = 0,max = 0,min = 0;

       for(int i=0;i<5;i++)
    {
        printf("输入5个整数:\n");
        if(i==0)
        {
            scanf("%d",&min);
            max = min;
        }

        else
        {
            scanf("%d",&a);
            if(a < min)
                min = a ;
            else if(a > max)
                max = a ;
        }

    }
    printf("最大值是:%d\n最小值是:%d\n",max,min);
    return 0;
}

6 个回复

倒序浏览

回帖奖励 +5

不错,这个问题的解决方法很多
回复 使用道具 举报
#include <stdio.h>

int main(int argc, const char * argv[]) {
    int n = 0,max = INT32_MIN,min = INT32_MAX,num = 0;
    printf("请输入数目的总数:");
    scanf("%d",&n);
    for(int i=0;i<n;i++)
    {
        printf("输入第%d个整数:\n",i + 1);
        scanf("%d",&num);
        if (num >= max)
         {
              max = num;
         }
        if( num <= min)
        {
            min = num;
        }

    }
    printf("最大值是:%d\n最小值是:%d\n",max,min);
    return 0;
}

评分

参与人数 1黑马币 +1 收起 理由
huzhiqiang + 1 赞一个!

查看全部评分

回复 使用道具 举报 1 0
新人表示深受教育
回复 使用道具 举报
buzheng 发表于 2016-5-18 22:57
#include

int main(int argc, const char * argv[]) {

我怎么就没想到呢、、、谢谢了哈
回复 使用道具 举报
哈哈   学过的表示还是比较简单的.
回复 使用道具 举报
之约 中级黑马 2016-5-24 01:13:07
7#
死循环,让用户一直输入,直到用户输入一个特定字符时停止输入,最后打印结果
回复 使用道具 举报 1 0
您需要登录后才可以回帖 登录 | 加入黑马