ZZULIOJ 1120 最值交換 陣列

2021-08-06 07:22:52 字數 888 閱讀 2230

time limit: 1 sec  

memory limit: 128 mb

submit: 4691  

solved: 2037

submit

status

web board

有乙個長度為n的整數序列。請寫乙個程式,先把序列中的最小值與第乙個數交換,再把最大值與最後乙個數交換。輸出轉換好的序列。 分別編寫兩個函式minindex()和maxindex()來計算最小值下標和最大值下標。

int 

minindex(int a, int n);  //函式返回陣列a中最小元素的下標

int 

maxindex(int a, int n);  //函式返回陣列a中最大元素的下標

陣列元素的輸出呼叫函式printarr()。

輸入包括兩行。 

第一行為正整數n(1≤n≤10)。 

第二行為n個正整數組成的序列,保證沒有重複元素。

輸出轉換好的序列。資料之間用空格隔開。

55 4 1 2 3

1 4 3 2 5

解析:

最大值最小值的下標要分開來求,博主一開始想一次求出來,後來總是出錯,一次將兩個最值交換很容易出錯,

建議分兩次來操作。

程式如下:

#includeint main()

}c=a[n-1];

a[n-1]=a[j];

a[j]=c;

for(i=0;i} d=a[0];

a[0]=a[k];

a[k]=d;

for(i=0;iprintf("%d%c",a[i],i==n-1?'\n':' ');

return 0;

}

ZZULIOJ 1120 最值交換

有乙個長度為n的整數序列。請寫乙個程式,先把序列中的最小值與第乙個數交換,再把最大值與最後乙個數交換。輸出轉換好的序列。分別編寫兩個函式minindex 和maxindex 來計算最小值下標和最大值下標。intminindex int a,int n 函式返回陣列a中最小元素的下標 intmaxin...

zzulioj 1120 最值交換

題目描述 有乙個長度為n的整數序列。請寫乙個程式,先把序列中的最小值與第乙個數交換,再把最大值與最後乙個數交換。輸出轉換好的序列。分別編寫兩個函式minindex 和maxindex 來計算最小值下標和最大值下標。int minindex int a,int n 函式返回陣列a中最小元素的下標 in...

1120 最值交換

有乙個長度為n的整數序列。請寫乙個程式,先把序列中的最小值與第乙個數交換,再把最大值與最後乙個數交換。輸出轉換好的序列。分別編寫兩個函式minindex 和maxindex 來計算最小值下標和最大值下標。int minindex int a,int n 函式返回陣列a中最小元素的下標 int max...