计算机真题(回忆)

  • Post author:
  • Post category:其他


一,选择题

1 已知整形变量 a=2,b=3,求“! a||b 的值”为()

A、0 B、1 C、2 D、3

2、当 a 的值为奇数时,表达式的值为“真”;当 a 的值为偶数时,表达式的值为“假”。不能满

需求的是()

A.a%2!=0 B.!(a%2) c.!(a%2

0) D.(a%2) &&(a%2>0)

3、下列程序运行结束后,c 的值为()

Int a=1,b=4,c;

A. 1 B.0.25 C、0 D、44200

4、将两个个字符串链接起来组成 1 个字符串时,可选用的函数为()

A. strcat() B.strcpyt() C. strlen() D.srtcmp()

5、下列说法错误的是()

A. 被调用函数可以不用 return 语句

B. 被调用函数中,可以出现多个 return 语句

C. 被调用函数中,如果有返回值,就一定要有 return 语句

D. 被调用函数中,一个 return 语句可返回多个值强调用函数

6、已知 P 是指针变量,则不能初始化 P 的值是()

A.地址

B.NULL

C.0

D.1

7、下列函数声明正确的是()

A. void f(x,y);

B. f(int x;int y);

C. void f(int,int);

D. void f(int x,y);

8、能作为输入文件名的字符串常量为()

A. c:user\text.txt

B. c:\nser’text.txt

C. “c:\user\text.txt”

D. “c:\user\text.txt”

9、两个有序线性表分别具有 n 个元素和 m 个元素,且 n 小于等于 m,现将其归并为一个有

序表,其中最少的比较次数是()

A.n

B.m

C.n-1

D.m+n

10、非空的循环单链表 head 的尾节点(由 P 指向) 满足()

A.p→next

NULL

B.p==NULL

C.p→next=head

D.p=-head

11、以(3,7,11,8,9,12}为叶子结点的权重,构造一棵哈夫曼二叉树,构造树的高度是

()

A. 3

B. 4

C. 1

D. 2

12、对于 1 个线性表(3,12,24,46,10,20}进行散列存储时,选用 H(k)=k%9 作为散列函

数,则散列地址为 1 的元素的个数为()

A. 1

B. 2

C.3

D.4

13、适用于折半查找的表的存储方式及元素排列要求为()

A.链式方式存储,元素无序

B.链式方式存储,元素有序

C.顺序方式存储,元素无序

D.顺序方式存储,元素有序

14、若串 S=“shiftdel”,其子串的数目()

A.38

B.35

C.36

D.37

15、与数据存储无关的是()

A.顺序表

B.链表

C.散列表

D.队列

16、对新设计的算法作性能分析的主要目的是()

A.找出合理的数据结构

B.研究算法中的输入实例

C.分析算法的效率以便改进

D.考量算法的易懂易读性

17、数据结构在计算机内存中的表示是指()

A.数据结构

B.数据的逻辑结构

C.数据的存储结构

D.数据元素之间的关系

18、十进制数 630 的二进制表示为()

A.1001110000

B.1001110110

C.10101 10100

D.1010100111

19,在一个单链表中,如果 a 所指向的结点是 b 所指向的结点的前驱结点,要在 a 与 b 之间

插入 1 个 c 所指向的结点,则执行()

A.c→link=b→link:b→link=c;

B.b→link=c;c→link-a;

C.b→link=c→link;c→link=a;

D.a→link=c;c→link=b;

20、递归算法实现一般需利用()

A.队列

B.栈

C.循环链表

D.双向链

二、判断题

21、1 个 c 语言程序里有一个 main 函数()

22、字符串“a”在内存中占据 1 个字符()

23、指针变量不可以为函数的参数()

24、定义函数时,可以有 1 个或多个形参()

25、全局变量必须定义在文件的开头部分()

26、二叉树的每个叶子结点都有 2 个孩子()

27、冒泡排序的时间复杂度是 0(n)()

28、队列只在队首进行删除操作,只在队尾进行插入操作()

29、从顶点对的角度看,无向图和有向图的区别在于顶点对是无序的还是有序的()

30、快速排序是不稳定的排序方法()

三、填空题

31、符合结构化原则的三种基本程序控制结构是:顺序结构、选择结构和_______

32、有语句 double a=28;int b;当执行表达式 b= (int)(a/9)%4 之后,b 的值为______

33、C 语言使用_____函数来打开文件

34、一棵高度为 h 的树,h 大于等于 0,至少有_____个结点

35、一个栈匀速的入栈顺序为 6,7,8,9,10,则出栈顺序为_______

四、简答题

36、什么是数据结构?什么是数据类型?

37、算法有哪些特点?算法和程序的主要区别是什么?

38、什么是指针?什么是指针变量?它们有什么关系?

