2016年南昌大学资源环境与化工学院C程序设计复试笔试仿真模拟题
● 摘要
一、选择题
1. 设有一个
的矩阵已经存放在一个M 行N 列的数组x 中,且有以下程序段:sum=0;
以上程序段计算的是( )。 A. 矩阵两条对角线元素之和 B. 矩阵所有不靠边元素之和 C. 矩阵所有元素之和 D. 矩阵所有靠边元素之和 答:D
【解析】程序执行过程为:第一个for 循环实现对第一列和第N 列求和。第二个for 循环在上一个for 循环结果上实现对第一行和第M 行从第二个元素到第N-1个元素的求和,总体来说,就是矩阵所有靠边元素之和,故D 选项正确。
2. 有以下程序:
程序运行后的输出结果是( )。
答:D
,在【解析】D 项正确,main 函数中,首先为结构变量a ,b 初始化,再调用函数f ( )
f ( )函数中,使用结构体变量a 对指针b 指向的结构体进行赋值,使得指针b 指向的结构体成员依次赋值为结构体a 的成员,然后依次输出指针b 指向的结构体成员的值;由于f 函数形参b 为指针,所以指针b 指向的值被修改为a 的同时,main 函数中的实参b 的值也被修改成a 。
3. 以下关于typedef 的叙述错误的是( )。
A. 用typedef 为类型说明一个新名,通常可以增加程序的可读性 B.typedef 只是将已存在的类型用一个新的名字来代表
C. 用typedef 可以为各种类型说明一个新名,但不能用来为变量说明一个新名 D. 用typedef 可以增加新类型 答:D
【解析】用typede 只是将已存在的类型用一个新的名字来代表,并没有增加新类型。
4. 有以下程序
若运行时输入:2 4 6<回车>,则输出结果为( )。 A.2 0 4 B.2 0 0 C.2 4 0 D.2 4 6 答:A
【解析】在二维数组x 中,类型就是数组元素的类型,即
5. 有以下程序:
其值依次为二维数组每行第一个元素的地址,其基
程序的运行结果是( )。 A.a=l, b=0 B.a=2, b=2 C.a=l, b=l D.a=2, b=l 答:D
【解析】x=l,因此外层switch 语句是首先执行case1:后面的语句,进入内层的switch 语句;y=0,执行case0:后面的语句,得a=l,遇到break 语句后退出嵌入的switch 语句。由于外层switch 语句的easel :后面没有break 语句,因此继续执行case2:后面的语句,得a=2,b=l,遇到break 语句后退出第一个switch 语句。结果为a=2,b=l。
6. 有以下程序:
程序运行后的输出结果是( )。 A.2, 4, 8, B.3, 6, 9, C.3, 5, 7, D.1, 3, 5, 答:B
【解析】函数实现的功能是将数组a 中每一行的最大值放于数组b 中
,
第一行最大值为3,第二行最大值为6,第二行最大值为9。
7. 有以下程序: