2017年宁波大学计算机软件基础(C程序设计+数据结构)之C程序设计复试仿真模拟三套题
● 摘要
一、选择题
1. 以下选项中,合法的数值型常量是( )。
A.3.1415 B. “A ” C.092 D.OxDH 【答案】A
【解析】数值型常量包括整型常量和实型常量。整型常量有三种:①十进制常量,用0〜9表示,不能以0开头;②八进制常量,用0〜7表示,必须用0开头;③十六进制常量,用0~9和A~F(a~f)表示,必须以Ox 或OX 开头。实型常量:用带小数点的数字表示,其值有两种表达形式,分别为十进制小数形式和指数形式。3.1415为实型常量,A 项正确。“A ”为长度为1的字符串常量,B 项错误。092按照格式来说是八进制整型常量,但是八进制不会出现9, C 项错误。OxDH 按照格式说是十六进制整型常量,但是不应该出现H , D 项错误。
2. 有以下程序:
程序运行时从第一列开始输入:则输出结果是( )。 A.Peachflowefispink. B.Peachflowefis pink. C.Peachflower is pink. D.Peach flower is pink. 【答案】A
for 循环语句中,while 的判断条件输入的字符不为空格和回车,【解析】通过执行while 语句,把输入的字 符串以‘’为分隔符,分别保存在二维数组b 的4行中,再通过%格式控制符,将二维数组b 的四行字符串无 空格连接输出。
第 2 页,共 14 页
3. 以下程序段中的变量已定义为int 类型,则
程序段的输出结果是( )。 A.6 B.4 C.5 D.7
【答案】D
【解析】整型常量有3种表示方法,分别是十进制数表示法、八进制数表示法和十六进制数表示法,八进制整常量以0作为前缀。自增和自减运算符的两种用法:前置运算,运算符放在变量之前,规则是先使变量的值增(或减)1,然后以变化后表达式的值参与其他运算;后置运算,运算符放在变量之后,规则是变量先参与其 他运算,然后再使变量的值增(或减)1
。
先自加后取值,输出9,
4. 有如下程序:
程序运行后的输出结果是( )。 A.8, 2, B •8,8, C.2, 4, D.4, 8, 【答案】A
【解析】*的优先级低于++,即先运算组下一个元素;i=l,输出8, 2。
5. 有以下程序:
第 3 页,共 14 页
先取值输出10, 再自减故D 选项正确。
再运算程序执行过程为:定义指针ptr 与数组
然后指针加1, 指向数
array , 执行for 循环,使指针指向数组,i=0, 输出指针指向的元素
指针指向数组下一个元素;i=2退出for 循环。程序依次输出
程序运行后的结果是( )。
【答案】D
【解析】函数f 的功能是将重新定义的结构体b 整体赋给圯], 即数组a 的第二个元素,而数组a 的第一个元素不变。因此main 函数中调用函数f 时,即数组c 的第二个元素变成结构体b , 第一个元素不变。
6. 若有定义:inta=0,b=0, c=0, d=0; ,有C 语言表达式行顺序的叙述正确是( )。
A. 先执行a++, 表达式a++的值为0,短路,得a++,执行它
B. 先执行a++,表达式a++的值为0; 再执行b++,表达式b++的值为0,由此可确定值为0,因此执行d++
C. 先执行a++,表达式a++的值为1; 再执行b++,表达式b++的值为1, 由此可确定值为1, 因此执行C++
D. 先执行b++,表达式b++的值为1; 再执行a++,表达式a++的值为1,由此可确定值为1,因此执行C++
【答案】A
【解析】表达式1? 表达式2:表达式3, 若表达式1为真,则执行表达式2, 否则执行表达式3。逻辑与运算符遵循“短路求值”策略,即只有在仅靠左操作数的值无法确定该逻辑表达式的结果时,才会求解右操作数,表达式
>中,左操作数a++的值为0, 已经可以确定整个逻辑
表达式的结果为0, 因此右操作数b++不再求解,直接执行表达式3, 即d++, A 项正确。
7. 下面选项中关于位运算的叙述正确的是( )。
A. 位运算符都需要两个操作数
B. 位运算的对象只能是整型或字符型数据 C. 左移运算的结果总是原操作数据2倍 D. 右移fe 算时,尚位总是补0 【答案】B
【解析】B 项正确,C 语言中,位运算的对象只能是整型或字符型数据,不能是其他类型的
第 4 页,共 14 页
以下关于其执