当前位置:问答库>考研试题

2016年西华师范大学数学与信息学院C语言程序设计(同等学力加试)复试笔试最后押题五套卷

  摘要

一、选择题

1. 以下选项中叙述错误的是( )。

A.C 程序函数中定义的赋有初值的静态变量,每调用一次函数,赋一次初值

B. 在C 程序的同一函数中,各复合语句内可以定义变量,其作用域仅限本复合语句内

C.C 程序函数中定义的自动变量,系统自动赋确定的初值

D.C 程序函数的形参不可以说明为static 型变量

答:A

【解析】在整个程序运行期间,静态局部变量在内存的静态存储区中占据着永久性的存储单元。即使退出函 数以后,下次再进入该函数时,静态局部变量仍使用原来的存储单元。由于并不

释放这些存储单元,因此这些存 储单元中的值得以保留,因而可以继续使用存储单元中原来的值。

2. 有以下程序:

程序运行后的输出结果是( )。

A.A

B.a

C.H

D.h

答:D

【解析】首先将H 赋给变量a ,问号前一个表达式成立,问号后面减去一个大写字母A 再加上小写字母a 实际是将原来的大写字母转换成小写字母,即H 转换成h ,再将结果赋给a 。

3. 以下函数不能用于向文件写入数据的是( )。

A.ftell

B.fwrite

C.fputc

D.fprintf

答:A

【解析】函数ftell ( )用于得到文件位置指针当前位置相对于文件首的偏移字节数。在随机方式存取文件时,由于文件位置频繁地前后移动,程序不容易确定文件的当前位置。调用函

A 项不能写入数据,BCD 三项都可以向文件中写入。 数ftell 就能非常容易地确定文件的当前位置。

4. 有以下程序

程序的运行结果是( )。

A.11 7

B.12 12

C.11 11

D.12 7

答:A

【解析】f (2)展开后为,2*5+1,值为11,f (1+1)展开后为,1+1*5+1值为7。

5. 以下选项中,不能对主函数中变量i 和j 的值进行交换的程序是( )。

}

}

}

答:A

【解析】选项A ,定义了一个临时指针,实现两个指针地址的交换,而传入了参数是二个指针的副本,即a 、b 地址的副本,故交换了副本地址,对a 、b 无影响,故选择A 选项。B 选项调用函数传人的是i 与j 地址,函数体内交换是地址内元素,临时变量为整型变量,能实现i 与j 值交换。C 选项调用函数传入的是i 与j 地址,函数体内交换是地址内元素,临时变量为整型指针,且已正确开辟内存,能实现i 与j 值交换。D 选项与B 选项相同,能实现i 与j 值交换。

6. 有如下程序: