-1
#include<stdio.h>
void swap(int a[60],int p, int min){
int temp;
if (min!=p){
temp= a[p];
a[p]=a[min];
a[min]=temp;
}
return;
}
void selection(int a[60]){
int p=0;
do {
int min = p;
for (int i=p+1;i<60;i++){
if(a[min]>a[p])min=p;
}
swap(a,p,min);
p++;
} while(p<60);
}
int main(){
int a[60];
int p=0;
while(p<60){
scanf("%d\n",&a[p]);
p++;
}
selection(a);
p=0;
while(p<60){
printf("%d\n",a[p]);
p++;
}
return 0;
}
- 在主第一功能掃描從標準輸入一個60大小的數組。
- 如上所定義的被稱爲一個選擇函數「應該」陣列
- 選擇函數定義了一個變量p以能夠經過陣列60倍
- 另一個for循環找到最低元件陣列中的排序
- 如果找到,則交換函數交換在最小和對位置
- 的循環運行60次以對數組進行排序
- 打印數組被稱爲在主函數數組值
你'如果(A [分鐘]> [p]組)分= P;'原因造成的問題。 'p'不會改變。 '我'。 –
歡迎來到SO。請參觀參觀,瞭解要問什麼問題以及如何。這裏沒有問題。 –
謝謝@MayankVerma。 –