如何在C中显示数组最大值的索引?

时间:2015-10-27 18:27:54

标签: c

用户必须输入10个值,并且您应该显示最大值及其索引。我已经使用for循环获得了最大的值..

largest = num[0];
for (n = 1; n < 10; n++) {
    if (largest < num[n])
        largest = num[n];
}

但我不知道如何获得它的索引。我试过谷歌搜索它,但它们是在java(P.S。我只是一个初学者)

2 个答案:

答案 0 :(得分:5)

不是存储最大值,而是存储索引:

size_t index_of_max = 0;
for(size_t n = 1; n < 10; n++) {
  if(numbers[index_of_max] < numbers[n]) {
    index_of_max = n;
  }
}

另外,只是一个小风格的注释:总是使用if的大括号,即使它们是一个声明。这是一个很好的做法,可以避免错误(而不是这样做是导致许多安全问题)。

答案 1 :(得分:1)

始终索引从0开始。试试这个我希望这可以帮助你。

var max = arr[0];
var maxIndex = 0;

for (var i = 1; i < arr.length; i++) {
if (arr[i] > max) {
    maxIndex = i;
    max = arr[i];
   }
}