//// main.c// 数组-冒泡排序//// Created by LongMa on 2019/6/26.// Copyright © 2019. All rights reserved.//#includeint main(int argc, const char * argv[]) { int a[10]; for (int i = 0; i < 10; i++) { printf("请输入第%d个整数,共10个:",i + 1); scanf("%d", &a[i]); } int temp = 0; //冒泡:第一次,最大的排到了最后一位;第二次(不用对比最后一个),次大的排到倒数第二位... for (int i = 0; i <= 10 - 1 - 1 ; i++) {//共3个数,要循环2次 => n个数,循环n-1次 for (int j = 0; j <= 10 - 1 - 1 - i ; j++) {//i为0时,j + 1最大 == 9,j最大 == 8 if (a[j] > a[j + 1]) { temp = a[j]; a[j] = a[j + 1]; a[j + 1] = temp; } } } for (int k = 0; k < 10; k++) { printf("%d\t",a[k]); } return 0;}
log:
请输入第1个整数,共10个:9请输入第2个整数,共10个:8请输入第3个整数,共10个:7请输入第4个整数,共10个:66请输入第5个整数,共10个:55请输入第6个整数,共10个:444请输入第7个整数,共10个:3请输入第8个整数,共10个:2请输入第9个整数,共10个:0请输入第10个整数,共10个:1111110 2 3 7 8 9 55 66 444 111111 Program ended with exit code: 0