山东财经大学《C语言程序设计》2017-2018学年期末试卷.pdf
山东财经大学《C语言程序设计》
2017-2018学年第一学期期末
一、选择题(共10小题,每小题3分,共30分)
1.以下不正确的C语言标识符是_____。
A.intB.a_1_2C.ab1exeD._x
2.以下是正确的C语言标识符是_____。
A.#defineB._123C.%dD.\n
3.在C语言中,整数-8在内存中的存储形式是_____
A.1111111111111000B00001000
C.0000000000001000D.1111111111110111
4.下面各选项组中,均是C语言关键字的组是_____
A.auto,enum,includeB.switch,typedef,continue
C.signed,union,scanfD.if,struct,type
5.下列不属于C语言关键字的是_____
A.defaultB.registerC.enumD.external
6.C语言程序从main()函数开始执行,所以这个函数要写在____。
A.程序文件的开始B.程序文件的最后
C.它所调用的函数的前面D.程序文件的任何位置
7.下列关于C语言的叙述错误的是____
A.大写字母和小写字母的意义相同
B.不同类型的变量可以在一个表达式中
C.在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型
D.同一个运算符号在不同的场合可以有不同的含义
8.在C语言中,错误的int类型的常数是。
A.32768B.0C.037D.0xAF
9.执行语句printf(%x,-1);屏幕显示____。
A.-1B.1C.-ffffD.ffff
10.已知longi=32768;执行语句printf(%d,i);屏幕显示____。
A.-1B.-32768C.1D.32768
二、填空题(共10小题,每小题3分,共30分)
1.有序线性表能进行二分查找的前提是该线性表必须是_____存储的。
2.一棵二叉树的中序遍历结果为DBEAFC,前序遍历结果为ABDECF,则后序遍历结果为_____。
3.对软件设计的最小单位(模块或程序单元)进行的测试通常称为_____测试。
4.实体完整性约束要求关系数据库中元组的_____属性值不能为空。
5.在关系A(S,SN,D)和关系B(D,CN,NM)中,A的主关键字是S,B的主关键字是D,则称_____
是关系A的外码。
6.以下程序运行后的输出结果是_____
#includemain()
{inta;a=(int)((double)(3/2)+0.5+(int)1.99*2);
printf(%d\n,a);}
7.有以下程序
#includemain()
{intx;scanf(%d,x);if(x15)printf(%d,x-5);
if(x10)printf(%d,x)if(x5)printf(%d\n,x+5);
}若程序运行时从键盘输入12回车,则输出结果为_____
8.在关系代数运算中,从关系中取出满足条件的元组的运算称为_____
9.在关系代数运算中,从一个关系R中选取所需要的列组成一个新关系运算称为_____
10.如果一个属性或属性集合的值能唯一标识一个关系的元组而不含有多余的属性,则称该
属性或属性集合为该关系的_____
三、编程题(共2小题,每小题20分,共40分)
1.有一套四位数加密系统,输入四位数以后会自动加密。加密规则如下:每位数字都加上5,
然后用和除以10的余数代替该数字,分别再将第一位和第四位交换、第二位和第三位交换,
请用C语言写出此加密算法。
2.编写程序,输入平面坐标系中的一条线段的两个端点(x1,y1),(x2,y2)的坐标x1、y1、x2和
y2,计算并输出这两点之间的距离。