国贸到西直门:有两个数组AB,在A里面找到最大的放在第一个,最小的放在最后,然后将A复制给B

来源:百度文库 编辑:神马品牌网 时间:2024/05/01 04:03:42
数组里的元素是随机给的
一定要用C编的~~是tubro c不能用c++

没说的按大小排队,只是找出最大和最小。

int N;
double A[N],B[N];
int i,i_max,i_min;

i_max = 0;
i_min = 0;
for (i=0;i<N;i++){
if (A[i] > A[i_max]) i_max = i; //找最大的那个元素
if (A[i] < A[i_min]) i_min = i; //找最小的
}
A[0] = A[i_max]; // 最大的放到第一个
A[N-1] = A[i_min]; // 最小的放到最后一个

for (i=0;i<N;i++) B[i] = A[i]; // A复制给B

简单
main()
{
int i,j,t;
for(i=0;i<N;i++) n是数组的最大下标
for(j=i;j<N-1;j++)
if(a[i]<a[j])
t=a[i],a[i]=a[j],a[j]=t;
for(i=0;i<N;i++)
b[i]=a[i];
}

int A[N],B[N];

void main()
{
int i,max,min,t;
for(i=max=0; i<N; i++) if(A[i]>A[max]) max=i;
t=A[max];
A[max]=A[0];
A[0]=t;
for(i=min=1; i<N; i++) if(A[i]<A[min]) min=j;
t=A[min];
A[min]=A[N-1];
A[N-1]=t;
for(i=0; i<N; i++) B[i]=A[i];
}

上面写的不错