C語言冒泡排序法

#include數組

#includeide

void main()函數

{spa

int i, j,n,temp;//定義函數中所用的變量排序

char a[50];//a[]中的空格定義輸入字符串的最大個數字符串

printf("輸入一組字符串:");get

gets_s(a);//輸入字符串it

n = sizeof(a) / sizeof(a[0]);//計算字符串長度class

for(i=1;i<n-1;i++)//進行第一輪比較變量

for (j = 0; j < n - i; j++)//進行第二輪比較

{

if (a[j] > a[j + 1])//從小到大比較

{

temp = a[j];//定義的temp用來存放比較的較小值

a[j] = a[j + 1];//再把較大值放入a[j]中

a[j + 1] = temp;

}

}

for (i = 0; i < n; i++)//依次輸出已經排序好的a[i]數組

printf("%c\n", a[i]);

printf("\n");//"\n"結束

}

上面的方法只能排序字符串,並且打印數字的話沒有隔開距離,因此實踐中打印數字的話能夠將char類型改爲int,若是排序已知數列可直接a[]={};輸出,或者經過printf("");//輸入元素個數

scanf("%d",&  );

printf("");//輸入元素值

if(i=0;i<n;i++)

scanf("%d",&a[i]);//將元素值儲存在a[i]中

而後按照上述冒泡排序法輸出,後續只用將打印的%c改爲%d\t就能夠了;

若是有錯的地方歡迎你們dd

相關文章
相關標籤/搜索