在一个数组中如何选出多个最大数的下标?
答案:3 悬赏:0
解决时间 2021-03-11 23:22
- 提问者网友:伪善人独行者
- 2021-03-11 11:04
例如:a[10]={10,5,3,2,4,6,7,9,8,1}中找出7 8 9 10的下标,要c++编写的。
最佳答案
- 二级知识专家网友:旧事诱惑
- 2021-03-11 11:31
//数组a ,个数为n, 最大数下标的个数m 以你的例子就是:a, 10,4
void search_index(int *a, int n, int m)
{
int i, j;
for( i = m; i > 0; i --)
{
for(j = 1; j < n; j ++)
{
int max = a[0];
int max_index = 0;
if(a[j] > max) { max = a[j]; max_index = j; }
}
printf("the max value:%d index:%d\n", max, max_index);
a[max_index] = 0;
}
}
void search_index(int *a, int n, int m)
{
int i, j;
for( i = m; i > 0; i --)
{
for(j = 1; j < n; j ++)
{
int max = a[0];
int max_index = 0;
if(a[j] > max) { max = a[j]; max_index = j; }
}
printf("the max value:%d index:%d\n", max, max_index);
a[max_index] = 0;
}
}
全部回答
- 1楼网友:零负荷的放任
- 2021-03-11 12:06
你可以参考下这段代码:(记得加分!!!)
int p(int Data[], int n)
{
int *t=new int [n];
for(int i=0;i<n;i++)
{
int tmp=0;
for(int j=0;j<n;i++)
if(Data[i]<Data[j])
tmp++;
if(tmp==0)
cout<<"最大元素下标"<<i<<endl;
else if(tmp==1)
cout<<"第二大元素下标"<<i<<endl;
else if(tmp==2)
cout<<"第三大元素下标"<<i<<endl; }
else if(tmp==3)
cout<<"第四大元素下标"<<i<<endl;
}
- 2楼网友:为你轻狂半世殇
- 2021-03-11 11:49
.版本 2.支持库 spec.子程序 _按钮1_被单击.局部变量 i, 整数型.局部变量 最大数下标, 整数型最大数下标 = 1.计次循环首 (取数组成员数 (数组), i) .如果真 (数组 [最大数下标] < 数组 [i]) 最大数下标 = i .如果真结束.计次循环尾 ()调试输出 (最大数下标)
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