实现冒泡排序。(排序整形数组)。使用数组和指针两种方法。
2016-01-17 14:21
555 查看
法一:指针
结果:
9 8 7 6 5 4 3 2 1
请按任意键继续. . .
法二:数组
结果:
9 8 7 6 5 4 3 2 1
请按任意键继续. . .
#include<stdio.h> #include<stdlib.h> void bubble_sort(int arr[], int sz) { int i = 0; int j = 0; for (j = 0; j < sz - 1; j++) { for (i = 0; i < sz - 1 - j; i++) { if (*(arr + i) < *(arr + i + 1)) { int tmp = *(arr + i); *(arr + i) = *(arr + i + 1); *(arr + i + 1) = tmp; } } } } int main() { int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; int i = 0; bubble_sort(arr, sizeof(arr) / sizeof(arr[0])); for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++) { printf("%d ", arr[i]); } printf("\n"); system("pause"); return 0; }
结果:
9 8 7 6 5 4 3 2 1
请按任意键继续. . .
法二:数组
#include<stdio.h> #include<stdlib.h> void bubble_sort(int arr[], int sz) { int i = 0; int j = 0; for (j = 0; j < sz - 1; j++) { for (i = 0; i < sz - 1 - j; i++) { if (arr[i] < arr[i + 1]) { int tmp = arr[i]; arr[i] = arr[i + 1]; arr[i + 1] = tmp; } } } } int main() { int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; int i = 0; bubble_sort(arr, sizeof(arr) / sizeof(arr[0])); for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++) { printf("%d ", arr[i]); } printf("\n"); system("pause"); return 0; }
结果:
9 8 7 6 5 4 3 2 1
请按任意键继续. . .
相关文章推荐
- 冒泡排序
- 用PS实现纹理浮雕效果代码
- 用vbs实现cmd功能的代码
- 用双网卡实现三机互联
- C#中实现判断某个类是否实现了某个接口
- C#冒泡法排序算法实例分析
- DL.DT.DD实现左右的布局简单例子第1/2页
- C++实现对输入数字组进行排序
- 用PHP实现文件上传
- 无限级别菜单的实现
- 留言板翻页的实现详解
- WinForm中的登录实现
- Jquery promise实现一张一张加载图片
- JavaScript iframe数据共享接口实现方法
- Java数据结构及算法实例:冒泡排序 Bubble Sort
- ibatis简单实现与配置
- jsp实现购物程序
- MySQL 查询结果取交集的实现方法
- c++冒泡排序示例分享
- 探讨:用两个栈实现一个队列(我作为面试官的小结)