荟萃馆

位置:首页 > 计算机 > C语言

C语言考试模拟测试题

C语言1.81W

C语言的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统开发。下面是小编为大家搜索整理的C语言专项训练题,希望能给大家带来帮助!更多精彩内容请及时关注我们应届毕业生考试 网!

C语言考试模拟测试题

1). 对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为( )

A.9

B.10

C.45

D.90

正确答案:C

答案解析:线性表的长度为n,最坏情况下冒泡排序需要比较的次数为n(n -1)/2。

2). 以下叙述中错误的是( )

函数用于从终端读入字符串

har函数用于从磁盘文件读入字符

s函数用于把字符串输出到文件

te函数用于以二进制形式输出数据到文件

正确答案: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语句是( )

ch(a==1) {case 0:a=b;break; case 1:a++; }

ch(A {case 1:a=b;break; default : a++; }

ch(A {default:a++;break; case 1:a=b; }

ch(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。