c++习题 下列一维数组定义正确的是( )。

A. x=6; int num[x]; B. const int x=6; float a[x];
C. const float x=6; int b[x]; D. int x=6; int c[x]; 解析一下每个选项,答案是B的。

答案是B,解析如下:
对于数组s[N]而言,N要求是一个整型数,所以排除C;对于A,D选项是一个错误,即C++中要求数组的大小是在编译前确定,所以要求N是一个const常量,或者字面值整数,所以B正确。
建议小伙伴参考《C++Primer》。
请采纳,谢谢。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-06-12
A。x没定义
B。x被const修饰,成为常量,其值不能被修改,则能通过编译
C。x是浮点型数据
D。x是个变量,变量能改变后面数组的大小,部分编译软件会报错
第2个回答  2014-06-12
定义数组时,必须指定数组的大小,指定大小时必须用int型常量。
A中x是变量,D相同
B和C中x都是常量,但C中x是float型,所以C错
选B
第3个回答  2014-06-12
A选项,x没有声明数值型,所以不知道x是整型还是浮点型,故错
C选项,一维数组内的下表x,必须是整型,不能为浮点型,故错
D选项,使用const在一定程度上可以提高程序的安全性和可靠性,所以最佳答案为B
相似回答