15、以下能在C语言中正确定义二维数组的是。 (A) int N=100; (B) #define N 100 int

M=200; #define M 200int num[N][M]; int num[N][M];
(C) int num[ ][] ; (D) int num[1..100][1..200]

第1个回答  2011-08-25
首先你可以用排除法:
A: N=100,这就是个赋值语句,排除
C:数组在定义时要么指定其长度,要么不指定长度(或指定长度)但必须初始化它。而C答案既没有 初始化它,也没有指定长度,所以是错的。数组定义时系统要为数组开辟空间,长度不确定时系统会出错。
D:这个不用我说了吧....
在来看B答案:
#define N 100
int M=200;
#define M 200int num[N][M]
int num[N][M]
第四句:int num【N】【M】,N和M的值是确定的,所以数组num得到了定义。
第2个回答  2011-08-25
C是正确.
一维数组定义:
类型说明符节 数组名[常量表达式]
常量表达式中可以包括常量和符号常量,但不能包括变量,注意符号常量与变量不能混淆.
用一个标识符代表一个常量的符号,称为符号常量,像B选项中int n=5是对整形 n赋予5,并不是符号常量
符号常量例子:
#define PRICE 30 /*PRICE就是符号常量*/
第3个回答  2011-08-25
B,这个简单呀,你要是不懂,最好的方法就是选最长的。c语言要求数组角标必须从零开始(d不对),而且编译的时候确定每一维的大小(c不对)。
第4个回答  2011-08-26
选B~~! 说C的扯淡啊
相似回答