当前位置:问答库>考研试题

2016年浙江工商大学信息与通信工程C程序设计复试笔试最后押题五套卷

  摘要

一、选择题

1. 有以下程序

程序的运行结果是( )。

A.a=2.b=l

B.a_2,b-2

C.a=l, b=l

D.a=l, b=0

答:A

【解析】当执行swicth 语句时,首先计算紧跟其后一对括号中的表达式的值,然后在switch 语句体内寻找与该值吻合的case 标号。如果有与该值相等的标号,则执行该标号后开始的各语句,包括在其后的所有case 和default 中的语句,直到switch 语句体结束;每当执行到break 语句时,立即跳出switch 语句体。switch 语句通常总是和break 语句联合使用,使得switch 语句真正起到分支的作用。x=l,首先进入外层分支1,接下来y=0,再进入内层分支0,执行a++,此时a=l,接下来遇到break ,跳出内层switch ; 由于外层分支中没有break 语句,会继续执行外层分支2,执行a++, b++,此时a=2, b=l; 然后遇到break 语句,跳出外层switch 。

2. 以下叙述中正确的是( )。

A.C 语言规定必须用main 作为主函数名,程序将从此开始执行

B. 可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行

C.C 语言程序将从源程序中第一个函数开始执行

D.main 的各种大小写拼写形式都可以作为主函数名,如:MAIN , Main等

答:A

【解析】用户不能指定某函数为主函数,函数从main 函数开始执行,C 语言函数名区别大小

第 2 页,共 34 页

写。

3. 若有定义

则以下与上述定义中a 类型完全相同的是( )。

答:A

【解析】“typedef 类型名新类型名”表示为一个已定义的类型标识符重新定义一个新类型名,题中选项A 代表的意思是数组指针,即指向数组的指针,B 选项是指针数组,即数组存放的元素是整型指针,首先为整型指针类型命名为T ,再通过T 定义了一个整型指针数组*a[20],等价于int*a[20],答案为A 选项。

4. 有以下函数:

该函数的功能是( )。

A. 计算字符串的长度

B. 计算字符串所占字节数

C. 将字符串逆序存放

D. 实现字符串的复制

答:D

while 循环语句中,【解析】实现功能是把q 指针指向地址单元的值赋给P 指针指向的地址中,

且每次完成赋值后,移动指针,进行下一次赋值,直到q 指针指向字符串结束符时,退出while 循环,功能为把q 指向的字符串复制到p 指向的地址中。

5. 以下函数不能用于向文件写入数据的是( )。

A.ftell

B.fwrite

C.fputc

D.fprintf

答:A

【解析】函数ftell ( )用于得到文件位置指针当前位置相对于文件首的偏移字节数。在随机方式存取文件时,由于文件位置频繁地前后移动,程序不容易确定文件的当前位置。调用函

A 项不能写入数据,BCD 三项都可以向文件中写入。 数ftell 就能非常容易地确定文件的当前位置。

6. 有以下程序(其中k 的初值为八进制数):

第 3 页,共 34 页

程序运行后的输出结果是( )。

A.12

B.11

C.10

D.9

答:D

【解析】k 的初值是八进制数011,转换为十进制数就是9,在输出时自增运算符“++”是作为后缀出现的,因此是先输出9,然后k 的值再自增1。

7. 以下叙述中错误的是( )。

A.C 语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令

B.C 程序经过编译、链接步骤之后才能形成一个真正可执行的二进制机器指令文件

C. 用C 语言编写的程序称为源程序,它以

D.C 语言源程序经编译后生成后缀为

答:A

【解析】A 项错误,注释语句不会被翻译成二进制的机器指令。C 源程序经过C 编译程序编

,然后由“连接程序”(Link )的软件,译之后生成后缀 为.OBJ 的二进制文件(称为目标文件)

把OBJ 文件与各种库函数连接 起来生成一个后缀为.EXE 的可执行文件。

8. 在以下给出的表达式中,与while (E )中的(E )不等价的表达式是( )。

A.

B.

C.

D.

答:C

【解析】ABD 三项都是E 不等于零时执行while 循环,C 项是E 等于零时执行while 循环。

9. 以下函数按每行8个输出数组中的数据:

下画线处应填入的语句是( )。

A.

B.

C.

D.

第 4 页,共 34 页

代码形式存放在一个文本文件中 的目标程序