简单常用的排序之冒泡
2015-11-22 00:00
225 查看
摘要: 冒泡排序:每次比较两个相邻的元素,如果它们的顺序错误就把它们交换过来。
//冒泡排序的基本思想是:每次比较两个相邻的元素,如果它们的顺序错误就把它们交换过来。
#include <stdio.h>
#include<stdlib.h>
int main()
{
int a[100], i, j, t, n;
printf("请输入一个数n,表示接下来有n个数\n");
scanf("%d", &n); //输入一个数n,表示接下来有n个数
printf("请输入您要进行排序的n个数字:");
for (i = 1; i <= n; i++) //循环读入n个数到数组a中
scanf("%d", &a[i]);
//冒泡排序的核心部分
for (i = 1; i <= n - 1; i++) //n个数排序,只用进行n-1趟
{
for (j = 1; j <= n - i; j++) //从第1位开始比较直到最后一个尚未归位的数
{
if (a[j]<a[j + 1]) //比较大小并交换
{
t = a[j]; a[j] = a[j + 1]; a[j + 1] = t;
}
}
}
printf("\n");
printf("从小到大排序的结果为:");
for (i = 1; i <= n; i++) //输出结果
printf("%d ", a[i]);
printf("\n\n");
system("pause");
return 0;
}
//冒泡排序的基本思想是:每次比较两个相邻的元素,如果它们的顺序错误就把它们交换过来。
#include <stdio.h>
#include<stdlib.h>
int main()
{
int a[100], i, j, t, n;
printf("请输入一个数n,表示接下来有n个数\n");
scanf("%d", &n); //输入一个数n,表示接下来有n个数
printf("请输入您要进行排序的n个数字:");
for (i = 1; i <= n; i++) //循环读入n个数到数组a中
scanf("%d", &a[i]);
//冒泡排序的核心部分
for (i = 1; i <= n - 1; i++) //n个数排序,只用进行n-1趟
{
for (j = 1; j <= n - i; j++) //从第1位开始比较直到最后一个尚未归位的数
{
if (a[j]<a[j + 1]) //比较大小并交换
{
t = a[j]; a[j] = a[j + 1]; a[j + 1] = t;
}
}
}
printf("\n");
printf("从小到大排序的结果为:");
for (i = 1; i <= n; i++) //输出结果
printf("%d ", a[i]);
printf("\n\n");
system("pause");
return 0;
}
相关文章推荐
- 冒泡排序
- C#冒泡法排序算法实例分析
- C++实现对输入数字组进行排序
- Java数据结构及算法实例:冒泡排序 Bubble Sort
- c++冒泡排序示例分享
- Java中的数组排序方式(快速排序、冒泡排序、选择排序)
- python冒泡排序算法的实现代码
- c语言实现冒泡排序、希尔排序等多种算法示例
- c#冒泡排序示例分享
- 浅谈php冒泡排序
- Javascript冒泡排序算法详解
- C++冒泡排序算法实例
- C语言的冒泡排序和快速排序算法使用实例
- C语言实现冒泡排序算法
- c语言冒泡排序法代码
- 排序算法之PHP版快速排序、冒泡排序
- php排序算法(冒泡排序,快速排序)
- PHP 冒泡排序算法的实现代码
- 冒泡排序算法原理及JAVA实现代码
- Java实现八个常用的排序算法:插入排序、冒泡排序、选择排序、希尔排序等