程序代码:
#include<stdio.h>
#include<stdlib.h>
void main()
{
int M;
int Arr[100];
int i,min,max,temp;
int flag1=0,flag2=0; //最小最大数在数组中位置的标记
scanf("%d",&M);
for(i=0;i<M;i++)
scanf("%d",&Arr[i]);
min=Arr[0]; //初始化
max=Arr[0];
for(i=0;i<M;i++)
{
if(Arr[i]<min) //求最小数并标记其在数组中的位置
{
min=Arr[i];
flag1=i;
}
if(Arr[i]>max) //求最大数并标记其在数组中的位置
{
max=Arr[i];
flag2=i;
}
}
temp=Arr[0]; //交换最小数
Arr[0]=min;
Arr[flag1]=temp;
temp=Arr[M-1]; //交换最大数
Arr[M-1]=max;
Arr[flag2]=temp;
printf("\n");
for(i=0;i<M;i++) //输出
printf("%d\t",Arr[i]);
printf("\n");
system("pause");
}
图片附件: 游客没有浏览图片的权限,请
登录 或
注册
[
本帖最后由 qq1023569223 于 2011-4-16 12:16 编辑 ]