C語言:數組元素個數固定的最值輸出

完成于2020.10.10算法

數組元素個數固定式的最值輸出

1、第一版(未優化)

** 比較基礎的寫法,须要在代碼中屡次輸入元素個數,有點繁瑣,可是對於初學者,有利於明白比較大小這個算法**数组

第一种代码图像以下:

初級版

第一种代码以下:

#include <stdio.h>
int main ()
{ 
    printf(" 请输入十个整数,每一个整数用回车间隔:\n");
    int m,i;
    int a[10];
    for (i=0;i<10;i++)
        { 
            if (i<10)
        { 
         scanf("%d",&a[i]);
         m=max(a);
    }
    printf("输入的数据中最大值为:%d\n",m);
}
int max(int a[10])
{ 
    int m,i;
    m=a[0];
    for (i=0;i<10;i++)
    { 
         if (m<a[i])
         { 
             m=a[i];
         }
    }
    return m;
}

2、优化版(模块化)

** 相较于第一种方法,这种方法能够让用户自行定义输入的数组元素个数,更加人性化,与此同时,因为函数模块化(max函数),能够屡次利用该函数。**模块化

先上图:

优化版

再上代码:

#include <stdio.h>
int main ()
{ 
    int max()
    int i,m,lg;
    printf("请输入数据个数:\n");
    scanf("%d",&lg);
    int a[lg];
    for(i=0;i<lg;i++)
       { 
           printf("请输入第%d个数据\n",i+1);
           scanf("%d"&,a[i]);
       }
    m=max(a,lg);
    printf("这些数据中最大值为:%d\n",m);
}
int max(int a[],int lg)
{ 
    int i ,m;
    m=a[0];
    for (i=0;i<lg;i++)
    { 
        if (m<a[i])
        { 
            m=a[i];
        }
    }
    return m ;
}

结语

  • 可能图示代码与下面的代码块有些许不一样,但实际运行结果相同。

By Levi.函数

相关文章
相关标签/搜索