A、 3
B、 6
C、 8
D、 12
答案:B
解析:【解析】fun的功能是求两数的平均数,并且参数和结果都为整型。题中是用一个函数作为另一个函数的参数,所以应该先做里面嵌套的函数即fun(b,c),值为5。fun(2*a,fun(b,c))即为计算fun(2*4,5),所以结果为(5+8)/2=6。答案选择B选项。
A、 3
B、 6
C、 8
D、 12
答案:B
解析:【解析】fun的功能是求两数的平均数,并且参数和结果都为整型。题中是用一个函数作为另一个函数的参数,所以应该先做里面嵌套的函数即fun(b,c),值为5。fun(2*a,fun(b,c))即为计算fun(2*4,5),所以结果为(5+8)/2=6。答案选择B选项。
A. 所有数据结构必须有根结点
B. 所有数据结构必须有终端结点(即叶子结点)
C. 只有一个根结点,且只有一个叶子结点的数据结构一定是线性结构
D. 没有根结点或没有叶子结点的数据结构一定是非线性结构
解析:【解析】
A. 测试
B. 可行性研究
C. 设计
D. 实现
解析:【解析】软件生命周期可分为:①软件定义期,包括问题定义、可行性研究、需求分析;②软件开发期,包括概要设计、详细设计、实现、测试;③运行维护期。答案选择B选项。
A. 线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的
B. 线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构
C. 线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构
D. 线性表的链式存储结构与顺序存储结构在存储空间的需求上没有可比性
解析:【解析】线性结构常用存储结构为:①顺序存储结构,物理上连续存储,空间位置隐含逻辑位置;②链式存储结构,存储上不连续,通过指针相连。在链式存储方式中,每个结点包含存放数据的数据域和存放指针的指针域。所以链式存储结构所需的存储空间一般要多于顺序存储结构。答案选择B选项。
A. 在基本表中,选择满足条件的元组组成一个新的关系
B. 在基本表中,选择需要的属性组成一个新的关系
C. 在基本表中,选择满足条件的元组和属性组成一个新的关系
D. 以上三种说法均是正确的
解析:【解析】选择运算是指从关系中找出满足给定条件的元组。选择是从行的角度进行的运算,即水平方向抽取记录。经过选择运算得到的结果可以形成新的关系,其关系模式不变,但其中的元组是原关系的一个子集。
A. 字母A、B、C之问可以用空格分隔
B. 字母A、B、C之间不能有分隔符
C. 字母A、B、C之间可以用回车符分隔
D. 字母A、B、C之间可以用Tab键分隔
解析:【解析】在使用scanf函数时要注意,在用“%c”格式输入字符时,分隔符(空格符、制表符(Tab键)、回车符)和转义字符都将作为有效字符进行输入。题目中要求以字符形式输入三个数据,空格、回车符、Tab键均会被视为有效字符赋给对应变量,所以字母A、B、C之间不能有分隔符,答案选择B选项。
A. n(n+1)/2
B. nlog2n
C. n(n-1)/2
D. n/2
解析:【解析】对n个节点的线性表采用冒泡排序,冒泡排序的外循环最多执行n-1遍。第一遍最多执行n-1次比较,第二遍最多执行n-2次比较,以此类推,第n-1遍最多执行1次比较。因此,整个排序过程最多执行n(n-1)/2次比较。答案选择C选项。
A. 多对多
B. 一对一
C. 一对多
D. 多对一
解析:【解析】实体集之间必须通过联系来建立联接关系,包括:①一对一联系(1:
A. 4
B. 34
C. 31
D. 32
解析:【解析】在fun函数中,首先将s[0][k]的值赋给m,然后通过for循环,遍历s[1][k]~s[n-1][k]之中的数,将遇到的比m大的数保存到m中。这是搜索 大值的算法,搜索的是s[0][k]~s[n-1][k]之间的 大值。所以,主函数中fun(a,4,0)的功能就是搜索a[0][0]~a[3][0]之间的 大值,这4个值分别是1、11、21、31,所以 终输出结果是31。答案选择C选项。
A. 循环队列
B. 带链队列
C. 二叉树
D. 带链栈
解析:【解析】线性结构要满足两个条件:①有且仅有一个根结点;②每个结点 多有一个前驱,也 多有一个后继。栈和队列均满足这两个条件,属于线性结构;循环队列是一个头结点和尾结点互为前驱结点和后继结点的特殊的队列,属于线性结构;带链队列、带链栈都是用链表形式来实现的,分别满足队列和栈的条件,只是存储结构不连续,属于线性结构。二叉树除了叶子结点外,每个结点都可以有两个后继结点,属于非线性结构。答案选择C选项。
A. a=(b=c)+1;
B. (a=b)=c=1;
C. a=(b==c)=1;
D. a+b=c;
解析:【解析】赋值运算结合性为由右向左结合,赋值运算符左值为变量,右值为变量或常量,且左右两边数据类型相同才能实现赋值。A项中,将c赋值给b,然后将b加1赋值给a,是正确的赋值语句,正确。B项中,将1赋值给c,赋值运算(a=b)=c中左值为表达式,不是变量不能被赋值,错误。C项中赋值运算(b=c)=1左值为逻辑表达式,不是变量不能被赋值,错误。D项左值a+b为表达式,不是变量不能被赋值,D项错误。