A、 栈底元素一定是最后入栈的元素
B、 栈顶元素一定是最先入栈的元素
C、 栈操作遵循先进后出的原则
D、 以上三种说法都不对
答案:C
解析:【解析】栈是一种“先进后出”的线性表,最先入栈的元素最后出栈,最后入栈的元素最先出栈,所以栈底元素一定是最先入栈最后出栈的元素,而栈顶元素一定是最后入栈最先出栈的元素。答案选择C选项。
A、 栈底元素一定是最后入栈的元素
B、 栈顶元素一定是最先入栈的元素
C、 栈操作遵循先进后出的原则
D、 以上三种说法都不对
答案:C
解析:【解析】栈是一种“先进后出”的线性表,最先入栈的元素最后出栈,最后入栈的元素最先出栈,所以栈底元素一定是最先入栈最后出栈的元素,而栈顶元素一定是最后入栈最先出栈的元素。答案选择C选项。
A. 10
B. 11
C. 9
D. 8
解析:【解析】“++”和“—”运算,当以前缀形式出现时,则先进行加一或减一操作,再取值,当以后缀形式出现时,则先取值,再进行加一或减一操作。判断条件中if(a++<9)是先用后加,即a的值为9,所以条件不成立,但是a已经进行了自增1操作,a的值此时为10。执行else语句时,因为打印a--,是先用后减,所以先输出10,然后a的值变为9。答案选择A选项。
A. 选择
B. 投影
C. 交
D. 并
解析:【解析】选择和投影操作对单个关系进行操作,选择运算是对行的操作,投影运算是对列的操作。交和并运算要求参与运算的表具有相同的属性,交运算的结果是两个表的公共部分,并运算的结果包含两个表的所有元素。观察三个关系的元组可知,关系T=R∪S。答案选择D选项。
A. 0 2
B. 1 3
C. 5 7
D. 1 2
解析:【解析】(表达式1)&&(表达式2)中,如果表达式1为假或0,那么表达式2就不会被执行。程序首先进入while的判断语句,执行k++和n++。k++为零,不满足循环条件,所以n++不会被执行,while循环结束后,k自增为
A. 栈顶元素最先能被删除
B. 栈顶元素最后才能被删除
C. 栈底元素永远不能被删除
D. 栈底元素最先能被删除
解析:【解析】栈是先进后出的数据结构,因此栈顶元素最后入栈却最先被删除,栈底元素最先入栈却最后被删除。答案选择A选项。
A. C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令。
B. C程序经过编译、链接步骤之后才能形成一个真正可执行的二进制机器指令文件
C. 用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中
D. C语言源程序经编译后生成后缀为.obj的目标程序
解析:【解析】
A. 编译后系统为w分配5个字节
B. 编译后系统为w分配6个字节
C. 编译后系统为w分配58个字节
D. 编译后系统不为w分配存储空间
解析:【解析】w是一个自定义类型,不是变量,故编译后系统不为w分配存储空间。当w定义为结构体变量时才会为其分配存储空间。答案选择D选项。
A. 定义函数
B. 定义常量和外部变量
C. 三种基本结构语句
D. 丰富的数据类型
解析:【解析】
A. 课号,成绩
B. 学号,成绩
C. 学号,课号
D. 学号,姓名,成绩
解析:【解析】学号是学生表S的主键,课号是课程表C的主键,所以选课表SC的关键字应该是与前两个表能够直接联系且能唯一定义的学号和课号。答案选择C选项。
A. 项执行过程为:i=1,total=1,判断while循环条件1<5成立,total=1+1,i=2;判断循环条件执行函数体,直到i=4,total=1+1+2+3+4,i=5;i=5循环条件不成立,退出循环,A项不能实现题目要求,错误。
B. 项执行过程:i=1,total=0,1<=5成立,total=0+1=1,i=2;直到i=5,total=1+2+3+4+5,i=6;i=6条件不成立,退出循环,程序正确。
C. 项执行过程:i=0,total=0,0<5成立,i=1,total=1;直到i=5,total=1+2+3+4+5;i=5条件不成立,退出循环,程序正确。
D. 项执行过程:i=0,total=0,0<=5成立,total=0,i=1;直到i=5,total=1+2+3+4+5,i=6;i=6条件不成立,退出循环,程序正确。
解析:【解析】
A. 程序的规模
B. 程序的效率
C. 程序设计语言的先进性
D. 程序易读性
解析:【解析】遵循结构化程序的设计原则,按结构化程序设计方法设计出的程序具有明显的优点:①程序易于理解、使用和维护;②提高了编程工作的效率,降低了软件开发成本。答案选择D选项。