下列说法中错误的是
A:一个数组只允许存储同种类型的变量
B:如果在对数组进行初始化时,给定的数据元素个数比数组元素个数少时,多余的数组元素会被自动初始化为最后一个给定元素的值 C:数组的名称其实是数组在内存中的首地址
D:当数组名作为参数被传递给某个函数时,原数组中的元素的值可能被修改
答案:B
每个选项都解释一下
1. C程序中的关键字必须小写,其他标识符不区分大小写
对
2. 在C语言中,5种基本数据类型的存储空间长度的排列顺序为:char<int<long int <=float<double
对
3. 关于if语句中,条件表达式只能是关系表达式或逻辑表达式
错
4. 在程序运行过程中,系统分配给实参和形参的内存单元是相同的
错
5. 所有定义在主函数之前的函数无需进行声明。
对
6. C语言编译系统为所定义的数组变量在内存中是分配一片连续的存储单元
对
7. 当数组长度与初值个数不相同时,在定义数组时必须指定数组的长度
好像可以不吧
8. 如果一个静态(static)或外部(extern)数组不进行初始化,则对数值型数组隐含初值为0
对
9. C语言中字符型、整型、实型都能用八进制表示
错,实型不可以
10. 设x、t均为int型变量,则执行语句"x=10;t=x&&x>10;"后,t的值为0
错,t=10
11. 在C语言中,变量必需先定义后使用
对
12. 在C程序中,%是只能用于整数运算的运算符
对
13. 在C语言中,逻辑“真”等价于不等于0的数
对
14. 如果函数值的类型与返回值类型不一致,以函数值类型为准
对
15. 在C程序中,每行中只能写一条语句
错,可以有多条
16. int a[9]; 则a数组的下标范围是1-9
错,0-8
17. 在定义二维数组时,可以将该数组的两个维数全部省略
错,第二维数不可省略
18. 若有定义:double x[3][5];则x数组中行下标的下限为0,列小标的上限为4
对
19. 语句"int *pi,pj"定义了两个指针变量
错,只有pi为指针
20. 关于if语句中,条件表达式的括号不可以省略
对
对
2. 在C语言中,5种基本数据类型的存储空间长度的排列顺序为:char<int<long int <=float<double
对
3. 关于if语句中,条件表达式只能是关系表达式或逻辑表达式
错
4. 在程序运行过程中,系统分配给实参和形参的内存单元是相同的
错
5. 所有定义在主函数之前的函数无需进行声明。
对
6. C语言编译系统为所定义的数组变量在内存中是分配一片连续的存储单元
对
7. 当数组长度与初值个数不相同时,在定义数组时必须指定数组的长度
好像可以不吧
8. 如果一个静态(static)或外部(extern)数组不进行初始化,则对数值型数组隐含初值为0
对
9. C语言中字符型、整型、实型都能用八进制表示
错,实型不可以
10. 设x、t均为int型变量,则执行语句"x=10;t=x&&x>10;"后,t的值为0
错,t=10
11. 在C语言中,变量必需先定义后使用
对
12. 在C程序中,%是只能用于整数运算的运算符
对
13. 在C语言中,逻辑“真”等价于不等于0的数
对
14. 如果函数值的类型与返回值类型不一致,以函数值类型为准
对
15. 在C程序中,每行中只能写一条语句
错,可以有多条
16. int a[9]; 则a数组的下标范围是1-9
错,0-8
17. 在定义二维数组时,可以将该数组的两个维数全部省略
错,第二维数不可省略
18. 若有定义:double x[3][5];则x数组中行下标的下限为0,列小标的上限为4
对
19. 语句"int *pi,pj"定义了两个指针变量
错,只有pi为指针
20. 关于if语句中,条件表达式的括号不可以省略
对
温馨提示:答案为网友推荐,仅供参考
第1个回答 推荐于2018-02-12
B错是因为多余的是被初始化为零。AC没什么解释的,D的话,数组名传递进函数的话变成指针,这样就有源数据的地址,就可以读写了。另,const只是编译时的检查。本回答被提问者和网友采纳