贵州大学研究生入学考试模拟卷(B)
(所有答案必须答在专用答题纸上,否则答案无效)
考试科目名称:程序设计与数据结构考试科目代码:840
一、选择题(单项选择,25个小题,每题2分,共50分)
1、算法指的是______。
A.计算机程序
B.解决问题的计算方法
C.排序算法
D.解决问题的有限运算序列
考研计算机真题2、对于只在表的首.尾两端进行插入操作的线性表,宜采用的存储结构为_____.
A.顺序表
B.用头指针表示的单循环链表
C.用尾指针表示的单循环链表
教师资格证书D.单链表
3、将长度为n的单链表链接在长度为m的单链表之后的算法的时间复杂度为_____.
A. O(1)
B. O(n)
C. O(m)
D. O(m+n)
4、一棵含18个结点的二叉树的高度至少为_____。
A.3
B.4
C.5
D.6
5、已知二叉树的先序序列为ABDECF,中序序列为DBEAFC,则后序序列为_____。
A.DEBAFC
B.DEFBCA三江人才网宜宾
C.DEBCFA
D.DEBFCA
6、一个具有n个顶点的无向完全图的边数为_____。
A.n(n+1)/2
B.n(n-1)/2
C.n(n-1)
D.n(n+1)
7、已知一个有向图如图所示,则从顶点a出发进行深度优先遍历,不可能得到的DFS 序列为_____。
A.a d b e f c
B.a d c e f b
C.a d c b f e
D.a d e f c b
8、若结点的存储地址与其关键字之间存在的某种映射关系,则称这种存储结构为___。
A.顺序存储结构
B.链式存储结构
C.索引存储结构
D.散列存储结构
9、已知一组关键字为{25,48,36,72,79,82,23,40,16,35},其中每相邻两个为有序子序列。对这些子序列进行一趟两两归并的结果是()
A.{25,36,48,72,23,40,79,82,16,35}
B.{25,36,48,72,16,23,40,79,82,35}
C.{25,36,48,72,16,23,35,40,79,82}
D.{16,23,25,35,36,40,48,72,79,82}
10、设顺序存储的线性表共有123个元素,按分块查的要求等分成3块。若对索引表采用顺序查来确定块,并在确定的块中进行顺序查,则在查概率相等的情况下,分块查成功时的平均查长度为()
A.21
B.23
C.41
D.62
11、以下叙述中正确的是( )。
A.构成C程序的基本单位是函数
B.可以在一个函数中定义另一个函数
C.main函数必须放在其他函数之前
D.所有被调用函数一定要在调用之前进行定义
12、下列哪些是C语言中的合法标识符?
A.7ab工作平台哪个软件好
B._7ab
C. auto
D.int
13、若有int a=8,b=2,c; 则执行 c=a, a=b, b=c ; 语句后正确的结果是_____。
A. a的值为2
B. b的值为2
C. c的值为2
D. a,b,c的值都是2
14、以下定义语句中正确的是()。
东方航空公司招聘A) int a=b=0;
B) char A=65+1,b=b;
C) float a=1,b=a,c=b;
D) double a=0.0;b=1.1;
15、设i、j、和k是int型变量,且i=3,j=4,k=5,则以下值为0的表达式是___。
A.'i'&&'j'      B.i<=j
C.i||j+k&&j-k  D.!((i<j)&&!k||1)
16、若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值(c大于0)
s=a;
for(b=1;b<=c;b++) s=s+1;
则与上述程序段功能等价的赋值语句是( )
A:s=a+b  B:s=a+c;  C:s=s+c;  D:s=b+c;
17、有以下程序
void f(int v , int w)
{
int t;
t=v;v=w;w=t;
}
int main( )
{
int x=1,y=3,z=2;
if(x>y)
f(x,y);
else if(y>z)
f(y,z);
else
f(x,z);
printf(“%d,%d,%d\n”,x,y,z);
} 执行后输出结果是()
A:1,2,3 B:3,1,2 C:1,3,2 D:2,3,1
18、static char str[ ]="Beijing";
则执行printf("%d\n", strlen(strcpy(str,"China")));
银行从业资格证2023年后的输出结果为( )
A:5  B:7  C:12  D:14
19、下列程序执行后的输出结果是(      )  。
int  a[3][3],  *p,i;
p=&a[0][0];
for(i=0;  i<9;  i++)  p[i]=i+1;
printf("%d  \n",a[1][2]);
A.3
B.6
C.9
D.随机数
20、以下对一维数组a的正确声明是___
A、char a(10);
B、int a[ ];
C、int k=5,a[k];
D、char a[ ]={'a' , 'b' , 'c'};
21、设有以下定义
int a=0;
double b=1.25;
char c=’A’;
#define d 2
则下面语句中错误的是______。
A.a++;
B.b++;
C.c++;
D.d++;
22、设有定义:int a,*pa=&a;以下scanf语句中能正确为变量a读入数据的是______。A:scanf(“%d”,pa);    B:scanf(“%d”,a);
C:scanf(“%d”,&pa);  D:scanf(“%d”,*pa);
23、有以下程序段int a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b;b=p[5];b的值是()
A: 5    B:6 C: 8 D: 9
24、若程序中定义了以下函数
double myAdd(double a, double b)
{
return (a+b);
}
并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是()
A:double myAdd(double a,b);
B:double myAdd(double,double);
C:double myAdd(double b,double a);
D:double myaAdd(double x,double y);
25、下列关于结构体的描述,正确的是______。
A.结构体的各个成员变量类型必须相同。
B.结构体是一种构造数据类型,首先要定义结构体类型,然后再定义结构体变量。
C.结构体变量不可以在结构体定义时定义。
D.结构体所占用的存储空间是其成员占用空间的最大值。
二、程序阅读题(4小题,每小题5分,共20分)
1、下列程序的输出结果为?
#include <stdio.h>
#define N 3
#define M 5
int main()
{
int i,j;
static float score[N][M]={{83.5,82,86,65,67},
{80,91.5,84,99,95},
{90.5,95,86,95,97}};
float bb[N];
for(i=0;i<N;i++)
bb[i]=0 ;
for(i=0;i<N;i++)
{
for(j=0;j<M;j++)
bb[i]+=score[i][j] ;
bb[i]/=M;
}
for(i=0;i<N;i++)
printf("\nstudent%d\taverage=%5.1f",i+1,bb[i]);
return 0;
}
输出: