2017年贵州民族大学信息工程学院826高级语言程序设计考研冲刺密押题
● 摘要
一、选择题
1. 若有以下程序
则程序的输出结果是( )。
【答案】A
【解析】当把结构体变量中的数据作为一个整体传送给相应的形参时,传递的是实参结构体变量中的值,系统将为结构体类型形参开辟相应的存储单元,并将实参中各成员的值一一对应赋给形参中的成员,函数中形参结构体变量的改变不会影响到实参结构体变量。所以,在函数f 中对a , b 的操作不会影响main 函数中a , b 的值。
2. 有以下定义语句,编译时会出现编译错误的是( )。 A. B. C. D.
【答案】D
【解析】a 是char 类型变量,"aa" 是字符串常量,不能将一个字符串赋值给一个字符变量。
3. 若有定义inta=l,b=2,c=3;II ,则执行表达式(a=b+c)(++b)后a 、b 、c 的值依次为( )。
A.1、2、3
B.5、3、2
C.5、2、3
D.5、3、3
【答案】C
【解析】根据优先级规则,晒边都是括号,则从左至右执行括号中的表达式,将b+c的值赋值给a ,即a 为5, 不为0, 则II 右边的括号不需要再执行。
4. 下列叙述中正确的是( )。
A. 每个C 程序文件中都必须要有一个main 函数
B. 在C 程序中main 函数的位置是固定的
C.C 程序中所有函数之间都可以相互调用
D. 在C 程序的函数中不能定义另一个函数
【答案】D
【解析】D 项正确,C 语言语法规定,在函数中不能定义其他函数。A 项错误,C 程序必须要有一个main 函数,但并不是每个文件中都要有;B 项错误,main 函数的位置没有特殊要求;C 项错误,从其他函数中不能调用main 函数。
5. 若有定义:inta ,b :
通过语句
能把整数3赋给变量a , 5赋给变量b 的输入数据是( )。
A.3, 5
B.3;5
C.35
D.35
【答案】B
scanf 函数中如果使用通配符, 【解析】则在输入数据时也必须使用相同的通配符与它相匹配。
6. 以下选项中的编译预处理命令行,正确的是( )。
A.#definePI3.14
B.##defineeps0.001
C.#DEFINETRUE
D.#defineintINT
【答案】A
【解析】A 项正确。不带参数的宏定义是用一个指定的标识符来代表一个字符串,其一般形式如下:#define宏名替换文本。需要注意:①在#define、宏名和替换文本之间用空格隔开;②在
C 程序中,宏定义的定义位置一般写在程序的开头;③宏名一般用大写字母表示,便于与变量名区别;④宏定义是用宏名来表示一个字符串,在宏展开时以该字符串取代宏名,这只是一种简单的代换,预处理程序对它不做任何检查;⑤宏定义不是语句,在行末不加分号,如加上分号则连分号也一起替换。B 项define 前多了一个#。C 项缺少“替换文本”。D 项不能将一个自定义标识符宏定义为关键字。
7. 以下选项中,能用作数据常量的是( )。
A.o115
B.0118
C.1.5el.5
D.115L
【答案】D
【解析】A 项错误,十六进制数用数学0和字符x (或大写字母X )开头;B 项错误,八进制整数常量以数字0开始,有效数字为0〜7;C 项错误,C 语言中实型常量有两种表示:小数形式
和指数形式。指数形式中,字母e (或E )之前必须要有数字,且e 或E 后面的指数必须为整数。
8. 有以下程序:
程序运行后的输出结果是( )。
A.=
B.XXX
C.=XX
D.X=
【答案】A
【解析】主函数首先为结构体定义两个变量分别使用字符串拷贝函数strcpy ( )为si 和s2的成员name 赋值,再将中的成员信息赋值给因此输出为项正确。
9. 若有定义:则以下叙述正确的是( )。
A.ps[0]是字符串”aa”
相关内容
相关标签