2016年南昌航空大学软件学院程序设计复试笔试仿真模拟题
● 摘要
一、选择题
1. 以下选项中合法的C 语言赋值语句是( )。
A.++i;
B.a=b=34
C.a=3,b=9
D.k=int(a+b);
答:A
【解析】B 项和C 项缺少分号,不合法。D 项类型转换不合法,应为k=(int )(a+b)。
2. 若有定义语句:库函数strcpy 的功能是复制字符串,以下选项中错误的函数调用是( )。
A. B. C. D.
答:A
【解析】题目中字符指针str3, 没有为指针开辟内存,能作为函数参数。
3. 有以下程序(其中的函数头部格式为:确定p2字符串是否在pi 中出现,并返回p2第一次出现的字符串首地址):
程序的运行结果是( )。
A.to Bering!
B.you to Bering!
C.Welcome you to Bering!
D.Bering!
答:A
【解析】调用strstr 函数,可知a 指向的字符串在b 指向的字符串中第一次出现的位置,并将
,并且作为函此地址赋给指 针p 。strlen ( )函数是求字符串的实际长度(不包含结束标志)
数值返回。strstr 函数返回的地址 下标值为9, 加上a 长度3, 再加1,此时P 指向的地址下标值为
13, 输出“toBeijing! ”,故A 选项正确。
4. 有以下函数
该函数的功能是( )。
A. 计算S 所指字符串占用内存字节的个数
B. 比较两个字符串的大小
C. 计算s 所指字符串的长度
D. 将S 所指字符串复制到字符串t 中
答:A
【解析】本题中,首先让t 指向形参s , 然后通过一个循环体为空的while 循环,将t 逐次后移,直到其所指内容为(字符串结束标志)。此时t 仍然会被曾1, 所以从循环出来,t 指向的是s
是8所指字符串占用内存字节的个数,A 所指字符串的结束标志的后一个字节。因此,返回的
项正确。而C 项所说的长度并不包括字 符串结束标志位,错误。
5. 以下叙述中正确的是( )。
A.C 语言规定必须用main 作为主函数名,程序将从此开始执行
B. 可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行
C.C 语言程序将从源程序中第一个函数开始执行
D.main 的各种大小写拼写形式都可以作为主函数名,如:MAIN , Main等
答:A
【解析】用户不能指定某函数为主函数,函数从main 函数开始执行,C 语言函数名区别大小写。
6. 以下选项中关于C 语言常量的叙述错误的是( )。
A. 所谓常量,是指在程序运行过程中,其值不能被改变的量
B. 常量分为整型常量、实型常量、字符常量和字符串常量
C. 常量可分为数值型和非数值型常量
D. 经常被使用的变量可以定义为常量
答:D
【解析】常量是指在程序运行过程中其值不能被改变的量。在C 语言中,有整型常量、实型常量、字符常量和字符串常量等类型。整型常量和实型常量又称数值型常量,它们有正值和负值的区分。所谓变量是指在程序运行过程中其值可以改变的量。C 语言规定,程序中所有变量都必须先定义后使用。变量和常量有明显的区分。
7. 设有以下程序段:
要引用结构体变量Std 中的color 成员,下列写法中错误的是( )。
答:C
【解析】在使用结构体变量引用结构体中的成员变量时,可以使用
指针引用结构体中的成员变量是,可以使用
8. 有以下程序:
程序运行后的输出结果是( )。
A.654321
B.116611
C.161616
D.123456
答:A
【解析】函数fun 的功能是,将数组的第一个元素与最后一个元素进行比较,将大者放到前面,再将数组的第二个元素与倒数第二个元素进行比较,同样,大者放到前面,由于数组原来是按从小到大顺序排列的,故通过程序输出的是654321。
9. 有以下程序:
来引用,使用结构体来指向结构体中的成员。