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

2017年扬州大学信息工程学院834软件基础之C程序设计考研导师圈点必考题汇编

  摘要

目录

2017年扬州大学信息工程学院834软件基础之C 程序设计考研导师圈点必考题汇编(一) . .. 2 2017年扬州大学信息工程学院834软件基础之C 程序设计考研导师圈点必考题汇编(二) . 10 2017年扬州大学信息工程学院834软件基础之C 程序设计考研导师圈点必考题汇编(三) . 17 2017年扬州大学信息工程学院834软件基础之C 程序设计考研导师圈点必考题汇编(四) . 24 2017年扬州大学信息工程学院834软件基础之C 程序设计考研导师圈点必考题汇编(五) . 32

一、选择题

1. 有如下程序:

程序运行后,在当前目录下会生成一个

A.E

B.EOF

C.ABCDE

D.A

【答案】A

向文件输入A ,关闭文件

件退出循环文件,其内容是( )。 【解析】程序执行过程为:i=0时,以只写方式打开一个文本文件时,再次以只写方式打开_文件中内容为E 。 覆盖原本的A ,关闭文件;之后文件内的值依次为C 、D 、E ,当调用函数fputo 调用函数fputc 向文件输入B 时,文件内为E , 然后关闭文

2. 设有定义:doublex=2.12; ,以下不能完整输出变量x 值的语句是( )。

【答案】A

【解析】printf 函数控制字符财输出float 类型,%If 输出double 类型。格式控制%m.nf ,表示数据输出总的宽度为m 位,其中小数部分占n 位。当数据的小数位多于指定宽度n 时,截去右边多余的小数,并对截去的第一位小数做四舍五入处理;而当数据的小数位少于指定宽度n 时,在小数的右边补零;当m 小于有效位数时,整数部分输出所有有效数字并且自动对齐,小数部分按照n 指定位数输出。A 项按照float 格式输出数据,宽度为5位,保留小数0位,输出为2,不能完整输出X ,选择A 项。B 项按照float 格式输出数据,输出为2.120000。C 项按照double 格式

输出数据,输出为2.120000〇D 项按照float 格式输出数据,保留小数位数为5,输出为2.12000。

3. 表达式3.6-5/2+1.2+5%2的值是( )。

A.4.8

B.3.8

C.3.3

D.4.3

【答案】B

【解析】3.6--5/2+1.2+5%2=3.6-2+1.2+l=3.8;需要注意的是,两个整数相除仍然得到整数,小数部分被省略,5/2=2。

4. 设有定义:

紧接着的赋值语句正确的是( )。 A. B. C. D.

【答案】A

【解析】指针赋值的正确写法:表示p 指向x 的存储单元;表示p 是空指针。

5. 为了建立如图所示的存储结构(即每个结点含两个域,data 是数据域,next 是指向结点的指针域),则在处应填入的选项是( )。

【答案】C

【解析】结构体中的成员可以是各种类型的指针变量。当一个结构体中有一个或多个成员的基类型是本结构体类型时,称为“引用自身的结构体”。题目中next 指针指向struct 自身结点。

6. 有以下程序:

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

A.8,16

B.16,32

C.8,32

D.16,16

【答案】C

【解析】带参数的宏定义不是进行简单的字符串替换,而是要进行参数替换不计算,只是进行简单的替换。替换过程是:用宏调用提供的实参字符串,直接置换宏定义命令行中相应形参字符串,非形参字符保持不变。FNA (FNB (a ))的替换过程为:FNA (2+2)替换为2+2X2+2,计算结果为8。FNB (FNA (b ))的替换过程为:FNB (4*4)替换为4X4+4X4=32。程序运行后的输出结果是8,32,故C 项正确。

7. 有以下程序

程序的运行结果是( )。

A.233423

B.432543

C.233445

D.453523

【答案】D

【解析】第一次循环i 值为3, j 值分别为1和2, 所以输出为4和5; 第二次循环i 值为2, j 值分别为1和2, 所以输出为3和4; 第三次循环i 值为1,j 值分别为1和2,所以输出为2和3。

8. 若有定义: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。