问答详情
源自:6-12 综合练习

请解释一下这段代码怎样求得最小值

int Min(int score[])

{

    int min =100;

int i;

for(i=0;i<N;i++)

{

if(score[i]< min)

{

min = score[i];              

}                

return min;

}


提问者:会飞的柠檬 2015-07-29 02:31

个回答

  • jsksxs360
    2015-07-29 10:24:47
    已采纳

    这段代码有局限,1.数组大小固定为 N,因为不是通过参数传入的。2.只有在数组中最小值比 100 小时才有效。

    假设数组中最小值比 100 小,通过循环将数组中所有值依次和 min 比较,只要比 min 小,min 就赋为它。即如果后来发现还有值更小,min 就赋为更小的值。全部比较一遍后,min 就被替换为最小的值了。

  • jsksxs360
    2015-08-04 21:17:28

    int Min(int score[], int N)

    {

        int min;

        int i;

        for(i = 0; i < N; i++)

        {

            if(i == 0) //将数组第一个值赋给min

            {

                min = score[i];

                continue;

            }    

            if(score[i] < min) //只要值比min还要小,就赋给min

                min = score[i];                             

        } 

        return min;

    }