2019年4月高等教育自学考试《计算机软件基础(一)》试题
课程代码:02243
题目中的图片,请下载文档查看
一、单项选择题
1.属于合法的变量名是
A.305L B.-ab
C.k_5 D.AK-45
2.下列语句中,符合C语言语法的语句是
A. float z=28, int x,y=18; B. int x=25,y=25,z=25;
C. int x =25: y=25: z=25; D. int x+y=z;
3.若有定义:int a=6;则语句a/=3;运行后,a的值是
A.1 B.2 C 3 D.6
4.下列程序运行结果是
int min (float a ,float b)
{ int c;
if(a<b) c=a;
else c=b;
return(c);}
void main( )
{ float x,y;
x=4.6;y =3.7;
printf("%d\n" ,min(x,y));}
A. 3 B. 3.7 C. 4 D. 4.6
5.下列能正确判定数学关系式0≤s<10为“真”的C表达式是
A. 0<= s<10
B. (s>=0)and(s<10)
C. ((s>=0)&(s<10)
D. (s>=0)&&(s<10)
6.下列程序段运行后x的值为
int a[5]={1,2,3,4,5} ,i,x=0;
for(i=0;i<5;i++)
x=x+a[i];
A. 1 B. 6 C. 10 D. 15
7.下列程序段运行后变量ans的值为
int a[]:{1,2,3},b[]={3,2,1};
int* p=a, *q=b;
int k,ans=0;
for(k=0;k<3;k++ )
if(,(p+k) :=,(q+k))
ans=ans+*(p+k)*2;
A. 2 B. 4 C. 6 D. 12
8.栈和队列的共同点是
A.进出原则都是先进先出
B.进出原则都是后进先出
C.都是插入删除操作受限的线性表
D.不允许在任意端点处插入和删除元素
9.在一个长度为n的链式队列中,人队操作的时间复杂度为
A.O(1) B.O(log n) C.O(n) D.0(n2)
10.按照二叉树的定义,具有3个节点的不同形态的二叉树有
A.3种 B.4种 C.5种 D.6种
11.要实现对图的深度优先遍历,要用到的数据结构是
A.队列 B,栈 C.二叉树 D.数组
12.不断把新的数据元素插入到已排好序的序列中去的排序方法是
A.插入排序 B.冒泡排序 C.希尔排序 D.选择排序
13.若数组a有m列,则a[i][j]之前的数组元素个数为
A.(i-1)*(j-1) B.i*m+j+1 C.i*m+j-1 D.i*m+j
14.对节点个数为20的顺序存储有序表,若采用折半查找,则查找第15个节点的成功查找次数为
A.2 B.3 C.4 D.5
15.在软件工程中,下列测试技术中属于白盒测试的是
A.逻辑覆盖法 B.等价划分
C.边界值分析 D.错误推测法
二、填空题
16.若int a,b;,则表达式(a=2,b=5,a++,a+b)的值为 。
17.在C语言中,表达式值为 代表“假”。
18.当a=3,b=2,c=1,f=a>b>c时,f的值为 。
19.设y为int型变量,请写出描述“y是偶数”的表达式 。
20.设顺序队列的头尾指针为front和rear,则队列空的判定条件是 。
21.链式存储一个具有n个节点的二叉树,其中有 个指针域为空。
22.设一棵二叉树的先序序列为ABC,则有 种不同的二叉树可以得到这种序列。
23.设无向图G中有n个顶点,则该无向图中每个顶点的度数最多是 。
24.软件生存周期由软件定义、软件开发和 三个时期组成。
25.需求分析子阶段产生的结果是 。
三、简答题
26.已知如图26所示的无向网,请画出:最小生成树。
27.已知权值集合为{4,2,3,5,6},要求构造哈夫曼树,并计算带权路径长度WPL。
28.已知二叉树的先序遍历序列为ABCDEFGH,中序遍历序列为CBEDFAGH,画出二叉树。
29.有一组关键字{14,15,30,28,5,10},写出对其进行直接选择排序(从小到大)前四趟的结果。
四、程序分析题
30.函数fun的功能是:使数组a逆序存放,n为数组a的长度。请补充划线部分的程序代码。
fun( int a[ ],int n)
{ int temp,i,j;
for( i=0,j=n-1 ;i < ;i++ ,j--)
{ temp=a[i];
a[i]= ;
a[j]=temp;
}
}
31.下面程序的执行结果是 。
{finclude <stdio.h>
#define N 4
void main( )
{int i,j;
for(i=1 ;i<=N;i++)
{ for(j=1;j<i;j++)
prinff("#");
printf(" * ");
printf(" \n" );
}
}
32.函数power的功能是:求x的n次方,并返回结果。请补充划线部分的程序代码。
double power( double x, int n)
{ double p=1.0;
if(n>0)
for( ;n>0;n--)
;
else
p=1.0;
return ;
}
33.以下程序的功能是:输出N×N数组每一行的最小值。请补充划线部分的程序代码。
#include < stdio, h >
#define N 4
void main( )
{ inta[N][N], m[N],i,j;
for (i=0; i<N; i+ +)
for (j=0; j<N; j++)
scanf("%d", &a[i][j]) ;
for (i=0;i<N; i++)
{ m[i]= ;
for(j=1;j<N;j++)
if( ) re[i] =a[i][j];
}
prinff( "Min is: ");
for(i=0; i<N; i++)
printf("%d",m[i]);
}
五、程序设计题
34.编程实现把十六进制数转换为十进制数。如输入5AE,则输出1454。
35.编程实现:输出100以内能被3整除且个位数为6的所有整数。