簡體   English   中英

數組中最小的元素

[英]Smallest element in an array

我編寫了一個小程序來查找數組中的最小元素。 即使有更短的方法,我也必須使用類似的格式。 我似乎找不到代碼有問題。 測試如下:

測試最小:

數組:

你的回答= 2147483647

- - 通過 - -

數組:0 -1 5

您的答案= -1

- - 通過 - -

陣列:-1 0 3 -10 3 100

你的回答= 100

- - 失敗 - -

陣列:0 0

您的答案= 0

- - 通過 - -

數組:

您的答案= 2147483647

- - 通過 - -

int smallest(int elements[], int size) {
int i;
int temp1 = 0;
int temp2 = elements[0];
if (size <= 0)
{
  return INT_MAX;
}
else
{
for (i = 0; i<size; i++)
{
  if (elements[i] < temp1)
  {
    elements[i-1] = elements[i];
    temp2 = elements[i];
    elements[i] = temp1;
    temp1 = temp2;
  }
  else
    temp1 = elements[i];
}

return temp1;
}
}

您需要記住當前的最小值(可以開始等於數組的第一個元素),然后循環遍歷數組。 如果當前元素小於當前最小值,則更改當前最小值的值。

...    
int min = elements[0];
int i;
for (i = 1; i < size; ++i)
    if (elements[i] < min)
        min = elements[i];
...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM