2017年南京大学0217软件基础(程序设计C语言与数据库)之程序设计(C语言)复试仿真模拟三套题
● 摘要
一、选择题
1. 若变量己正确定义并赋值,则错误的赋值语句是( )。
A.a=a+l;
B.a=sizeof(double ); C.a=dllc; D.a+l=a; 【答案】D
【解析】赋值号的左边必须是一个代表某个存储单元的变量名,赋值号的右边必须是C 语言 中合法的表达式。赋值运算的功能是先求出右边表达式的值,然后把此值赋给赋值号左边的变量。
2. 以下选项中非法的字符常量是( )。
A. B. C. D. 【答案】D
【解析】字符常量有两种表示方法:一种是用该字符的图形符号。另外还可以用字符的ASCII 码表示,即用反斜符
开头,后跟字符的
码,这种方法也称为转义序列表示法,具体方
这里ddd 是八进制值(0可以省略)。这里hh 是两位十六进制值。D 项
,
法有两种形式,一种是字符的八进制ASCII 码,表示为另一种使用字符的十六进制ASCII 码值,表示为
使用的是八进制表示,不应该出现9, 所以错误。
3. 有如下嵌套的if 语句:
以下选项中与上述if 语句等价的语句是。 A. B. C. D. 【答案】C
【解析】三目运算符
的条件表达式为:表达式1? 表达式2:表达式3。当表达式1的值
第 2 页,共 15 页
为真时,取表达式2的值作为整个条件表达式的值;否则,取表达式3的值作为整个条件表达式
的值。条件表达式的结合顺序为从右到左。
4. 有以下程序:
程序运行后的输出结果是( )。 A.3,5,5,3 B.3,5,3,5 C.5,3,3,5 D.5,3,5,3 【答案】B
【解析】在C 语言中,函数参数的传递是“传值”的,即形参和实参是两个没有关系的变量,本题函数的形参虽然为指针变量,但是函数内部交换的是地址值,并没有交换主函数中变量x 与y 的值。函数内对地址值的交换不会传递给实参,因此,交换函数并没有交换p 、q 所指向的值。
5 若有定义语句:.
误的是( )。
【答案】C
【解析】:数组的下标从零开始,数组m 中有5个元素,所以数组m 即
为
C 项,
但是数组下标范围是
6. 有以下程序:
第 3 页,共 15 页
则下面对m 数组元素的引用中错
引用数组元素为
所以溢出引用错误。
程序运行后的输出结果是( )。 A.1, 2 B.3, 4 C.5, 6
D.123, 456 【答案】C
【解析】程序中首先定义一个一维数组,然后将数组中的值写入到5和6。
7. 有以下程序:
己知字母A 的ASCII 码值为65, 程序运行后的输出结果是( )。 A.E , 68 B.D , 69 C.E , D D. 输出无定值 【答案】A
【解析】C 语言中,字符型可以作为整型用,可以出现在任何需要整型的表达式中。该题中c2, 然后将cl 按字母格式输出,c2按整型格式输出。 的main 函数将字符A 经过运算分别赋值给cl 、
8. 设有定义:
则以下赋值语句中错误的是( )。 A.data2=datal;
B.data2=(2,6); C.data2.real=datal.real; D.data2.real=datal.unreal; 【答案】B
【解析】B 项错误,对结构体进行初始化时,应该用花括号括起来的一组值,而不是用小括
第 4 页,共 15 页
中,然后再从中
读出数组中的元素,每次读出2个元素,分别赋值给k 和n , 循环执行3次,故最终k 和n 的值为
相关内容
相关标签