#include <stdio.h main() 输入n个数给a[叮到an int a[11]i,j,k,x; printf("Input 10 numbers:\n"); for i=1 to n-1 for(i=1;i<11;i++) k=i scanf("%d"&a[i]); for j=i+1 to n printf("\n"); for(i=1;i<10;i++) 真 a[j]<a[k] {k=i; k=j for(j=i+l;j<=10;j++) 真 il=k if(a[j]<a[k])k=j; if (i!=k) a→ak灯 x-ali];a[i]-a[k];a[k]=x; 出a1]到an printf("The sorted numbers:\n"); for(i=1;i<11;i++) printf"%d ",ali]);
输入n 个数给a[1] 到 a[n] for i=1 to n-1 for j=i+1 to n 真 a[j]<a[k] 假 k=j 输出a[1] 到 a[n] k=i a[i]a[k] 真 i != k 假 #include <stdio.h> main() { int a[11],i,j,k,x; printf("Input 10 numbers:\n"); for(i=1;i<11;i++) scanf("%d",&a[i]); printf("\n"); for(i=1;i<10;i++) { k=i; for(j=i+1;j<=10;j++) if(a[j]<a[k]) k=j; if(i!=k) { x=a[i]; a[i]=a[k]; a[k]=x;} } printf("The sorted numbers:\n"); for(i=1;i<11;i++) printf("%d ",a[i]); }
排序 一、已排好序的数组,现输入一个数,按原来的排序插 入到数组中 11 13 15 17 19 m>a9] 25 for(i=9;i>=0;i-) a10]=m i试a>m时 i+1=a break a[i+1]=m
一、已排好序的数组,现输入一个数,按原来的排序插 入到数组中 排序 11 13 15 17 19 25 14 m >a[9] a[10]=m for(i=9;i>=0;i-) if(a[i]>m) a[i+1]=a[i] break a[i+1]=m
盛排序 二、早操排队问题 查 器 都 嘉 署 米
二、早操排队问题 木 兰 西 施 昭 君 貂 蝉 贵 妃 排序
排序(选择法) for(i-0:i<=n-2:i++) {k=i; 早操排队问题 for(j=i+1;j<=n-1;j++) if(alil<a[k) 娄 莫 k=j; 赵 ifkl=i)) {m=a[i];a[i1=a[k];ak]=m;}
早操排队问题 张 三 贾 六 赵 一 王 五 李 四 排序(选择法) for(i=0;i<=n-2;i++) {k= i; for(j=i+1;j<=n-1;j++) if(a[j]<a[k]) k=j; if(k!=i) { m=a[i];a[i]=a[k];a[k]=m;} }
用冒泡法对10个数排序 排序过程: (1)比较第一个数与第二个数,若为逆序a[0]>a[1]则交换 然后比较第二个数与第三个数:;依次类推,直至第n-1个数和 第个数比较为止一第一趟冒泡排序,结果最大的数被安 置在最后一个元素位置上 (2)对前-1个数进行第二趟冒泡排序,结果使次大的数被 安置在第n-1个元素位置 (3)重复上述过程,共经过-1趟冒泡排序后,排序结束
用冒泡法对10个数排序 排序过程: (1)比较第一个数与第二个数,若为逆序a[0]>a[1],则交换; 然后比较第二个数与第三个数;依次类推,直至第n-1个数和 第n个数比较为止——第一趟冒泡排序,结果最大的数被安 置在最后一个元素位置上 (2)对前n-1个数进行第二趟冒泡排序,结果使次大的数被 安置在第n-1个元素位置 (3)重复上述过程,共经过n-1趟冒泡排序后,排序结束