【题目描述】
从键盘输入n(n从键盘输入,n<=100)个数存放在数组中,输出其中的最大数和最小数及他们对应的下标。
【输入说明】
输入包含2行,第一行只有1个数字表示n,第二行有连续n个数字,其间用半角空格间隔。
【输出说明】
输出只有1行,顺次输出最大数、最小数、最大数的下标和最小数的下标,其间用一个半角空格间隔。
【输入样例】
4
100 90 80 55
【输出样例】
100 55 1 4
代码实现
#include <stdio.h>
int a[200]={0},k,t=0,i,q,p;
int max(int b[200])
{
for(i=1;i<=k;i++)
{
if(t==1)
{
if(b[p]>=b[i])continue;
else p=i;
}
else if(b[i]>=b[i+1])p=i;
else p=i+1;
t=1;
}
return b[p];
}
int min(int c[200])
{
t=0;
for(i=1;i<=k;i++)
{
if(t==1)
{
if(c[q]<=c[i])continue;
else q=i;
}
else if(c[i]<=c[i+1])q=i;
else q=i+1;
t=1;
}
return c[q];
}
int main()
{
int m,n;
scanf("%d",&k);
for(i=1;i<=k;i++)
{
scanf("%d",&a[i]);
}
if(k==1) printf("%d %d %d %d",a[1],a[1],1,1);
else{m=max(a);
n=min(a);
printf("%d %d %d %d",m,n,p,q);}
return(0);
}