请用户输入7个数,并存为数组arrTest。找出数组arrTest中最大值的下标,并输出
你题目的解答代码如下:(如有帮助,望采纳!谢谢! 点击我这个回答右上方的【采纳】按钮)
var arrTest = [];
for (var i = 0; i < 7; i++) {
var n = parseFloat(prompt("请输入下标"+i+"的数:",""));
arrTest.push(n);
}
var index = 0;
for (var i = 1; i < arrTest.length; i++) {
if (arrTest[index] < arrTest[i])
index = i;
}
alert("最大值:"+arrTest[index]+",最大值下标"+index);
<script type="text/javascript">
//定义一个数组,并给出7个整数,求该数组中的最大值,及最大值下标,最小值及最小值下标。
var arr = [5,3,6,2,7,9,4];
//定义最大值变量:从数组中指定一个,充当最大值
var max = arr[0];//一般讲数组的第一个元素作为最大值
var maxIndex = 0;
var min =arr[0];//假设最小值
var minIndex = 0;
//通过循环,来比较最大值
for(var i=0;i<arr.length;i++)
{
//拿max和数组中的每个值比较,那么谁大就把谁的值再次存入max变量中
if(max<arr[i])
{
max = arr[i];
maxIndex= i;
}
//求最小值及下标
if(min > arr[i])
{
min = arr[i];
minIdex = i;
}
}
var str ="最大值:"+max+",最大值小标"+maxIndex;
str+="<br />最小值:"+min+"最小值下标"+minIdex;
document.write(str);
</script>
如果对你有帮助,可以点击我这个回答右上方的【采纳】按钮,给我个采纳吗,谢谢
数组排序一下就出来了啊 。排序可以用sort
第一种
/**
* @param {number[]} arr
* @return {number}
*/
var ArrayIndex = (arr) => {
let max = arr[0];
for(let i =1;i<arr.length;i++){
if(max > arr[i]){
return i-1;
}else{
max = arr[i];
}
}
};
第二种
/**
* @param {number[]} arr
* @return {number}
*/
const ArrayIndex = (arr) => {
return arr.indexOf(Math.max.apply(null,arr))
};