2017年北京林业大学程序设计语言(同等学力加试)复试实战预测五套卷
● 摘要
一、选择题
1. 以下叙述中错误的是( )。
A.C 语言编写的函数源程序,其文件名后缀可以是.C
B.C 语言编写的函数都可以作为一个独立的源程序文件
C.C 语言编写的每个函数都可以进行独立的编译并执行
D. —个C 语言程序只能有一个主函数
【答案】C
【解析】C 源程序经过C 编译程序编译之后生成一个后缀为.OBJ 的二进制文件(称为目标文,然后由称为“连接程序”(Link )的软件,把此.OBJ 文件与C 语言提供的各种库函数连接件)
起来生成一个后缀为.EXE 的可执行文件。只有含有main 函数的经过编译链接才能执行。
2. 若有定义语句 执行了之后,输入语句正确的是( )。
A. B. C. D.
【答案】C
,格式控制和地址【解析】输入函数scanf 使用的标准形式是:scanf (格式控制,地址列表)
列表间用逗号隔开。由题知_即px 指向x 的地址,py 指向y 的地址。AD 两项错误,表达式中的x 和y 都需要取地址;B 项,格式控制和地址列表间用逗号隔开。
3. 有以下程序:
程序的运行结果是( )。
A.nice
B.verynice
C.nicegood
D.verygood
【答案】D
【解析】通过赋值运算使一个字符指针指向一个字符串常量:这种形式只是将字符串“nice”首地址赋给指针,而不是将指针原本指向的单元元素改变成“nice”。程序执行
过程为:定义字符数 组并且初始化为“verygood”常量,定义指针ps 使其指向数组,使ps 指向数组第5个元素,使指针指向字符串 “nice”,这并不影响s 数组任何元素值,故输出字符串8为“verygood”。
4. 设有定义:
【答案】D
【解析】逗号表达式的计算过程是从左到右逐个求每个表达式的值,取最右边一个表达式的值作为该逗号表达式的值。赋值运算结合性为由右向左结合,赋值运算符左值为变量,右值为变量或常量,且左右两边数据类型 相同才能实现赋值。成功实现赋值后以左值为返回值。逻辑表达式成立则返回1,不成立返回0。D 选项逻辑表 达式
逗号表达式X ,y 取y 值为表达式值,然后赋值给
取y 值为表达式值,然后赋值给不成立,则表达式值为0。B 选项取y 值为表达表达式值为12。C 选项逗号表达式以下表达式值不等于12的是( )。
表达式值为12。A 选项逗号表达式
式值12。故选择D 选项。
5. 为了建立如图所示的存储结构(即每个结点含两个域,data 是数据域,next 是指向结点的指针域),则在处应填入的选项是( )。
【答案】C
【解析】结构体中的成员可以是各种类型的指针变量。当一个结构体中有一个或多个成员的基类型是本结构体类型时,称为“引用自身的结构体”。题目中next 指针指向struct 自身结点。
6. 有以下程序:
程序运行后的输出结果是( )。
A.654321
B.116611
C.161616
D.123456
【答案】A
【解析】函数fun 的功能是,将数组的第一个元素与最后一个元素进行比较,将大者放到前面,再将数组的第二个元素与倒数第二个元素进行比较,同样,大者放到前面,由于数组原来是按从小到大顺序排列的,故通过程序输出的是654321。
7. 以下不能正确表示代数式
A.2*a*b/c/d
B.a*b/c/d*2
C.a/e/d*b*2
D.2*a*b/c*d
【答案】D
【解析】*、/优先级相同,所以采用从左到右结合的方式。D 项,应该改为:2*a*b/(c*d)。
8. 设a ,b ,C 是整型变量,且已正确赋初值,以下选项中错误的赋值语句是( )。
【答案】D
【解析】D 项,“( )”具有最高优先级,b 先赋值9,再根据赋值运算符号自右向左进行赋值,再给b 赋值为1,再计算2=b,赋值运算符左边必须是一个变量,但数值2是常量,语法错误。
的C 语言表达是( )。
二、设计题
9. 请编写一个函数,用来删除字符串中的所有空格。例如,输入asdafaaz67, 则输出为asdafaaz67。注意:部分源程序给出如下。
请勿改动主函数main 和其他函数中的任何内容,仅在函数fun 的花括号中填入你编写的若干语句。
试题程序:
相关内容
相关标签