计算机二级《C语言》备考试题及答案
练习做多了自然会形成自己的做题方法和速度,以下是小编搜索整理的一份计算机二级《C语言》备考试题及答案,供参考练习,预祝考生们考出自己理想的成绩!
1). 对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为( )
A.9
B.10
C.45
D.90
正确答案:C
答案解析:线性表的长度为n,最坏情况下冒泡排序需要比较的次数为n(n -1)/2。
2). 以下叙述中错误的是( )
A.gets函数用于从终端读入字符串
B.getchar函数用于从磁盘文件读入字符
C.fputs函数用于把字符串输出到文件
D.fwrite函数用于以二进制形式输出数据到文件
正确答案:B
答案解析:本题考查的是输入输出函数的使用,gets和 getchar函数用于从标准输入设备终端读入字符串和字符,并非从磁盘文件读入,fputs用于把字符串输出到文件,fwrite用于以二进制形式输出数据到文件。
3). 设有说明int(*ptr)[M];其中的标识符ptr是( )。
A.M个指向整型变量的指针
B.指向M个整型变量的函数指针
C.一个指向具有M个整型元素的一维数组的指针
D.具有M个指针元素的一维指针数组,每个元素都只能指向整型变量
正确答案:C
答案解析:根据C语言的语法规则可知,int(*ptr)[M]中的标识符ptr是一个指向具有M个整型元素的一维数组指针。
4). 以下叙述中正确的是( )
A.结构体变量的地址不能作为实参传给函数
B.结构体数组名不能作为实参传给函数
C.即使是同类型的结构体变量,也不能进行整体赋值
D.结构体中可以含有指向本结构体的指针成员
正确答案:D
答案解析:一个结构体变量包含若干成员,这些成员可以是数值类型、字符类型、数组类型,也可以是指针类型,甚至可以是正在定义的结构体类型指针。用结构体变量作实参时,采取的是″值传递″的方式,将结构体变量所占的内存单元的内容全部顺序传递给形参。形参也必须是同类型的`结构体变量。结构体数组作为参数时,采取了″地址传递″的方式,形参须为同类型的结构指针或者形参结构数组。
5). 以下选项中与 if(a==1)a=b; else a++; 语句功能不同的switch语句是( )
A.switch(a==1) {case 0:a=b;break; case 1:a++; }
B.switch(A {case 1:a=b;break; default : a++; }
C.switch(A {default:a++;break; case 1:a=b; }
D.switch(a==1) {case 1:a=b;break; case 0:a++; }
正确答案:A
答案解析:if else语句的含义是,如果变量a的值等于1,则把变量b的值赋给变量a,否则,变量a的值加1。在本题的4个选项中,与其含义不同的是选项A,表示如果变量a的值等于1,则把变量a的值加1,否则,把变量b的值赋给变量a。
6). 设树T的深度为4,其中度为1,2,3,4的结点个数分别为4,2,1,1。则T中的叶子结点数为( )
A.8
B.7
C.6
D.5
正确答案:B
答案解析:深度为m二叉树其总结点数为2m -1=24-1=15。总结点数减去度为1,2,3,4的结点个数就是叶子结点数。15-4-2-1-1=7。
7). 以下选项中不合法的标识符是( )
A.FOR
B.&a
C.print
D._00
正确答案:B
答案解析:合法的标识符要满足组成字符为a~z以及A~Z,数字字符0到9和下划线,其中数字不开头,不能是关键字。选项B中,&不属于组成字符,是错误的。
8). 下列描述中正确的是( )
A.程序就是软件
B.软件开发不受计算机系统的限制
C.软件既是逻辑实体,又是物理实体
D.软件是程序、数据与相关文档的集合
正确答案:D
答案解析:计算机软件与硬件是计算机系统中相互依存的两部分。计算机软件是包括程序、数据及相关文档的完整集合。软件由两部分组成:一部分是机器可执行的程序和数据;二是机器不可执行的,与软件开发、运行、维护、使用等有关的文档。软件具有以下六个特点:①软件是一种逻辑实体,而不是物理实体,具有抽象性。②软件的生产与硬件不同,它没有明显的制作过程。③软件在运行、使用期间不存在磨损、老化问题。④软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移值的问题。⑤软件复杂性高,成本昂贵。⑥软件的开发涉及诸多社会因素。
9). 变量a中的数据用二进制表示的形式是01011101,变量b中的数据用二进制表示的形式是11110000。若要求将a的高4位取反,低4位不变,所要执行的运算是
A.a^b
B.a|b
C.a&b
D.a<<4
正确答案:A
答案解析:本题考查的是位运算的知识,对于任何二进制数,和1进行异或运算会让其取反,而和0进行异或运算不会产生任何变化,故本题选A。
10). 下列关于栈叙述正确的是( )
A.栈顶元素最先能被删除
B.栈顶元素最后才能被删除
C.栈底元素永远不能被删除
D.以上三种说法都不对
正确答案:A
答案解析:栈是先进后出的线性表,栈顶的元素最先被删除,栈底的元素最后被删除。
【计算机二级《C语言》备考试题及答案】相关文章:
计算机二级C语言试题及答案10-06
计算机二级《C语言》专项试题及答案09-28
计算机二级C语言测试题及答案解析09-30
计算机二级C语言预测试题及答案09-30
计算机二级C语言程序设计试题及答案09-18
计算机二级考试C语言程序设计试题及答案09-21
计算机二级C语言的测试题及答案解析08-29
计算机二级c语言试题09-29
计算机二级考试C++备考练习试题及答案09-22