2016年浙江工商大学信息与通信工程C程序设计复试笔试仿真模拟题
● 摘要
一、选择题
1. 以下叙述中正确的是( )。
A. 在对指针进行加、减算术运算时,数字1表示1个存储单元的长度 B. 如果p 是指针变量,则*p表示变量p 的地址值 C. 如果p 是指针变量,则&p是不合法的表达式
D. 如果p 是指针变量,则*p+1和*(p+1)的效果是一样的 答:A
,而是【解析】A 项正确,在对指针进行加、减运算时,数字“1”不再代表十进制整数“1”指1个存储单元长度。B 项错误,
表示p 的值;C 项错误,
表示变量p 的地址;D 项错误
,
是先取p 的值,然后执行+1操作,
2. 以下选项中叙述正确的是( )
A.C 程序中的语句要经过编译才能转换成二进制机器指令 B. 算法需要包含所有三种基本结构 C. 有些算法不能用三种基本结构来表达 D. 简单算法的操作步骤不能超过20步 答:A
【解析】编译就是把高级语言变成计算机可以识别的二进制语言,不经过编译的源程序是不能运行的,A 选项正确。算法不一定要包含所有三种基本结构,也可以只包含一种或两种,B 选项错误。结构化程序主要由3种 基本控制结构组成,循环结构、选择结构、顺序结构,它们组成的算法结构可以解决任何复杂的问题,C 项错误。算法的复杂程序不是由操作步骤多少决定的,而是按时间复杂度与空间复杂度来衡量,D 选项错误。
3. 以下选项中,当x 为大于1的奇数时,值为0的表达式是( )。
A.x%2==l
B.x/2
D.x%2==0 答:D
【解析】x 为大于1的奇数,x%2的值为1,x%2==0为假。
是先对指针移动1个存储空间,然后取值。
4. 若各选项中所用变量已正确定义,函数fun 中通过return 语句返回一个函数值,以下选项中错误的程序是( )。
答:B
【解析】当在所有函数的外部、被调用之前说明函数时,在对函数进行说明的语句后面所有位置上都可以对该函数进行调用。函数说明也可以放在调用函数内的说明部分,如在main 函数内 部进行声明,则只能在main 函数内部才能识别该函数。B 项错误,main 函数不能识别fun 函数。
5. 以下选项中,能用作数据常量的是( )。
答:D
【解析】A 项错误,十六进制数用数学0和字符x (或大写字母X )开头;B 项错误,八进制整数常量以数字0开始,有效数字为0〜7; C项错误,C 语言中实型常量有两种表示:小数形式和指数形式。指数形式中,字母e (或E )之前必须要有数字,且后面的指数必须为整数。
6. 若有以下程序段
不能正确引用字符串的选项是( )。
A. B. C. D. 答:D
【解析】strp 是char *类型、长度为4的数组,4个指针分别指向字符串数组str 中的4个字符串。D 项错误,step 是char*的数组,不能引用字符串。A 项正确,引用strp 数组中第一个指针指向的内容,gpaa”; B 项正确,str 是字符串数组,引用数组中的”aa”; C 项正确,于
访问strp 中第四个指针指向的内容,即 ”d”。
等价
7. 已知大写字母A 的ASCII 码是65, 小写字母a 的ASCII 码是97。以下不能将变量c 中的大写字母转换为对应小写字母的语句是( )。
B.c=c+32
答:A
【解析】A 项,模26运算后得到0~25之间的数,再与V 相减结果是负数。B 项,ASCII 码表中,同一字母的小写码比大写码数值上大32;C 项,于C 项。
8. 有如下程序:
程序运行后的输出结果是( )。 A.9, 1 B.4, 0 C.4, 3 D.9, 3 答:A
【解析】程序执行完成后,变量a 的值不变,始终为9, a 转化成二进制数后逻辑即右移三位得到值为1,1再对4求余得到余数1赋给b 值。
9. 若要求从键盘读入含有空格字符的字符串,应使用函数( )。
A.gets ( ) B.getc ( ) C.getchar ( ) D.scanf ( ) 答:A
,直到读入一个换行符为【解析】A 项,gets 函数用来从终端键盘读入字符串(包括空格符)
止。B 项错误,C 语言标准库中没有getc 函数;C 项,getchar 函数是从键盘读入单个字符,空格、回车符都将作为字符读入;D 项,scanf 函数用入数据的分隔符而不能被读入。
10.有以下程序
D 项,取值在0~26, 等价
格式符输入字符串时,空格和回车符都作为输