计算机二级C语言考前模拟试题及答案2016
(1)有以下程序:

程序运行后的输出结果是( )。
A.852
B.963
C.741
D.875421
(2)有以下程序:
程序运行后的输出结果是( )。
A.let=4
B.m=2
C.m=6
D.m=5
(3)有以下程序:
程序运行后的输出结果是( )。
A.6
B.3
C.8
D.12
(4)有以下程序:
则以下函数调用语句错误的是( )。
A.k:f(a,B.;
B.k:add(a,B.;
C.k=(*f)(a,B.;
D.k=*(a,B.;
(5)有以下程序
(6)下列定义数组的语句中,正确的是( )。
(7)有以下程序:
程序运行后的输出结果是( )。
A.0 3 0 4
B.2 0 5 0
C.3 3 4 4
D.3 0 4 0
(8)有以下程序:
程序运行后的输出结果是( )。
A.3
B.4
C.l
D.9
(9)以下语句中存在语法错误的是( )。
(10)以下不能将s所指字符串正确复制到t所指存储空间的是( )。
A.do{*t++=*8++;}while(*s);
B.for(i=0;t[i]=s[i];i++);
C.while(*t=*s){t++;s++;}
D.for(i=0,j=0;t[i++]=s[j++];);
(11)有以下程序:
程序执行后的输出结果是( )。
A.321,cba
B.abc,l23
C.123,abc
D.lbe,a23
(12)有以下函数:
函数的功能是( )。
A)将Y所指字符串赋给x所指存储空间
B.查找x和y所指字符串中是否有
C.统计x和y所指字符串中最前面连续相同的字符个数
D.统计x和Y所指字符串中相同的字符个数
(13)有以下程序:
程序运行后的输出结果是( )。
A)Lo
B.30
C.0
D.64
(14)在一个C源程序文件中所定义的全局变量,其作用域为( )。
A.由具体定义位置和extem说明来决定范围
B.所在程序的全部范围
C.所在函数的全部范围
D.所在文件的全部范围
(15)以下叙述中错误的是( )。
A.可以通过typedef增加新的类型
B.可以用typedef将已存在的类型用一个新的名字来代表
C.用typedef定义新的类型名后,原有类型名仍有效
D.用typedef可以为各种类型起别名,但不能为变量起别名
(16)有以下程序:
程序运行后的输出结果是( )。
A.10
B.11
C.20
D.21
(17)有以下程序:
程序运行后的输出结果是( )。
A.7.5
B.31.5
C.程序有错无输出结果
D.14.0
(18)有以下程序:
程序运行后的输出结果是( )。
A.3
B.4
C.5
D.6
(19)有以下程序:
程序运行后的输出结果是( )。
A.1.1.3
B.2,2,3
C.1,2,3
D.3,3,3
(20)以下叙述中正确的是( )。;
A.当对文件的读(写)操作完成之后,必须将它关闭,否则可能导致数据丢失
B.打开一个已存在的文件并进行了写操作后,原有文件中的全部数据必定被覆盖
C.在一个程序中当对文件进行了写操作后,必须先关闭该文件然后再打开,才能读到第1个数据
D.c语言中的文件是流式文件,因此只能顺序存取数据.
参考答案与解析
(1)A
【解析】第一次for循环,y的值为9,y%3的值为3,满足条件打印一一Y,即先减一后打印,所以打印8;第二次for循环,Y的值为7,y%3的值为1,不执行打印语句;第三次for循环,y的值为6,y%3的值为0,满足条件打印一一Y,即先减一后打印,所以打印5;第四次for循环,Y的值为4,不满足if条件,不执行打印语句;第五次for循环,Y的值为3,满足if条件,打印输出2;第六次for循环,Y的值为1,不满足条件,不执行打印语句。
(2)C
【解析】第一次外循环i的值为l,第一次内循环j的值为3,不满足条件执行in}=i}j即m的值为3;第二次j的值为2,不满足条件执行m·=i*j,即m的值为6;第三次j的值为1,不满足条件执行nl*=i*j,即m的值仍为6。第二次外循环i的值为2,j的值为3,满足条件,执行break语句,跳出循环。
(3)A
【解析】本题中第一次调用为fun(8,fun(5,6)),因为fun(5,6)返回值为5,所以第二次调用为fun(8,5)=6。所以选择A。
(4)D
【解析】D选项中+f(a,b)表示调用后返回一个指向整型数据的地址指针,即该函数的返回值为指针类型,所以不能将其赋值给整形变量k。
(5)A
【解析】选项8的正确写法应为P=&n;选项c的正确写法应为scanf(”%d”,P);选项D的正确写法应为printf(”%d\n”,* P)。
(6)A
【解析】数组说明的一般形式为:类型说明符
数组名[常量表达式]。B选项中N是变量,不能用变量定义数组长度。c选项中数组长度是非法的一串数字。定义数组时必须为其指明长度,D选项中数组长度为空,所以非法。
(7)D
【解析】第一次循环i为0,i%2为o,执行switch(a[O]%2)中的ca∞0语句后内容即a[0]++,a[0]的值变成3;第二次循环i的值为l,i%2为1,执行ca∞1:a[i]=0;所以a[1]的值变成0;第三次循环i的值为2,i%2为0,执行switch(a[2]%2)中的ca∞1语句后的内容a[2]一一,8[2]的值变成4;第四次循环i的值为3,i%2为1,执行casel:a[i]=0;所以a[3]的值变成0。
(8)B
【解析】每次内循环只循环一次就结束,第一次外循环时t=t+b[0][b[0][0]]=1+b][0]=1+0=第二次外循环时t=t+b[1][b[1][1]]=1+b[1][1]=1+1=2;第三次外循环时t=t+b[2][b[2][2]]=2+b[2][2]=2+2=4。
(9)A
【解析】数组定义后,不可以对数组整体赋值,s是二维数组,因SS[1]是一维字符数组,即字符串,字符串赋值可以使用strcpy(SS[1],”right”);这样的形式,而选项A中对二维数组中的第…l维(相当于一个一维数组)赋值,是不可以的。选项8和D是定义时对数组初始化,这是可以的。选项c中,将字符串在内存中的首地址赋给指针数组的一个元素,这是可以的。
(10)A
【解析】do{*t++=}S++;}while(*S);不能因为当*s=’、0。时,while(* s)跳出循环,这样字符串结束标志’、0’没有复制给}t,造成}t不完整。注意,*t++=*s++是先执行t=*s,然后才进行t=t+1,s=s+1。B、C、D都能将。\0’复制过去
(11)D
【解析】字符串是一个特殊的数组,所以按照数组的规则,sl应该指向的是数组的首地址,即“abc”的第一个字符的地址。s2指向的是“123”的第一个字符的地址。调用swap函数之后交换的是两个字符串的第一个字符‘a’和‘1’的内容,所以打印输出为D)。
(12)C
【解析】本题中由循环条件可知遇到‘\0’或x与y所指的字符的值不等中的一个条件时就结束,所以功能是统计x和Y所指字符串中最前面连续相同的字符个数。
(13)D
【解析】本题目中静态局部变量x,在静态存储区内分配存储单元。在程序整个运行期间都不释放。所以第一次循环s的值为2,第二次循环中,返回的x的值为4,所以s的值为8,第三次循环,返回的x的值为8,所以S的值为64.
(14)A
【解析】全局变量的作用域是从声明处到文件的结束。所以选择A)。
(15)A
【解析】关键字typedef的作用只是将C语言中的已有的数据类型作了置换,并不是增加新的类型,所以A错误。
(16)D
【解析】声明data是结构S数组。初始化data『0].a=10;data[0].b=100;data[1].a=20;data[1].b=200。主函数中P=data[1];即P.a=data[1].a;P.b=data[1].b;执行语句prinff(”%d\n”,++(P.a));打印输出时p.a先增l再打印。P.a=data[1].a=20,先增1等于21。
(17)C
【解析】宏定义不是C语句,末尾不需要有分号。所以语句printf(”%4.1f\n”,S(8+b));展开后为parintf(”%4.1f\n”,3.5;*a+b}a+b;);所以程序会出现语法错误。
(18)B
【解析】&按位与,如果两个相应的二进制位都为l,则该位的结果值为1,否则为0。l按位或,两个相应的二1进制位中只要有一个为l,该位的结果值为l。2的二进制为1 00000010,4的二进制为00000100,所以做或运算结果为1 00000110,该数与5即00000101做与操作结果为00000100,1即4。
(19)D
【解析】maUoc函数动态分配一个整型的内存空间,然后把函数返回的地址用(int{)强制类型转换为整型指针,再把它赋给a,b,c,即让指针变量a,b,c都指向刚申请的内存空间。所以只有最后一个赋值语句+C=3的值保留在了该空间内,因为a、b、C三个指针变量均指向该空间,所以打印该空间内的数值为3。
(20)A
【解析】B选项中打开一个已存在的文件并进行了写操作后,原有文件中的全部数据不一定被覆盖,也可以对源文件进行追加操作等。C选项中在一个程序中当对文件进行了写操作后,不用先关闭该文件然后再打开,才能读到第l个数据,可以用fseek()函数进行重新定位即可。D选项中,C语言中的文件可以进行随机读写。
【计算机二级C语言考前模拟试题及答案】相关文章:
C语言考前模拟试题03-25
计算机二级《C语言》模拟试题及答案07-29
计算机二级C语言模拟试题及答案07-04
计算机二级《C语言》考试模拟试题与答案07-21
C语言模拟试题及答案06-17
C语言模拟试题及答案03-26