a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 93|回复: 0

[C语言] 2012年计算机二级C语言数组考点小结

[复制链接]
发表于 2012-7-31 21:48:08 | 显示全部楼层 |阅读模式
9.1 一维数组的定义、初始化和引用 5 z8 M" J6 m  @2 b% e
  1.一维数组的定义方式为: 4 G2 i0 a" M# o4 v. F8 K9 s
  类型说明符 数组名[常量表达式]
) L1 }; T6 `9 w5 j7 O  c! f  (1)数组名的命名方法与变量名相同,遵循标识符命名规则;
& y* X  e" F; l% p, c3 h  (2)数组是用方括号括起来的常量表达式,不能用圆括号;
) L& \$ j, l4 t  (3)常量表达式表示数组元素的个数,即数组的长度,数组的下标从0开始,下标的最大值为:常量表达式-1; ( _" D# Z3 h" F# F0 c' i! T" u: w
  (4)常量表达式中可以包括常量和符号常量,不能包括变量。 2 R' f3 |# z8 S7 v7 q1 A; u  L
  可以用赋值语句或输入语句使数组中的元素得到值,但要占用运行时间。可以使数组在运行之前初始化,即在编译阶段使之得到初值。
( t: q; X6 I2 l# c9 F: D  2.对数组初始化可以用以下方法实现:
3 ^. R) \+ s8 q2 ~  }$ x. q  (1)在定义数组时对数组元素赋以初值。如: ' x6 O. `" v$ G9 y
  static int a[10]={0,1,2,3,4,5,6,7,8,9};
+ e1 |, k  ^/ D7 O. g4 u* W; s  经过上面的定义和初始化后,a[0]=0,a[1]=1,…,a[9]=9。 , B$ H2 h2 W) q. f
  (2)初始化时可以只对一部分元素赋初值。例如: : [! u+ j; t% @" O
  static int a[10]={0,1,2,3,4};
4 [  F% Y/ U, B+ r# D, a  k  定义的数组有10个元素,但只对其中前5个元素赋了初值,后5个元素初值为0。
( Q0 R) W" ]' L, J( X  (3)如果想使一个数组的元素值全部为0,可以用下面的方法:
, {* G5 `7 a3 x! {  static int a[10]={0,0,0,0,0,0,0,0,0,0}; ( v& B0 o. Q% ?5 V' Z' _
  不能用:
: j) `, B. h- a7 k3 k  static int a[10]={0*10};
+ N- G$ Z  K' _* X  如果对static型数组不赋初值,系统会对定义的所有数组元素自动赋以0值。 # o3 O8 D& \# }) i2 @* G; z
  (4)在对全部数组元素赋初值时,可以不指定数组长度。
( H, D& K8 o: c# h' |' B  A) ]  3.一维数组的引用方法是:
, p8 n5 \1 R6 E' Q' T, f/ B; X  C语言规定不能一次引用整个数组,引用时只能逐个元素引用,数组元素的表示形式为: % o% \; R! ~+ L' p# P4 e- X
  数组名[下标]
+ i- v2 z5 L6 N& V) t$ R2 }  下标可以是整型常量或整型表达式。如:
( n! j+ W/ y1 @( I3 {  a[0]=a[5]+a[7]-a[2*3];
7 M" k$ _. q4 v3 ~% s  9.2 二维数组的定义、初始化和引用
: \) o8 B. T# r+ X0 Q  1.二维数组定义的一般形式为
6 O7 H0 b4 T: g% O. F5 O  类型说明符 数组名[常量表达式][常量表达式] " H9 t- H* o8 t  u
  C语言采用上述定义方法,我们可以把二维数组看做是一种特殊的一维数组:它的元素又是一维数组。在C语言中,二维数组中元素的排列顺序是:先按行存放,再按列存放,即在内存中先顺序存放第一行的元素,再存放第二行的元素。 1 A# Q6 T0 H5 X
  2.二维数组的初始化:二维数组可以用下面的方法初始化: 0 m( k# B& k- d* H
  (1)分行给二维数组赋初值。如:
5 g; }; [# F8 w- G! x4 w  static int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}}; 9 g3 [$ {, l: `
  以上赋值把第一个花括号内的数据赋给第一行元素,第二个花括号内数据赋给第二元素…,即按行赋值。
  A0 m2 k3 _. Z. c  (2)可以将所有的数据写在一个花括号内,按数组排列的顺序对各元素赋值。
% K/ a' ~2 ], n! [: o: N& o  (3)可以对数组的部分元素赋初值。如: 1 e. `6 M! w, E! w
  static int a[3][4]={{1},{5},{9}};
; V8 m; q: r  c  以上赋值的结果是:数组第一列的元素分别赋了初值1,5,9,其余元素的值都是0。   b: F) U$ y6 a$ c* Z) {, d
  (4)如果对二维数组的全部元素都赋初值,则定义数组时对第一维的长度可以不指定,但第二维的长度不能省。   P) J+ l9 G& ?, Z* C& I- I
  3.二维数组的引用:二维数组的元素可以表示为:   M0 `3 O4 y% b- Z6 l7 V" r3 W
  数组[下标][下标]   在引用二维数组时,必须是单个元素,不能是整个数组名。下标可以是一个表达式,但不能是变量。如果下标是一个表达式,注意表达式的值不能超出数组定义的上、下限。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-6-8 12:27 , Processed in 0.592142 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表