第一题、单项选择题(每题1分,5道题共5分)
1、以下数组定义中不正确的是:
A、int a[2][3]; B、int b[][3]={0,1,2,3};
C、int c[3][3]={0}; D、int d[3][]={{1,2},{1,2,3},{1,2,3,4}};
2、C语言中规定,函数的返回值的类型是由:
A、调用该函数时系统临时决定的 B、return语句中的表达式类型所决定
C、调用该函数时的主调用函数类型所决定 D、在定义该函数时所指定的函数类型所决定
3、一个C程序的执行是从( )。
A、main()函数开始,在main()函数中结束 B、第一个函数开始,直到最后一个函数结束
C、第一个语句开始,直到最后一个语句结束 D、main()函数开始,直到最后一个函数结束
4、若有int a[3][4]; ,则数组a的第10 个元素是( )。
A、a[2][1] B、a[1][0]
C、a[2][0] D、a[2][2]
5、若有int a[][3]={1,2,3,4,5,6,7,8,9,10,11,12};,则数组a的第1维的长度为( )。
A、2 B、3
C、4 D、5
第二题、多项选择题(每题2分,5道题共10分)
1、根据定义: struct person{char name[9];int age;}; struct person c[10]={"John",17,"Paul",19,"Mary",18,"Adam",16}; 能打印出字母M的语句是:
A、printf("%s",c[0].name);
B、printf("%s",c[1].name[0]);
C、printf("%s",c[2].name[1]);
D、printf("%s",c[3].name[2]);
2、若形参是简单变量形式,则对应的实参可以是:
A、常量
B、数组名
C、简单变量
D、数组元素
3、下列关于对二维数组a进行初始化的操作中,正确的写法是( )。
A、int a[][3]={3,2,1,1,2,3};
B、int a[][]={{3,2,1},{1,2,3}};
C、int a[][3]={{3,2,1},{1,2,3}};
D、int a[2][3]={{3,2,1},{1,2,3}};
4、如果想使下列数组a中5个元素的值全部为0,可以写成( )。
A、int a[5]={0:5};
B、int a[5]={0};
C、int a[5]={5:0};
D、int a[5]={0,0,0,0,0};
E、int a[5]=0;
5、在定义int a[2][3];之后,对数组a的引用错误的是( )。
A、a(1,2)
B、a[1,3]
C、a[2][0]
D、a[1>2][!1]
第三题、判断题(每题1分,5道题共5分)
1、数组名的命名规则和变量名的命名规则相同
正确 错误
2、函数中的形参和调用时的实参都是变量时,传递方式为值传递。
正确 错误
3、若有func((v1,v2),(v3,v4,v5),v6)调用,说明函数func有6个形参。
正确 错误
4、在定义数组时的常量表达式中可以包含变量。
正确 错误
5、对数组元素赋予的初值可以依次放在一对圆括号内。
正确 错误