513393222812321 1113393222852321 ②131393222852321 ③135932228132321 4135832229132321 ⑤135892232132321 6135891332222321 ⑦135891321222332 ⑧8135891321222332 ⑨135891321222332
5 13 3 9 32 22 8 1 23 21 ① 1 13 3 9 32 22 8 5 23 21 ② 1 3 13 9 32 22 8 5 23 21 ③ 1 3 5 9 32 22 8 13 23 21 ④ 1 3 5 8 32 22 9 13 23 21 ⑤ 1 3 5 8 9 22 32 13 23 21 ⑥ 1 3 5 8 9 13 32 22 23 21 ⑦ 1 3 5 8 9 13 21 22 23 32 ⑧ 1 3 5 8 9 13 21 22 23 32 ⑨ 1 3 5 8 9 13 21 22 23 32
程序如下: include <stdio h> maino int i,j, t, a[ 11 for(=1;11+-) scanf(“%d,&a[j); for(=1;<=9;i+) or(j=i+1j<=10j++) if(au>alD 内循环:在外循环 {t=a[;a[=ad];a[]=t; (10内选>控制选择 择最小数 的次数 for(i=1; i<11; i++)printf( %6d, a[:
程序如下: #include <stdio.h> main() {int i,j,t,a[11]; for(i=1;i<11;i++)scanf(“%d”,&a[i]); for(i=1;i<=9;i++) for(j=i+1;j<=10;j++) if(a[i]>a[j]) {t=a[i];a[i]=a[j];a[j]=t; } for(i=1;i<11;i++)printf(“%6d”,a[i]); } 内循环:在 (i,10)内选 择最小数 外循环: 控制选择 的次数
分析: 从程序可知: 1、程序使用两重循环来实现排序。 2、其中,外循环控制排序趟数。若数组有N个元素,则共 进行N-1趟排序。第一趟,0;第二趟,l1, 3、其中,内循环完成在[,9的区间内选择最小数。比较 次数随趟数增大而减少 4、在每一趟选择中,当后面元素较小时,马上进行交换。 而这种交换是不必要的。事实上,只要记住较小元素的 位置,即下标,在内循结束后做一次交换即可,这样可 大大节省程序运行时间。 改进程序如下:
分析: 从程序可知: 1、程序使用两重循环来实现排序。 2、其中,外循环控制排序趟数。若数组有N个元素,则共 进行N-1趟排序。第一趟,I=0;第二趟,I=1,··· 3、其中,内循环完成在[I,9]的区间内选择最小数。比较 次数随趟数增大而减少。 4、在每一趟选择中,当后面元素较小时,马上进行交换。 而这种交换是不必要的。事实上,只要记住较小元素的 位置,即下标,在内循结束后做一次交换即可,这样可 大大节省程序运行时间。 改进程序如下:
include <stdio h> maino Rint i,j, k, a[10]; for(i=0; i<10; i ++)scanf( %d, &a) for(=0;i<9;i++) kk= forj=计+1j<10j++) 外循环 if(ak>al)<于;内循环 if(k =it=a[l; a[j]=ak]; a[k]=t; 1 for(=0i!10;++) printf((%6d”,a[);
#include <stdio.h> main() {int i,j,k,a[10]; for(i=0;i<10;i++)scanf(“%d”,&a[i]); for(i=0;i<9;i++) {k=i; for(j=i+1;j<10;j++) if(a[k]>a[j])k=j; if(k!=i){t=a[i];a[i]=a[k];a[k]=t;} } for(i=0;i<10;i++)printf(“%6d”,a[i]); } 内循环 外循环
72二维数组 1、二维数组的定义和引用 定义 类型标识符数组名[行数][列数]; 二维数组可看作一个二维表格,由行、列组成 例1:inta2][3]; 定义了一个2×3的数组a,即数组为2行3列,可存放6个 整型数据。 例2: float b[5][3] 定义了一个5×3的数组b,即数组为5行3列,可存放15个 实型数据
7.2 二 维 数 组 1、二维数组的定义和引用 定义: 类型标识符 数组名[行数][列数]; 二维数组可看作一个二维表格,由行、列组成。 例1:int a[2][3]; 定义了一个23的数组a,即数组为2行3列,可存放6个 整型数据。 例2:float b[5][3]; 定义了一个53的数组b,即数组为5行3列,可存放15个 实型数据