2017年北京交通大学02106C程序设计复试实战预测五套卷
● 摘要
一、选择题
1. 阅读以下程序:
该程序在编译时产生错误,其出错原因是( )。
A. 定义语句出错,case 是关键字,不能用作用户自定义标识符
B. 定义语句出错,printF 不能用作用户自定义标识符
C. 定义语句无错,scanf 不能作为输入函数使用
D. 定义语句无错,printf 不能输出case 的值
【答案】A
【解析】在C 语言中,关键字又称保留字,它是系统预先定义的,具有特定含义的标识符,
故不允许用户重新定义。case 为C 语言中的关键字,因此用户不能再定义标识符为case 的变量。
2. 有以下函数:
该函数的功能是( )。
A. 计算字符串的长度
B. 计算字符串所占字节数
C. 将字符串逆序存放
D. 实现字符串的复制
【答案】D
while 循环语句中,【解析】实现功能是把q 指针指向地址单元的值赋给P 指针指向的地址中,
且每次完成赋值后,移动指针,进行下一次赋值,直到q 指针指向字符串结束符时,退出while 循环,功能为把q 指向的字符串复制到p 指向的地址中。
3. 以下叙述中正确的是( )。
A.C 语言中的文件是流式文件,因此只能顺序存取数据
B. 打开一个已存在的文件并进行了写操作后,原有文件中的全部数据必定被覆盖
C. 在一个程序中当对文件进行了写操作后,必须先关闭该文件然后再打开,才能读到第1个
数据
D. 当对文件的读(写)操作完成之后,必须将它关闭,否则可能导致数据丢失
【答案】D
【解析】D 项正确,C 语言中读写文件是通过文件缓冲区完成的,在完成了对文件的操作之后,应当关闭文件,否则文件缓冲区中的剩余数据可能丢失。A 项错误,C 程序中的输入、输出文件都以数据流的形式存储在介质上,用顺序存取和直接存取两种方式;B 项错误,可以以追加的方式写文件;C 项错误为读和写而打开文本文件,在读和写操作之间不必关闭文件。
4. 下面选项中关于位运算的叙述正确的是( )。
A. 位运算符都需要两个操作数
B. 位运算的对象只能是整型或字符型数据
C. 左移运算的结果总是原操作数据2倍
D. 右移fe 算时,尚位总是补0
【答案】B
【解析】B 项正确,C 语言中,位运算的对象只能是整型或字符型数据,不能是其他类型的数据。A 项错误,位运算符中取反操作符只需要一个操作符;C 项错误,左移时,若左端移出的部分不包含有效二进制数1, 则每左移一位,相当于移位对象乘以2, 如果端移出的部分包含有效二进制数1,结论不成立;D 项错误,右移运算时,对于无符号整数和正整数,高位补0; 对于负整数,高位补1。
5. 以下关于C 语言数据类型使用的叙述中错误的是( )。
A. 若要准确无误差地表示自然数,应使用整数类型。
B. 若要保存带有多位小数的数据,应使用双精度类型。
C. 若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型。
D. 若只处理“真”和“假”两种逻辑值,应使用逻辑类型。
【答案】D
【解析】C 语言的数据类型有:整型、字符型、实型、枚举类型、数组类型、结构体类型、共同体类型、指针类型和空类型。在C 语言中没有逻辑类型,而是借用整型、字符型、实型来描述逻辑数据。
6. 若有定义语句intb=2;, 则表达式
A.4
B.8
C.0
D.2
【答案】B
值为真即为1, 最后计算8/1的值,为8。
的值是( )。 【解析】b=2, 转为二进制即为0010,首先将b 左移两位,变成1000,即十进制的8, 3llb 的
7. 有以下程序段:
该程序段的功能是( )。
A. 输出a 、b 、c 中值相等的数值
B. 输出a 、b 、c 中的最大值
C. 输出a 、b 、c 中的最小值
D. 输出a 的原始值
【答案】D
【解析】程序段执行过程为:从键盘读入3个整型数据分别赋值给a , b ,c ,如果a
8. 以下叙述中错误的是( )。
A. 用户定义的函数中可以没有return 语句
B. 用户定义的函数中可以有多个return 语句,以便可以调用一次返回多个函数值
C. 用户定义的函数中若没有return 语句,则应当定义函数为void 类型
D. 函数的return 语句中可以没有表达式
【答案】B
【解析】用户定义的函数有两种:①void 函数,可以没有return 语句,如果有return 语句,也不可以返回任何表达式;②指定返回类型函数,至少有一个返回语句。在一个函数内,可以根据需要在多处出现return 语句,但无论有多少个return 语句,return 语句只会被执行一次然后退出函数,并且只能返回一个函数值。
二、设计题
9. 请根据以下各小题的要求设计C 应用程序(包括界面和代码)。
,它的功能是:统计各年龄段的人数。N 个年龄通过调用随机函数获请编写函数fun ( )
得,并放在主函数的 age 数组中;要求函数把0至9岁年龄段的人数放在
年龄段的人数放在中,把20至29岁年龄段的人数放在
100岁)以上年龄的人数放在
注意:部分源程序给出如下。
请勿改动主函数main ( )和其他函数中的任何内容,仅在函数fun 的花括号中填入所编写的若干语句。 试题程序如下:
P ,把10至19岁中,其余依次类推,把100岁(含中。结果在主函数中输出。
相关内容
相关标签