A、 课号,成绩
B、 学号,成绩
C、 学号,课号
D、 学号,姓名,成绩
答案:C
解析:【解析】学号是学生表S的主键,课号是课程表C的主键,所以选课表SC的关键字应该是与前两个表能够直接联系且能唯一定义的学号和课号。答案选择C选项。
A、 课号,成绩
B、 学号,成绩
C、 学号,课号
D、 学号,姓名,成绩
答案:C
解析:【解析】学号是学生表S的主键,课号是课程表C的主键,所以选课表SC的关键字应该是与前两个表能够直接联系且能唯一定义的学号和课号。答案选择C选项。
A. 0
B. 1
C. 2
D. 3
解析:【解析】根据在if-else语句中,else总是和 近的if配对的原则,本题中层次关系是:if(!a)与else if(a==0)是一组,在 外层。而if(a)与else是一组,位于else if(a==0)条件的内层。if(!a)与else if(a==0)条件均不成立,所以b未进行任何操作仍为初始值0。答案选择A选项。
A. 在进行模块化程序设计的时候,应首先完成每个模块的编写调试,再集中考虑主程序中的算法
B. 同一程序各模块可由不同人员同时进行编写调试,可提高编写程序的效率
C. 模块化的程序设计是采用自顶向下、逐步细化的原则
D. 程序的每个模块都可通过三种基本结构实现
解析:【解析】进行模块化设计时,首先设计框架,并定义和调试好各个模块之间的输入输出关系,完成各个模块的编写调试后再集中编译,A项错误;各个模块可以由不同人员同时进行编写调试,提高编写程序的效率,B项正确;模块化的程序设计采用自顶向下、逐步细化的原则,C项正确;结构化程序使用三种基本结构可以解决任何复杂的问题,D项叙述正确。答案选择A选项。
A. 单链表
B. 循环链表
C. 双向链表
D. 二叉链表
解析:【解析】对于线性单链表来说,每个结点只有一个指针域,这个指针只能找到其后继结点,但不能找到其前驱结点,因此必须从头指针开始,才能访问到所有的结点;循环链表的 后一个结点的指针域指向表头结点,所有结点的指针构成了一个环状链,只要指出表中任何一个结点的位置就可以从它出发访问到表中其他所有的结点;题目要求是“直接”,如果是双向链表的话,从中间一个点开始,必须先往左一次再掉头往右一次才能遍历。而循环链表只要沿一个方向一直走下去就可以遍历;二叉链表是二叉树的一种链式存储结构,每个结点有两个指针域,分别指向左右子结点,可见,二叉链表只能由根结点向叶子结点的方向遍历,其他部分的结点无法访问。答案选择B选项。
A. 控制流
B. 事件驱动
C. 模块调用
D. 数据流
解析:【解析】数据流图基本符号的含义:①矩形表示数据的外部实体;②圆角的矩形表示变换数据的处理逻辑;③缺少右半边的矩形表示数据的存储;④箭头表示数据流。答案选择D选项。
A. 可行性
B. 有穷性
C. 确定性
D. 美观性
解析:【解析】个或多个),输出(至少一个)以及可行性,不包括美观性。答案选择D选项。
A. 3 5
B. 3,5
C. 3;5
D. 35
解析:【解析】在采用scanf这个函数输入数据时,要严格遵守其输入的规则定义。本题中,由表达式"%d;%d"可知,函数定义的规则是在两个整数之间加分号输入。答案选择C选项。
A. 程序应简单、清晰、可读性好
B. 符号名的命名只要符合语法
C. 充分考虑程序的执行效率
D. 程序的注释可有可无
解析:【解析】程序不仅仅要能够正常运行,还要便于调试和维护,所以程序语句结构应该简单直接,具有良好的可读性,建立良好的程序设计风格。答案选择A选项。
A. Qian,f,95,92
B. Qian,f,85,90
C. Zhao,f,95,92
D. Zhao,m,85,90
解析:【解析】在C语言中,相同类型的结构体变量可以通过等号直接赋值,它会将对应成员一一对应赋值。所以,本题声明并初始化了两个STU结构体变量a和b,然后将a赋给b, 后逐个输出b的各个成员,其实就是初始化a的内容。答案选择D选项。
A. 2*a*b/c/d
B. a*b/c/d*2
C. a/c/d*b*2
D. 2*a*b/c*d
解析:【解析】*与/优先级相同,采用左结合的方式。D项若改为:2*a*b/(c*d)则为正确。答案选择D选项。
A. 6566456
B. 66656
C. 66666
D. 6666656
解析:【解析】输入1:执行case1,输出6,没有遇到break,继续执行case2,输出5,遇到break,跳出;输入2:执行case2,输出6,遇到break,跳出;输入3:执行case3,输出6,没有遇到break,执行default,输出4;输入4:执行default,输出5;输入5:执行default,输出6。后输出结果是6566456。