...这组数中最大值和最小值,然后将最大值和最小值位置交换
发布网友
发布时间:2024-10-24 05:32
我来回答
共1个回答
热心网友
时间:2024-11-21 22:44
1、 输入一组整数,找出这组数中最大值与最小值的下标,在主调函数中输出最大值和最小值,用指针实现。
#include<stdio.h>
#define N 40
void Max_Min(int a[],int n,int *pmax,int *pmin){
int i;
int p1=0,p2=0;
*pmax=*pmin=a[0];
for (i=0;i<n;i++){
if (a[i]>*pmax){
*pmax=a[i];
p1=i;
}
else if (a[i]<*pmin){
*pmin=a[i];
p2=i;
}
}
printf("最大值的下标为:%d\n",p1+1);
printf("最小值的下标为:%d\n",p2+1);
}
int main()
{
int a[N],n,i,max,min;
printf("输入整数个数:\n");
scanf("%d",&n);
printf("输入%d个整数:\n",n);
for (i=0;i<n;i++)
scanf("%d",&a[i]);
Max_Min(a,n,&max,&min);
printf("%d个整数的最大值为:%d,最小值为:%d\n",n,max,min);
return 0;
}