1[单选题]以下叙述中正确的是( )
A.用户自己定义的函数只能调用库函数
B.实用的C语言源程序总是由一个或多个函数组成
C.不同函数的形式参数不能使用相同名称的标识符
D.在C语言的函数内部,可以定义局部嵌套函数
参考答案:B
参考解析:A选项中,”用户自己定义的函数只能调用库函数”描述是不正确的,也可以调用自定义函数;C选项中,对于不同函数的形式参数可以使用相同名称的标识符;D选项中,关于函数的定义不可以嵌套,但函数的调用可以嵌套。因此B选项正确。
2[单选题]以下关于C语言数据类型使用的叙述中错误的是( )。
A.若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型
B.若要保存带有多位小数的数据,可使用双精度类型
C.若只处理“真”和“假”两种逻辑值,应使用逻辑类型
D.整数类型表示的自然数是准确无误差的
参考答案:C
参考解析:C语言中没有逻辑类型,所以c错误。若要保存带有多位小数的数据,可以用单精度类型也可以用双精度类型。处理包含不同类型的相关数据可以定义为结构体类型。整数类型可以无误差的表示自然数。
3[单选题]下面选项中关于编译预处理的叙述正确的是
A.预处理命令行必须使用分号结尾
B.凡是以#号开头的行,都被称为编译预处理命令行
C.预处理命令行不能出现在程序的最后一行
D.预处理命令行的作用域是到最近的函数结束处
参考答案:B
参考解析:本题考查预编译的预编译处理命令行,预处理命令行不能以分号结尾,所以A选项错误,预处理命令行可以出现在程序的最后一行,预处理命令行作用域是整个文件。
4[单选题]设--X树共有150个结点,其中度为l的结点有l0个,则该---X树中的叶子结点数为( )。
A.71B.70C.69D.不可能有这样的二叉树
参考答案:D
参考解析:在树结构中,一个结点所拥有的后件个数称为该结点的度,所有结点中的度称为树的度。对任何一棵二叉树,度为0的结点总是比度为2的结点多一个。如果有一棵二叉树,结点总数为l50,假设度为0的结点个数为n,则有n+10+n一1=150,n=70.5,由于结点个数必须是整数,所以不可能有题目中这样的二叉树。故选择D选项。
5[单选题]以下选项中,能用作用户标识符的是( )。
A.-0-B.8-;8C.voidD.unsigned
参考答案:A
参考解析:C语言中标识符由字母、下划线、数字组成,且开头必须是字母或下划线。另外,关键字不能作为标识符。8中以数字8开头,所以错误。c与D中用的是关键字void与unsigned,所以错误。
6[单选题]以下叙述正确的是( )。
A.表达式sizeof(FILE*)==sizeof(int*)的值为真
B.文件指针的值是一个整数,它的值一定小于文件字节数
C.文件指针的值是所指文件的当前读取位置
D.使用fscanf函数可以向任意类型的文件中写入任意数量的字符
参考答案:A
参考解析:
slzeof(FILE})=4,因为file·为指针,指针的大小4,sizeof(int·)=4,理由同前面。文件指针的值是地址,是一个16进制的数,它的值不一定小于文件字节数,因此选项8错误。文件指针是所指文件的当前读取位置,而不是文件指针的值因此选项C错误。mgscanf(FILE-stream,constchar}format,[argument…]fmanf函数可以向任意类型的文件,写入任意数量不能超过系统的缓冲区,写文件先写入缓冲区,最后一起写入文件,因此选项D错误。答案为A选项。