2017年中南林业科技大学计算机与信息工程学院341农业知识综合三之C程序设计考研导师圈点必考题汇编
● 摘要
一、选择题
1. 若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是( )。
A. 函数的形参和实参分别占用不同的存储单元 B. 形参只是形式上的存在,不占用具体存储单元 C. 同名的实参和形参占同一存储单元
D. 函数的实参和其对应的形参共占同一存储单元 【答案】A
【解析】函数体中,变量(包括形参)只在函数被调用时才临时开辟存储单元,当退出函数时,这些临时开辟的存储单元全被释放掉。C 语言中函数调用可以分成传值和传引用,传值调用,形参是实参的数据拷贝;传引用调用,形参是实参的指针拷贝;所以,形参和实参占用不同的存储单元。
2. 以下选项中有语法错误的是
A. B. C. D. 【答案】D
【解析】考查指针数组的概念,选项D 中str 为二维字符数组,不能直接把一个字符串赋值到二维数组的某一行中。
3. 有以下程序:
程序运行后的输出结果是( )。
【答案】C
【解析】本题将两个字符串常量赋值给一个二维字符数组,用字符常量为字符数组赋值需要
第 2 页,共 37 页
。
在最后加上一个休止符表示字符串结束,所以数组长度为字符的个数加1, 而且数组的下标是
从0开始计数,所以P 指向第二个字符串。
4. 若有定义则下列说法中正确的是( )。
A. 定义了基类型为int 的三个指针变量
B. 定义了基类型为int 的具有三个元素的指针数组pt C. 定义了一个名为【答案】D
【解析】pt 是一个指针,指向的数据类型为含有三个约束的整型数组。
5. 设有定义:
则以下赋值语句中错误的是( )。 A.data2=datal;
B.data2=(2,6); C.data2.real=datal.real; D.data2.real=datal.unreal; 【答案】B
【解析】B 项错误,对结构体进行初始化时,应该用花括号括起来的一组值,而不是用小括号。
6. 有以下程序:
程序的运行结果是( )。 A.23 B.26 C.33 D.36
【答案】A
第 3 页,共 37 页
具有三个元素的整型数组
D. 定义了一个名为pt 的指针变量,它可以指向每行有三个整数元素的二维数组
【解析】题中把数组首元素地址赋值给指针变量q ,在for 循环体内,当把指针q 指向的单元值加1,等于3赋给循环体,此时i 不等于0, 指针q 地址加1,指向
7. 下列叙述中正确的是( )。
B. 两个连续的单引号(“)是合法的字符常量 C. 可以对字符串进行关系运算
D. 空字符串不占用内存,其内存空间大小是0 【答案】A
此时
时,满足if 语句,
后再次进人
接着输出q 指针指向单元的值2;
因此最后函数输出的分别是2, 3。
A. 两个连续的双引号(“”)是合法的字符串常量
【解析】A 项正确,两个连续的双引号:"" 也是一个字符串常量,称为“空串”。B 项错误,两个连续的单引号表示空字符,空字符它不占内存,故其不能称之为字符常量,常量是要有地址C 项错误,C 语言中不能对字符串直接使用关系运算符进行运算,的;但是可以使用比较函数strcmp 进行比较;D 项错误,空串要占一个字节的存储空间来存放
8. 有以下函数:
该函数的功能是( )。
A. 计算字符串的长度 B. 计算字符串所占字节数 C. 将字符串逆序存放 D. 实现字符串的复制 【答案】D
while 循环语句中,【解析】实现功能是把q 指针指向地址单元的值赋给P 指针指向的地址中,且每次完成赋值后,移动指针,进行下一次赋值,直到q 指针指向字符串结束符时,退出while 循环,功能为把q 指向的字符串复制到p 指向的地址中。
9. 为了避免在嵌套的if-else 语句中产生二义性,C 语言规定与else 子句配对是( )。
A. 与其在同一行上的if 子句 B. 在其之后最近的不带else 的if 子句 C. 与其缩排位置相同的if 子句
D. 在其之前最近的不带else 的同层if 子句 【答案】D
【解析】if 总是与它上面最近的、未配对的else 配对。
第 4 页,共 37 页
相关内容
相关标签