C語言訓練-3441-氣泡排序
阿新 • • 發佈:2018-12-21
Problem Description LeiQ當上了體育委員,現在老師讓他去給班級裡的人排隊,LeiQ剛學了排序,所以他想以這種方式給班級裡的人排隊(從矮到高),他想知道排序完成後的結果。 Input 多組輸入,每組的第一行是一個正數n(1<=n<=100),第二行是n個數,表示每一個人的高度。 Output 輸出排序完成後的結果。 Sample Input 3 176 175 174 Sample Output 174 175 176 題目難度不大,主要是一個氣泡排序的問題
#include<bits/stdc++.h> using namespace std; int main(){ int n; while(~scanf("%d",&n)){ int a[100]; for(int i=0;i<n;i++){ scanf("%d",&a[i]); } for(int i=0;i<n-1;i++){ for(int j=0;j<n-i-1;j++){ if(a[j]>a[j+1]){ int t; t=a[j];a[j]=a[j+1];a[j+1]=t; } } } for(int i=0;i<n;i++){ if(i==0) printf("%d",a[i]); else printf(" %d",a[i]); } printf("\n"); } return 0; } //選擇排序 #include<bits/stdc++.h> using namespace std; int main(){ int n; while(~scanf("%d",&n)){ int a[100]; for(int i=0;i<n;i++){ scanf("%d",&a[i]); } for(int i=0;i<n-1;i++){ for(int j=i+1;j<n;j++){ if(a[i]>a[j]){ int t; t=a[i];a[i]=a[j];a[j]=t; } } } for(int i=0;i<n;i++){ if(i==0) printf("%d",a[i]); else printf(" %d",a[i]); } printf("\n"); } return 0; }