#include <stdio.h>
int main(){
int number[10] = {95, 45, 15, 78, 84, 51, 24, 12,34,23};
for (int j = 0; j < 9; j++)
for (int i = 0; i < 9 - j; i++) {
if(a[i] > a[i + 1]) {
int temp = a[i];a[i] = a[i + 1];
a[i + 1] = temp; }
}
for (int i = 0; i < 10; i++) {
printf(“%d”,a[i]); }
}
扩展资料:
常见排序算法
快速排序、希尔排序、堆排序、直接选择排序不是稳定的排序算法,而基数排序、冒泡排序、直接插入排序、折半插入排序、归并排序是稳定的排序算法。
插入排序
已知一组升序排列数据a[1]、a[2]、……a[n],一组无序数据b[1]、b[2]、……b[m],需将二者合并成一个升序数列。
首先比较b[1]与a[1]的值,若b[1]大于a[1],则跳过,比较b[1]与a[2]的值,若b[1]仍然大于a[2],则继续跳过,直到b[1]小于a数组中某一数据a[x],则将a[x]~a[n]分别向后移动一位,将b[1]插入到原来a[x]的位置这就完成了b[1]的插入。
b[2]~b[m]用相同方法插入。
快速排序
快速排序是大家已知的常用排序算法中最快的排序方法。已知一组无序数据a[1]、a[2]、……a[n],需将其按升序排列。首先任取数据a[x]作为基准。
比较a[x]与其它数据并排序,使a[x]排在数据的第k位,并且使a[1]~a[k-1]中的每一个数据<a[x],a[k+1]~a[n]中的每一个数据>a[x],然后采用分治的策略分别对a[1]~a[k-1]和a[k+1]~a[n]两组数据进行快速排序。
希尔排序
已知一组无序数据a[1]、a[2]、……a[n],需将其按升序排列。
首先取一增量d(d<n),将a[1]、a[1+d]、a[1+2d]……列为第一组,a[2]、a[2+d]、a[2+2d]……列为第二组……,a[d]、a[2d]、a[3d]……列为最后一组以次类推,在各组内用插入排序,然后取d'<d,重复上述操作,直到d=1。
参考资料:排序-百度百科
冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。
冒泡排序流程:它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。
参考代码:
#include<stdio.h>C语言:采用冒泡排序方法,对10个数按由小到大的的顺序排序
include<stdio.h> int main(){ int i,j,t,a[10]={5,4,8,3,6,9,7,222,64,88};\/\/排序 for(i=1;i<10;i++)\/\/外循环控制排序趟数,n个数排n-1趟 { for(j=0;j<10-1;j++)\/\/内循环每趟比较的次数,第j趟比较n-i次 { if(a[j]>a[j+1])\/\/相邻元素比较,逆序则交换 ...
c语言编程:对10个数冒泡排序(升序)。
int main(){ int number[10] = {95, 45, 15, 78, 84, 51, 24, 12,34,23};for (int j = 0; j < 9; j++)for (int i = 0; i < 9 - j; i++) { if(a[i] > a[i + 1]) { int temp = a[i];a[i] = a[i + 1];a[i + 1] = temp; } } fo...
用C语言,随机输入10个整数,用冒泡排序法对这些整数进行从小到大排序...
int b[10]={9,10,11,12,1,2,3,4,0,1};int c[10]={1,2,3,4,13,14,15,16,2,3};int i;printf("请输入待排序的10个数:");for(i=0;i<10;i++){ scanf("%d",&a[i]);} fun(a);printf("\\n排序后的数列如下:\\n");for(i=0;i<10;i++){ printf("%2d ",a[i...
C语言:编写一个程序用冒泡排序实现升序排列
a[9]=3 a[10]=99 由小到大的顺序为:1,2,3,4,5,6,7,8,9,99。冒泡排序算法的原理如下:1、比较相邻的元素。如果第一个比第二个大,就交换他们两个。2、对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。3、针对所有的元素重复...
C语言:冒泡排序法将数组中10个元素从小到大排序,并找出最小值?_百度...
这段代码包含了冒泡排序算法,用于将数组中的元素从小到大排序,并寻找数组中的最小值。代码首先读取10个整数,然后初始化最小值`min`为数组的第一个元素。接下来,通过一个循环遍历数组,用一个if语句来更新`min`,如果找到一个比当前`min`小的值,就更新它。之后,冒泡排序的逻辑开始执行。这里使用...
...对10个整数进行冒泡排序(要求排成升序c语言编写
include <stdio.h> void main(){ int i,j;float a[10],t;printf("请输入十个数字");for(i=0;i<10;i++){ scanf("%f",&a[i]);} for(j=0;j<10;j++){ for(i=0;i<10-1;i++){ if(a[i]>a[i+1]){ t=a[i];a[i]=a[i+1];a[i+1]=t;} } } for(i=0;i<...
C语言 随机输入十个数 能把它们从大到小排列出来的程序怎么写?_百度...
可以采用冒泡排序~include <stdio.h>#define elemType int \/*元素类型*\/#define ASC 0 \/*升序*\/#define DESC 1 \/*降序*\/#define LEN 100 \/*数组长度*\/\/*录入数组*\/void inputArr (elemType arr[], int len) {int i;for (i=0; i<len; i++)scanf ("%d",&arr[i]);putchar ('\\...
C语言:写一函数,用“冒泡法”对输入的10个字符按由小到大顺序排列_百度...
冒泡排序需要用到两层循环,第一层循环遍历数组中的元素,第二层则进行两两比较,如果顺序不对就要对其进行换位,直到排序完成:4、最后执行程序观察结果,按下crtl+F5弹出程序,随意输入10个数,按下回车键执行结果,此时就可以看到排序后的结果了。以上就是c语言冒泡排序程序的演示:...
输入10个数,用冒泡排序法按由小到大顺序排序并输出??c语言的
冒泡排序的程序代码如下:include<stdio.h> int main(){ int a[10]={0};int i=0,j=0,t=0;for(i=0;i<10;i++){scanf("%d",&a[i]);} for(i=0;i<10;i++){for(j=0;j<10-i;j++){ if(a[j]>a[j+1]){ t=a[j];a[j]=a[j+1];a[j+1]=t;}}} for(i=0;i...
在c语言编程中如何将1-10的数从小到大排列。
冒泡法:顾名思义,就是把小的数据向前排,也就是向上浮起,并因此进行排序。例:include "stdio.h" 包含头文件 void main() 主函数 { int a[10],t,i,j; 定义要用的数据和数祖 printf("input the ten number:\\n"); 显示输出 for(i=0;i<10;i++)scanf("%d",&a[i]); 利用循环...