12. 求最大数最小数

题目描述

输入N个(N<=10000)数字,求出这N个数字中的最大值和最小值。每个数字的绝对值不大于1000000。

输入描述:

输入包括多组测试用例,每组测试用例由一个整数N开头,接下去一行给出N个整数。

输出描述:

输出包括两个整数,为给定N个数中的最大值与最小值。

示例1

输入

5
1 2 3 4 5
3
3 7 8

输出

5 1
8 3
解法
#include
#include

int max(int *num, int k){    //求数组中最大值 
    if(k > 0){
        int max = num[0];
        for(int i = 1; i < k; i++){
            if(num[i] > max)
                max = num[i];
        }
        return max;
    }
}

int min(int *num, int k){    //求数组中最小值 
    if(k > 0){
        int min = num[0];
        for(int i = 1; i < k; i++){
            if(num[i] < min)
                min = num[i];
        }
        return min;
    }
}

int main(){
    int k = 0;
    while(scanf("%d", &k) != EOF){
        int *num = (int *) malloc (sizeof(int) * k);    //动态分配数组 
        for(int i = 0; i < k; i++){
            scanf("%d", &num[i]);
        }
        printf("%d %d\n", max(num, k), min(num, k));
        free(num);
    }
    return 0;
}

你可能感兴趣的:(12. 求最大数最小数)