外贸
【案例描述】编程实现:输入int类型的二个变量x、y的值,输出表达式”++x,y--,x+=y-5“的值,并分析原因。输入:3,4输出:2【案例分析】1、输出表达式”++x,y--,x+=y-5“为逗号表达式,其值为最后一个表达式的值。2、逗号运算符的运算优先级最低,以上表达式与”(++x),(y--),(x+=y-5)“等价。3、逗号运算符的结合方向是从左至右。4、如果x=3,y=4,则以上逗号表达式的计算顺序是:(1)先计算表达式”++x“的值:x先加1,得到x=4。++x的值也为4(2)计算表达式”y--“的值:得到y--的值为4,y=3(3)计算表达式”x+=y-5“的值:该表达式即x=x+(y-5)。得到x=2,表达式”x+=y-5“的值也为2(4)这时整个表达式为4,3,2。其值
逻辑运算符:用于逻辑运算。包括与(&&)、或(||)、非(!)三种。【案例描述】输入成绩(为[0,100]上的整数),输出:1、A。如果成绩是[90,100]上的整数。2、B。如果成绩是[75,89]上的整数。3、C。如果成绩是[60,74]上的整数。4、D。如果成绩是[0,59]上的整数。编程时,暂不考虑用户输入其他数据的情形。输入:67输出:C输入:23输出:D【案例分析】1、关系运算表达式的值是逻辑值(成立时值为1,不成立时值为0)。2、逻辑值也是数,可以进行数值运算。如:x=67,则(x<60)+(x<75)的值为1。3、设成绩为x,则表达式(x<60)+(x<75)+(x<90)的值只可能是:(1)0。如果x>=90(2)1。
视图也是数据库对象之一,视图只是一个逻辑上存在的虚表,真正的数据仍然放在原来的基本表中。在数据库中使用视图操作代替基本表,可以起到简化数据访问、保证数据安全、和简化用户管理等作用。创建视图语句的一般格式为:CREATEVIEW<视图名>[<列名>]AS<子查询>[WITHCHECKOPTION]【例5-17】建立男生中选修了高等数学的学生的视图,视图中包括姓名、性别、选修课程名和成绩。CREATEVIEWBOY_math()ASSELECTSname,Ssex,Cname,GradeFROMStudent,SC,CourseWHEREStudent.Sno=SC.SnoANDSC.Cno=Course.CnoAN
FROM子句后面的查询对象不仅局限于一个表(或视图),可以在一个查询中同时涉及两个或两个以上的表(或视图),称为连接查询。连接查询中的WHERE子句可用来表示两个表的连接条件,若有多个条件,可用逻辑运算符进行连接。【例5-15】查询所有学生的学号、姓名、选修课程号、选修课程名、成绩,并且按照成绩降序排列。SELECTStudent.Sno,Sname,SC.Cno,Cname,GradeFROMStudent,SCWHEREStudent.Sno=SC.SnoANDSC.Cno=Course.CnoORDERBYGradeDESC;【例5-16】查询学号20150001的学生选修课中成绩大于80分课程的课程名、成绩
1.单表查询【例5-11】查询所有学生的姓名、学号、所在学院。SELECTSname,Sno,SdeptFROMStudent;注:各列的输出顺序可以与表中顺序不同,根据用户需求可更改。【例5-12】查询全体学生的姓名及其出生年份,出生年份的列名用BIRTHDAY表示。并在出生年份前加入一新列,新列的每行数据均为“出生年份”常量值。SELECTSname,‘出生年份’,2015-SageAsBIRTHDAYFROMStudent 注:查询结果中目标列表达式可以是常量,也可以是表达式或函数。用户还可以通过指定别名来改变查询结果的列标题,格式为:列名|表达式[As]列别名。【例5-13】查询考试不及格学生的学号、课程号和成绩。SELECT*FROMS