/*C語言 陣列取最大及最小值*/
#include <stdio.h>
#include <stdlib.h>
#define ROW 4
#define COL 3
//定義ROW和COL的值

int function1(int array1[COL][ROW]),function2(int arrray1[COL][ROW],int array2[]) ;
//宣告函數function1()和function2()的原型

int main(void)
{
    int array1[COL][ROW] = { {1,2,3,10},{4,5,6,11},{7,8,9,12} };
    int array2[2] = {0};
    //先將array2[]陣列裡的元素定義為0。
    function1(array1);
    function2(array1, array2);
    
    printf("The maximum is:%d\n", array2[0]);
    //印出array[0]
    printf("The minimum is:%d\n", array2[1]);
    //印出array[1]

    system("pause");
    return 0;
}

int function1(int array1[COL][ROW])
{
    int i,j;

    printf("array1=\n");

    for (i = 0; i < COL; i++)
    {
        for (j = 0; j < ROW ; j++)
            printf(" %d", array1[i][j]);
        printf("\n");
    }
}

int function2(int array1[][ROW], int array2[])
{
    int i, j;

    for (i = 0; i < COL; i++)
    {
        for (j = 0; j < ROW; j++)
        {
            if (array2[0] < array1[i][j])
                array2[0] = array1[i][j];
            //如果array1[][]比array2[0]的元素大
            //則array2[0]的元素變成array1[][]的元素

            if (array2[1] > array1[i][j])
                array2[1] = array1[i][j];
            //如果array1[][]比array2[0]的元素小
            //則array2[1]的元素變成array1[][]的元素
        }
    }
}

結果為:

image

arrow
arrow
    創作者介紹
    創作者 愛學習 的頭像
    愛學習

    愛學習

    愛學習 發表在 痞客邦 留言(0) 人氣()