1. C语言之最大与最小元素对调
#include<stdio.h>
intmain()
{
inta[10000];
inti,j,k,tmp,n,max=0,min=0;
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=0;i<n;i++){
if(max<a[i]){
max=a[i];
j=i;
}
if(min>a[i]){
min=a[i];
k=i;
}
}
tmp=a[j];
a[j]=a[k];
a[k]=tmp;
for(i=0;i<n;i++){
printf("%d",a[i]);
if(i!=n-1)
printf("");
}
printf(" ");
return0;
}
2. C语言程序:数组中最大与第一个数对调,最小与最后一个对调
#include<stdio.h>
int i,maxn,minn,n,a[1000];
void swapvar(int s,int t)//交换的过程函数
{
int temp;
temp=a[s];
a[s]=a[t];
a[t]=temp;
}
int main()
{
scanf("%d",&n);
for (i=0;i<n;i++) scanf("%d",&a[i]);//读入
for (i=maxn=minn=0;i<n;i++)//查找,其中maxn和minn分别表示最大和最小元素在数组中下标
{
if (a[i]>a[maxn]) maxn=i;
if (a[i]<a[minn]) minn=i;
}
swapvar(0,maxn);//交换
swapvar(n-1,minn);
for (i=0;i<n;i++)//输出
{
if (i) printf(" ");
printf("%d",a[i]);
}
printf("\n");
return 0;
}