作业帮 > 综合 > 作业

已知序列(25,16,32,18,20,36,12)请给出采用冒泡排序对该序列做升序排序时的每一趟结果

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/06/09 08:31:01
已知序列(25,16,32,18,20,36,12)请给出采用冒泡排序对该序列做升序排序时的每一趟结果
已知序列(25,16,32,18,20,36,12)请给出采用冒泡排序对该序列做升序排序时的每一趟结果
#include
#define N (sizeof(a) / sizeof(*a))
void display(int a[],int n);
int main() {
\x05int a[] = {25,16,32,18,20,36,12};
\x05int i,j;
\x05printf("original:\n");
\x05display(a,N);
\x05printf("sorted:\n");
\x05for (i = 0; i + 1 < N; ++i) {
\x05\x05for (j = 0; j + i + 1 < N; ++j) {
\x05\x05\x05if (a[j + 1] < a[j]) {
\x05\x05\x05\x05int t = a[j];
\x05\x05\x05\x05a[j] = a[j + 1];
\x05\x05\x05\x05a[j + 1] = t;
\x05\x05\x05}
\x05\x05}
\x05\x05display(a,N);
\x05}
\x05system("pause");
\x05return 0;
}
void display(int a[],int n) {
\x05int i;
\x05for (i = 0; i < n; ++i) {
\x05\x05printf("%4d",a[i]);
\x05}
\x05printf("\n");
}