C程序設計 第六章課后習題2
“用選擇法對十個整數排序”
首先定義一個長度為10的數組用來存儲十個整數 "a[10]"
需要注意的是長度為10的數組下標范圍為1~9,在改變下標數值時要注意防止數組范圍溢出
↓數組范圍溢出的提示

主要通過一個兩層嵌套的for語句實現冒泡排序
- for (j = 0; j < 9; j++) //進行九次循環,實現九輪比較
- for (i = 0; i < 9 - j; i++) //每一輪中進行9-j次比較
- if (a[i] > a[i + 1]) //相鄰兩個數進行比較
- {
- t = a[i]; a[i] = a[i + 1]; a[i + 1] = t;
- }
完整程序(在vs2017內調試通過)
#include<stdio.h>
int main()
{
int a[10], i, j, t;
printf("input ten numbers\n");
for (i = 0; i < 10; i++)
scanf_s("%d", &a[i]);
printf("\n");
for (j = 0; j < 9; j++)
for (i = 0; i < 9 - j; i++)
if (a[i] > a[i + 1])
{
t = a[i]; a[i] = a[i + 1]; a[i + 1] = t;
}
printf("output\n");
for (i = 0; i < 10; i++)
printf("%d ", a[i]);
printf("\n");
return 0;
}
(for循環后面一定不要打;!)
