#include<stdio.h>
#include<stdlib.h>
int main()
{
int n,i,j,max[30]={0},min,count[30]={0};
int a[35]={0};
while(scanf("%d",&n)!=EOF)
{
for(i=1;i<n+1;i++)/*比出最大值*/
{
scanf("%d ",&a[i]);
}
for(i=1;i<n+1;i++)
{
max[i]=a[i];
for(j=1;j<n+1;j++)
{
if(a[j]>max[i])
count[i]=j;/记下最大值的位置/
if(a[j]==max[i])
count[i]=i;
}
}
min=count[1];
for(i=1;i<=n;i++)/*比出哪个最大值位置最小*/
{
if(count[i]<=min)
{
min=count[i];
}
}
printf("%d",min);
printf("\n");
n=0;
}
return 0;
}
输出的结果不对,哪里错了?
就这么个功能,你能写出这么多行数?
首次出现很容易啊,你只要比较的时候要求后面的值必须大于当前max才修改max不就行了吗?为啥要把最大值相同的都搞出来还比较呢??