39、什么是二叉树?请简述二叉树的五种基本形态

五、编程题

40、#include<stdio.h>

void main()

{


int data;

scanf(“%d”,&data);

while(data)

{


printf(“%d”,data%10);

data=data/10;

}

}

如果输入 123,则:

(1)程序一共循环几次?

(2)最后的结果是多少?

41、#include<stdio.h>

void main()

{


int j,a[]={1,3,5,7,9,11,13,15},

p=a+5;

for(j=4;j>0;j–)

{


switch(j)

{


case 1:

case 2: printf(“%d”,

p);break;

case 3: printf(“%d”,

(–p));

case 4: printf(“%d”,

(–p));

}

}

}

(1)a=4,结果是?(???)

(2)程序最后运行结果是?

42、写出无向图的邻接矩阵(图忘记了,这里为网题)

43、甲学院获 a 项,乙学院获 b 项。从键盘上分别给变量 a、b 输入甲乙奖励数,在计算机

交换 a、b 变量值,在屏幕上输出较大值。请完成:

(1)写出上述编程思路。

(2)根据(1)思路写出程序。

44、将已输入的字符串中的非数字字符易除,并将数字字符在屏幕上显示(如输入” ab*12cx

3Y”输出”123”),请完成:

(1)写出上述编程思路。

(2)根据(1)思路编程序。

45、使用普利姆(prim)算法画出图中最小生成树。(图忘了,这里为网题)

答案:

一、选择题 1-5BBCAD 6-10DCDAC 11-15BBDDD 16-20CCBDB

二、判断题 21-25√××√× 26-30××√√√

29 题解析:无向图,连接顶点 A 与 D 的边,可以表示为无序对(A,D),也可以写

成(D,A)。

有向图,连接顶点 A 与 D 的弧必须是<A,D>

三、填空题 31、循环结构 32、3 33、fopen 34、h 35、10,9,8,7,6

四、简答题

36、(1)数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种

特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存

储效率。数据结构往往同高效的检索算法和索引技术有关。

(2)数据类型在数据结构中的定义是一组性质相同的值的集合以及定义在这个值集合上的一

组操作的总称。

37、算法是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用

系统的方法播述解决问题的策略机制制。

1、一个算法应该具有以下五个主要的特征:

(1 有穷性:算法的有穷性是指算法必须能在执行有限个步骤之后结束

(2)确切性:算法的每一步骤必须有确切的定义,对于相同的输入只能得出相同的输出

(3)输入项:一个算法有 0 个或多个输入,以刻画运算对象的初始情况

(4)输出项:一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算

法是毫无意义的

(5)可行性:算法中执行的任何算步源都程可以被分解为基本的可执行的操作步,即每个计

算步都可以在有限时间内完成(也称之为有效性)

2.算法和程序的区别是:

(1)算法是解决问题的步骤:程序算法的代码实现算法要依靠程序来完成功,程序需要算法作

为灵魂

(2)程序是结果,算法是手段(为编写出好程序所使用的运算方法)。同样编写一个功能的程序,

使用不同的算法可以让程序的体积、效率差很多。所以算法是编程的精华所在。

(3)算法+数据结构=应用程序。算法是程序设计的核心,算法的好坏很大程度上决定了一个

程序的效率。一个好的算法可以降低程序运行的时间复杂度和空间复杂度。先选出一个好的

算法,再配合以一种适宜的数据结构,这样程序的效率会大大提高。

38、(1)在计算机科学中,指针(Pointer)是编程语言中的一个对象,利用地址,它的值直接指

向(points to)存在电脑存储器中另一个地方的值。由于通过地址能找到所需的变量单元,可

以说,地址指向该变量单元。因此,将地址形象化的称为”指针”。

(2)存放地址的变量称为指针变量。指针变量是一种特殊的变量,它不同于一般的变量,一

般变量存放的是数据本身,而指针变量存放的是数据的地址。

(3)指针就是地址,地址就是指针。地址就是内存单元的编号。指针变量就是存放内存地址

的变量。

(4)指针和指针变量是两个不同的概念,但要注意的是,通常我们叙述时会把指针变量简称

为指针。

39、(1)在计算机科学中,二叉树是每个结点最多有两个子树的有序树。通常子树的根被称

作“左子树”和“右子树”。二叉树常被用作二叉查找树和二叉堆或是二叉排序树。

(2)二叉树也是递归定义的,其结点有左右子树之分,逻辑上二叉树有五种基本形态:

(1)空二叉树

(2)只有一个根结点的二叉树

(3)只有左子树

(4)只有右子树

(5)完全二叉树

40、(1)3 (2)321

41、(2)97555

42、

43、

44、

45、最小生成树有多个,所以以下两种都是答案



版权声明:本文为weixin_45952706原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。