2016年河海大学计算机与信息学院935程序设计复试笔试仿真模拟题
● 摘要
一、选择题
1. 设有定义:
A. B. C.
正确的输入数据
D.
答:A
【解析】A 项中是起作用的,程序从键盘正确的读入前两个数据并且保存在指定的地址,读入第三个数据后,将其放入缓冲区,然后寻找应该存放的地址,因为没有找到,程序会发生错误而中断,注释错误。B 项由于scanf 只接收两个数据,所以变量x 得不到赋值,注释正确。C 项scanf 会按照float 类型读取输入的第二个数据并且保存为int 类型,由于两种类型的存储形式与所占内存单元均不同,b 得不到正确的赋值,注释正确。D 项在使用scanf 函数时,如果除了格式说明字符和附加格式字符外,还有其他字符,则在输入数据时要求按一一对应的位置原样输入这些字符,注释正确。
2. 有以下程序:
程序运行后的输出结果是( )。
A.-2
B.1.7
C.-3
D.2.0
答:A
B 、D 项错误,sub 【解析】( )函数输出(int )(a-b-1.3)将结果强制转化为整型;(a-b-1.3)
=-2.2,(int )(-2.2)=-2, sub (3.2, 4.1)=-2,C 项错误,A 项正确。
第 2 页,共 32 页 则以下选项中对语句所作的注释叙述错误的是( )。
多余的格式符完全不起作用 多佘的输入项不能获得输入数据 ; 格式串中允许加入格式符以外的字符串 输入项与格式符类型不匹配,变量b 和x 得不到
3. 以下叙述中正确的是( )。
A. 在对指针进行加、减算术运算时,数字1表示1个存储单元的长度
B. 如果p 是指针变量,则*p表示变量p 的地址值
C. 如果p 是指针变量,则&p是不合法的表达式
D. 如果p 是指针变量,则*p+1和*(p+1)的效果是一样的
答:A
,而是【解析】A 项正确,在对指针进行加、减运算时,数字“1”不再代表十进制整数“1”
指1个存储单元长度。B 项错误,
4. 有以下程序:
程序运行后的输出结果是( )。
A.10, 9
B.11, 10
C.010, 9
D.9, 10
答:D
【解析】整型常量有3种表示方法,分别是十进制数表示法、八进制数表示法和十六进制数表示法,八进制整常量以作为前缀。自増和自减运算符的两种用法:前置运算,运算符放在变量之前,规则是先使变量的值 增(或减)1,然后以变化后表达式的值参与其他运算;后置运算,运算符放在变量之后,规则是变量先参与其 他运算,然后再使变量的值増(或减)1
。
先自加后取值,输出9,
5. 以下叙述中错误的是( )。
A.gets 函数用于从终端读入字符串
B.getchar 函数用于从磁盘文件读入字符
C.fputs 函数用于把字符串输出到文件
D.fwrite 函数用于以二进制形式输出数据到文件
答:B
【解析】fgeto 函数从磁盘文件中读入字符,getchar 函数从终端或者键盘接收字符。
6. 有以下程序:
第 3 页,共 32 页 表示p 的值;C 项错误,表示变量p 的地址;D 项错误
,是先取p 的值,然后执行+1操作,是先对指针移动1个存储空间,然后取值。 先取值输出10, 再自减故D 选项正确。
程序运行后的输出结果是。
A.2
B.4
C.
D.8
答:D
a 的初始值为2, 程序中将a 左移2位的结果赋值给b , 即相当于十进制乘以4, 结果为【解析】
8。
7. 以下关于C 语言数据类型使用的叙述中错误的是( )。
A. 若只处理“真”和“假”两种逻辑值,应使用逻辑类型
B. 若要保存带有多位小数的数据,可使用双精度类型
C. 若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型
D. 整数类型表示的自然数是准确无误差的
答:A
【解析】A 项错误,C 语言中没有逻辑类型,在中才引入的;B 项正确,float 类型称为单精度类型,double 类型称为双精度类型,一般系统中,为float 类型的变量分配4个字节的存储单元,为double 类型的变量分配8 个字节的存储单元。C 项正确,struct 结构体,可以用来描述包含多种基本类型的复杂对象。
8. 有以下程序:
程序的运行结果是( )。
A.3,3
B.5,5
C.3,5
D.5,3
答:A
【解析】程序执行过程为:p 指针指向变量m ,调用函数,将m 地址传给指针s ,然后再让8指向变量k ,而P 指针所指并没有改变,输出为3,3。
第 4 页,共 32 页
相关内容
相关标签