实验七 二维数组 A& W& @/ C* z- H9 u7 p1 a' a3 y
【目的与要求】, y# T, m6 C) [3 y4 h& P4 u+ O
1.掌握二维数组的定义、赋值和输入输出的方法;
4 J2 r3 |7 c; r7 U2 r 2.掌握字符数组的使用;
' ^2 e: Q4 |8 Y+ i& x y% y 3.掌握与数组有关的算法(例如排序算法)。5 L j3 Y+ i2 c' V( O" S
【上机内容】, l; M, ]7 `) K
【一般示例】4 h4 K" x& P7 r4 Q- R
【例1】有一个3×4的矩阵,要求输出其中值最大的元素的值,以及它的行号和列号。
+ w* x( A; Y/ Y #define M 3, `0 E- U3 x' X8 f0 X$ d
#define N 4' n, P- y8 a9 D! F& s6 `
main( )% T$ @$ A3 U p* g6 d; J; X
{int max,i,j,r,c;) r Q7 t; `$ @; {( b5 ?% H
static int a[M][N]={{123,94,-10,218},{3,9,10,-83},{45,16,44,-99}};
4 M: ?7 D/ U) O, Y4 O max=a[0][0];
4 p4 T/ Z j% o3 n: B, L5 p for(i=0;i for(j=0;j if ( a[j]>max)4 t6 {( N4 U8 I% d+ V% K5 [
{max= a[j];7 o& C! M7 `/ z* I; P) l
r=i; K; f7 B7 O3 S3 a3 I; s& F
c=j;7 ^5 c( c, g) Q7 a6 u
}8 E8 o' E" k7 S8 `) w6 O" y( B9 P
printf(“max=%d , row =%d , colum=%d \n”,max , r, c);# L3 G! U d. j$ E
}" W9 @) b; f: ^8 h
【例2】打印以下图案:
5 |# o, T% ?; H7 g * * * * *
6 Y9 K2 }5 X* l0 a * * * * *
6 [) v! t4 Q! v * * * * *( X8 M; Z N& c, t
* * * * *7 L V7 q2 m4 J. k4 B/ w6 ]- ^
* * * * *
% C) v$ ]/ i! I6 D7 C# } main()8 z7 S1 q! z; m
{char a[5]={' * ' , ' * ' , ' * ' , ' * ' , ' * '};
8 m+ i6 e* B3 m int i,j,k;
$ P$ U) n3 J3 Y: L) H char space=' ';
6 w) r2 ~' L' _6 y+ |( e3 i8 f: h( h9 M* Y
for(i=0;i |