#include <stdio.h> main( 输入n个数给a]到a]|{ma[1jkx for i=l to n-1 printf("Input 10 numbers: n") for(i=1;i<11i计++) ki scanf("%od", &aiD) for i=i+l to n printf("n for(i=1;i<10;i++) 真a]<ak i k for(=i+1j<=105j++) 真 i=k if(al]akl k-j al][k if(il=k) (]; al=ak]; a[k]=x;) 输出a[到a[n printf("The sorted numbers: n") for(i=1;i<11;i++) printf("%d,aiD;
输入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]); }
c[OJ[OJ[0] §72二维数组的定义和引用 cIoJ1OJ2 ★二维数组的定义 薪个数=行数ooB 心定义方式 c[OIlI 数据类型数组名[常量表达式][常 c c0][1][2 今数组 例inta[3][4] coJ2 float b[2]5] intc[2][3]4]; cO1212 int a3, 4 c0J23 cl1lOJOT int a3[2 apoj cccc aO1[1 clI cl[12 aoo aO[ a c[[13 a[1lo a[ a[2][0 c[12J10J c[1][2 a[2][0]a[2 c[l[2[2 c[1][2[3
§7.2 二维数组的定义和引用 二维数组的定义 ❖定义方式: 数据类型 数组名[常量表达式][常量表达式]; ❖数组元素的存放顺序 ⚫原因:内存是一维的 ⚫二维数组:按行序优先 例 int a[3][4]; float b[2][5]; int c[2][3][4]; int a[3,4]; () 行数元素个数=行数列数*列数 int a[3][2] a[0][1] a[1][0] a[1][1] a[2][0] a[2][1] 0 1 4 5 2 3 a[0][0] a[0][0] a[0][1] a[1][0] a[1][1] a[2][0] a[2][1] int c[2][3][4] 0 1 2 3 4 5 6 7………... 20 21 22 23 c[0][0][0] c[0][0][1] c[0][0][2] c[0][0][3] c[0][1][0] c[0][1][1] c[0][1][2] c[0][1][3] c[0][2][0] c[0][2][1] c[0][2][2] c[0][2][3] c[1][0][0] c[1][0][1] c[1][0][2] c[1][0][3] c[1][1][0] c[1][1][1] c[1][1][2] c[1][1][3] c[1][2][0] c[1][2][1] c[1][2][2] c[1][2][3]