实验5(1) 参考答案
- 格式:doc
- 大小:71.50 KB
- 文档页数:13
实验5 T-SQL编程1. 自定义数据类型新建一个数据类型ID_Type,用于描述员工编号。
新建一个表Employees3,表结构与Employees 表类似,EmployeeID列的数据类型使用自定义的数据类型。
方法1:使用系统内置的存储过程sp_addtype。
USE YGGLEXEC sp_addtype'ID_Type','char(6)','not null'GO方法2:使用CREATE TYPE语句USE YGGLGOCREATE TYPE ID_Type FROM char(6)NOT NULL;--查看可编程性-类型-用户定义数据类型中的变化IF EXISTS(SELECT name FROM sysobjects WHERE name='Employees3')DROP TABLE Employees3CREATE TABLE Employees3(EmployeeID ID_Type PRIMARY KEY,Name char(10)NOT NULL,Education char(4)NOT NULL,Birthday date NOT NULL,Sex bit NOT NULL DEFAULT 1,WorkYear tinyint NULL,Address varchar(40)NULL,PhoneNumber char(12)NULL,DepartmentID char(3)NOT NULL)GO2. 变量的使用(1)创建一个名为Female的用户变量,并在Employees表中查询所有女员工的编号、姓名、性别DECLARE@Female bit--定义变量,指定变量数据类型SET@Female=0 --为该变量赋初值SELECT EmployeeID,Name,Sex FROM Employees WHERE Sex=@Female;(2)定义一个变量,将员工编号为102201的员工的电话号码赋值给该变量DECLARE@Phone char(12)SET@Phone=(SELECT PhoneNumber FROM Employees WHERE EmployeeID='102201')SELECT a.*,@Phone FROM Employees a WHERE EmployeeID='102201';(3)定义一个变量,用于描述Salary表中000001号员工的实际收入,然后查询该变量DECLARE@RealIncome floatSET@RealIncome=(SELECT InCome-OutCome FROM Salary WHEREEmployeeID='000001')SELECT@RealIncome;3. 运算符的使用(1)查询员工的实际收入SELECT InCome-OutCome AS实际收入FROM Salary;(2)查询工作时间大于5年的员工信息SELECT*FROM Employees WHERE WorkYear>5;4.流程控制语句(1)判断Employees表中是否存在编号为111006的员工,如果存在,则显示该员工信息,如果不存在,则显示查无此人IF EXISTS(SELECT Name FROM Employees WHERE EmployeeID='111006') SELECT*FROM Employees WHERE EmployeeID='111006'ELSESELECT'查无此人'(2)判断姓名为“王林”的员工的实际收入是否高于3000元,如果是,则显示其收入,如果不是,则显示“收入不高于3000元”--先查找实际收入,再进行IF判断IF(SELECT b.InCome-b.OutCome AS实际收入FROM Employees a,Salary b WHERE a.EmployeeID=b.EmployeeID AND ='王林')>3000SELECT b.InCome-b.OutCome AS实际收入FROM Employees a,Salary b WHERE a.EmployeeID=b.EmployeeID AND ='王林'ELSESELECT'收入不高于元'(3)假设变量X的初始值为0,每次加1,直到X变为5,并打印输出DECLARE@X INTSET@X=0WHILE@X<5BEGINSET@X=@X+1PRINT'X='+CONVERT(char(1),@X)ENDGO(4)使用循环输出一个用’*’组成的三角形DECLARE@i INTDECLARE@n INTSET@n=10SET@i=1WHILE (@i<@n)BEGIN--SPACE函数:返回指定个数重复的空格组成的字符串--REPLICATE函数:以指定的次数重复字符表达式PRINT (SPACE((@n-@i)/2)+REPLICATE('*',@i))SET@i=@i+2ENDGO(5)使用CASE语句对Employees表按部门进行分类SELECT EmployeeID,DepartmentID=CASE DepartmentIDWHEN 1 THEN (SELECT DepartmentName FROM Departments b WHEREb.DepartmentID='1')WHEN 2 THEN (SELECT DepartmentName FROM Departments b WHEREb.DepartmentID='2')WHEN 3 THEN (SELECT DepartmentName FROM Departments b WHEREb.DepartmentID='3')WHEN 4 THEN (SELECT DepartmentName FROM Departments b WHEREb.DepartmentID='4')WHEN 5 THEN (SELECT DepartmentName FROM Departments b WHEREb.DepartmentID='5')ENDFROM Employees ORDER BY DepartmentID;5. 自定义函数的使用定义一个函数CHECK_ID:对于一个给定的DepartmentID值,查询该值在Departments表中是否存在,如果存在,则返回1,不存在,则返回0。
实验5:Java类与对象一、实验目的(1)使用类来封装对象的属性和功能;(2)掌握Java类的定义。
(3)java对象的使用二、实验任务(1)按要求编写一个Java程序。
(2)按要求完善一个Java程序,编译、运行这个程序,并写出运行结果。
三、实验内容1.编写一个Java程序片断,以定义一个表示学生的类Student。
这个类的属性有“学号”、“班号”、“姓名”、“性别”、“年龄”,方法有“获得学号”、“获得班号”、“获得性别”、“获得姓名”、“获得年龄”、“获得年龄”。
2.为类Student增加一个方法public String toString( ),该方法把Student类的对象的所有属性信息组合成一个字符串以便输出显示。
编写一个Java Application程序,创建Student类的对象,并验证新增加的功能。
class Student{long studentID;int classID;String name;String sex;int age;public Student(long studentID,int classID,String name,String sex,int age){ this.studentID=studentID;this.classID=classID;=name;this.sex=sex;this.age=age;}public long getStudentID(){return studentID;}public int getClassID(){return classID;}public String getName(){return name;}public String getSex(){return sex;}public int getAge(){return age;}public String toString(){return "学号:"+getStudentID()+"\n班号:"+getClassID()+"\n姓名:"+getName()+"\n性别:"+getSex()+"\n年龄:"+getAge();}}public class StudentDemo{public static void main(String[] args){Student s1=new Student(90221,2,"Tom","male",20);System.out.println(s1.toString());}}运行结果:学号:90221班号:2姓名:Tom性别:male年龄:202.程序填空,程序中包含以下内容:一个学生类(Student),包含:属性:学号s_No,姓名s_Name,性别s_Sex,年龄s_Age。
创新能力参考答案5.(1)①旧牙膏皮的用途:可以收藏、卖钱、做手工制品、当笔使、当圆规用、当直尺、熔化焊盆、当鱼坠、镶书角。
②写出玻璃瓶的用途:盛放东西、当艺术品、当医疗用品、用瓶底画圆、可以回收、可以灭火、可以养鱼、还可以钓鱼、捞鱼、可以收藏、照明辅助材料、做乐器、当擀面杖、做放大镜、利用瓶底聚光生火。
(2)、画出包含三角形结构的东西,并写出或其名称:自行车支架、屋脊、三角尺、红领巾、电视塔、三角铁、脚手架、电线杆拉线、单杠拉线(3)自行车防盗的方法有哪些:自行车加上语音提示器:“主人请注意,有人偷车”,运用指纹识别设备,加锁、加防盗器、加追踪仪、绑柱子或栏杆上、放到屋里、存到停车处、放到警察身边、卸掉自行车的部件、折叠随身携带。
(4)用“踩”的办法可以做哪些事?踩气球游戏、踩死害虫、灭火、把东西踩实、踩坏,做酱时当搅拌器、发送信号、跳舞伴奏、按摩、种地、踩葡萄酿酒、洗衣服、脚踏充气、刹车(5)如果人不需要睡眠,会发生什么结果?节约劳动力、床的用处不太大、能源消耗要大、犯罪率会上升、可能发生通货膨胀、催眠药品会消失、工作效率提高、节省空间、工作时间会延长、费电。
(6)太阳与自然界的哪些事物有关系?花草树木、人、动物、汽车、发电、燃烧、潮汐、月亮、星星。
6、(1)请你写出带“土”、“日”结构的字,越多越好。
土:去、在、圣、至、寺、者、壮、地、场、坚、坏、坦、坛、坑、堤、墁、日:旦、旧、早、旭、旬、旱、时、明、旺、昌、易、晕、第五章收敛思维:99页1、请填上缺去的数字:2 5 8 11 ( 14 );132、以下各词,哪一个与众不同?房屋、冰屋、平房、办公室、茅舍(考虑答这题时可以从分、总的角度考虑,如都是房屋;也可以从字面上分:有两个字、有三个字,三个字自然与众不同了。
)同样的题:沙丁鱼、鲸鱼、鳕鱼、鲨鱼、鳗鱼,哪个与众不同?3、7 10 9 12 11 (14)6、填成语:羽扇纶巾帼须_眉_来眼去日苦多愁善感7、猜灯谜:冲奶粉。
日期实验报告实验5 C++函数、重载与函数模板应用 姓名学号•实验目的(1) 学习函数定义、调用、参数对应关系及传递方法。
(2) 学习重载的定义与应用。
C3)学习函数模板的定义与应用。
• 实验项目1 (项目1:学号lab3_l )⑴编写求2整数m 、n 最大公约数gcd ()和最小公倍数Lcm ()函数;⑵主程 序键盘输入2整数a 、b 作为分数的分子和分母,以a/b 形式输出显示,调 用gcd ()函数做化简运算,再输出显示2整数a 、b 的最大公约数、最小公 倍数和化简后的分式a'/b'。
主程序可重复计算运行。
•实验方法最大公约数(辗转算法):设m>n,⑴k=m%n,若k=0,则n 为最大公约 数;⑵否则,用n 做被除数,k 做除数,回⑴处循环继续。
最小公倍数 1cm : lcmXgcd=mXn, lcm=mXn/gcd•程序代码 ttinclude <iostream> using namespace std; int gcd (int m, int n){ int t;if(m<n) {t=m ;m=n;n=t;} do {t=m%n;m=n;n=t;}while(t!=0);return m; }C++程序设计语言int lcm(int m, int n){ int t;t二m1n/gcd (m, n);return t;}int main (){return 0;•实验结果•结果分析与收获T middl(T a, T b, T c){ T temp;if (b>a) {temp=a;a=b;b=temp;}if(c>a) {temp=a;a=c;c=temp;} if (b>c) return b;else return c;}1 实验项目2(项目2名:学号lab3_2)编写函数模板mid(),用于从3个数据同类型(整/单/双精度数/字符)数据中返回中间数。
创新能力参考答案5.(1)①旧牙膏皮的用途:可以收藏、卖钱、做手工制品、当笔使、当圆规用、当直尺、熔化焊盆、当鱼坠、镶书角。
②写出玻璃瓶的用途:盛放东西、当艺术品、当医疗用品、用瓶底画圆、可以回收、可以灭火、可以养鱼、还可以钓鱼、捞鱼、可以收藏、照明辅助材料、做乐器、当擀面杖、做放大镜、利用瓶底聚光生火。
(2)、画出包含三角形结构的东西,并写出或其名称:自行车支架、屋脊、三角尺、红领巾、电视塔、三角铁、脚手架、电线杆拉线、单杠拉线(3)自行车防盗的方法有哪些:自行车加上语音提示器:“主人请注意,有人偷车”,运用指纹识别设备,加锁、加防盗器、加追踪仪、绑柱子或栏杆上、放到屋里、存到停车处、放到警察身边、卸掉自行车的部件、折叠随身携带。
(4)用“踩”的办法可以做哪些事?踩气球游戏、踩死害虫、灭火、把东西踩实、踩坏,做酱时当搅拌器、发送信号、跳舞伴奏、按摩、种地、踩葡萄酿酒、洗衣服、脚踏充气、刹车(5)如果人不需要睡眠,会发生什么结果?节约劳动力、床的用处不太大、能源消耗要大、犯罪率会上升、可能发生通货膨胀、催眠药品会消失、工作效率提高、节省空间、工作时间会延长、费电。
(6)太阳与自然界的哪些事物有关系?花草树木、人、动物、汽车、发电、燃烧、潮汐、月亮、星星。
6、(1)请你写出带“土”、“日”结构的字,越多越好。
土:去、在、圣、至、寺、者、壮、地、场、坚、坏、坦、坛、坑、堤、墁、日:旦、旧、早、旭、旬、旱、时、明、旺、昌、易、晕、第五章收敛思维:99页1、请填上缺去的数字:2 5 8 11 ( 14 );132、以下各词,哪一个与众不同?房屋、冰屋、平房、办公室、茅舍(考虑答这题时可以从分、总的角度考虑,如都是房屋;也可以从字面上分:有两个字、有三个字,三个字自然与众不同了。
)同样的题:沙丁鱼、鲸鱼、鳕鱼、鲨鱼、鳗鱼,哪个与众不同?3、7 10 9 12 11 (14)6、填成语:羽扇纶巾帼须_眉_来眼去日苦多愁善感7、猜灯谜:冲奶粉。
小学科学实验题目与参考答案实验一:魔法饮料材料:透明杯、水、溶液A(酸性溶液)、溶液B(碱性溶液)、红、蓝、黄三种食用色素实验步骤:1. 在透明杯中倒入一杯水。
2. 将红色食用色素滴入水中,搅拌均匀,观察颜色变化。
3. 将蓝色食用色素滴入水中,搅拌均匀,观察颜色变化。
4. 将黄色食用色素滴入水中,搅拌均匀,观察颜色变化。
5. 分别将溶液A和溶液B滴入不同的杯中,观察颜色变化。
参考答案:1. 当加入红色食用色素时,水的颜色变为红色。
2. 当加入蓝色食用色素时,水的颜色变为蓝色。
3. 当加入黄色食用色素时,水的颜色变为黄色。
4. 当将溶液A滴入杯中时,若溶液A为酸性溶液,则水的颜色不变;若溶液A为碱性溶液,则水的颜色会发生变化。
5. 当将溶液B滴入杯中时,若溶液B为碱性溶液,则水的颜色不变;若溶液B为酸性溶液,则水的颜色会发生变化。
实验二:水的沸点材料:温度计、烧杯、火源、水实验步骤:1. 将烧杯中注入适量的水。
2. 将温度计插入水中。
3. 将烧杯放置在火源上,用火加热水。
4. 在水受热的过程中,观察温度计上的温度变化。
参考答案:1. 当水开始受热时,温度会逐渐上升。
2. 当水温达到100摄氏度时,水开始沸腾。
3. 沸腾时水的温度保持不变,直到水完全蒸发。
4. 实验结果表明,水的沸点为100摄氏度。
实验三:电流的传导材料:电池、导线、小灯泡、图钉、纸夹实验步骤:1. 将电池的正极和负极用导线连接起来。
2. 在导线的末端连接小灯泡。
3. 用图钉将另一端的导线固定在纸夹上。
4. 等待片刻,观察小灯泡是否亮起。
参考答案:1. 当电池的正极和负极被导线连接后,电流开始传导。
2. 如果小灯泡亮起,则说明电流成功通过导线传导到小灯泡,小灯泡发出光亮。
3. 如果小灯泡不亮或闪烁,说明电流无法正常传导,可能是导线接触不良或电池电量不足所致。
通过以上的实验题目与参考答案,我们可以帮助小学生们更好地理解科学知识,培养他们的动手实践能力和探索精神。
中学学科网学海泛舟系列资料 上中学学科网,下精品学科资料中学学科网学海泛舟系列资料 WWW.ZXXK:COM 版权所有@中学学科网 2000年全国初中学生化学素质和实验能力竞赛试题参考答案及评分标准16.铝;银;汞;金刚石 (每空0.5分,共2分)17.⑴化学反应不能得到新的元素;⑵Zn 和Cu (每空1分,共2分)18.氢气;氧气;2∶1;分子数 (每空1分,共4分);⑴氢气;⑵氧气;⑶氧气为3毫升时,氧气与氢气恰好完全反应生成水,剩余气体的体积为0;⑷6 (每空1分,共4分)19.将肥皂水分别逐滴滴入这四种待测溶液并振荡,根据肥皂水滴入后开始产生泡沫时的不同滴数来区分 (2分)20.⑴NaCl 或KNO 3(1分);⑵Na 2CO 3·10H 2O 或CuSO 4·5H 2O(1分);⑶Na 2O 或P 2O 5 (1分)21.挥发出来的HCl 进入石灰水,与Ca(OH)2作用而阻碍了CO 2与Ca(OH)2的作用;(1分) CO 2与生成的CaCO 3作用,生成Ca(HCO 3)2 (1分)22.⑴甲;AgNO 3既可以与NH 4Cl 反应生成AgCl 白色沉淀,又可与(NH 4)2SO 4反应生成微溶的Ag 2SO 4,达不到良好的分离效果。
(每空1分,共2分)⑵①玻璃棒;②偏低;③%100233132⨯-wm w (每空1分,共3分)23.水中:BaCl 2+2AgNO 3=Ba(NO 3)2+2AgCl ↓;液氨中:Ba(NO 3)2+2AgCl=2AgNO 3+BaCl 2↓(2分)24.⑴BaSO 4、CaCO 3;CuSO 4(2分) ⑵CaCO 3(1分) ⑶HCl 气体(1分) ⑷BaCl 2;KOH(2分)25.⑴实验4、实验5;实验1、实验2 (2分) ⑵24 (1分) ⑶16% (1分)二、 实验题(共22分)26.⑴铜绿过滤搅拌稀硫酸 CuSO 4过滤搅拌溶液 NaOH Cu(OH)2−→−∆CuO 2H ∆Cu (7分) ⑵选出的仪器:⑴试管、⑶烧杯、⑷酒精灯、⑸通氢气的玻璃导管、⑹漏斗、⑺滴管、 ⑼铁架台(带铁圈和铁夹)、⑽玻璃棒 (3分)⑶Cu 2(OH)2CO 3+2H 2SO 4 = 2CuSO 4+3H 2O+CO 2↑(1分) Cu(OH)2 △ CuO +H 2O (1分) ⑷铜未冷却便停止通氢气,结果铜又被氧化成氧化铜 (2分)27.⑴图2 (1分) 变蓝;带火星;复燃(3分);⑵D 中有少量CO 2未参加反应并随气体进入E 中生成CaCO 3 (2分);⑶E 中浑浊明显增加 (2分)四、计算题(共12分)28.⑴设A 管中产生的CO 质量为xCO 2 + C △ 2CO (1分) 44 28×2 3.0克-0.8克 x x =2.8克 (1分)⑵设在C 管中参加反应的CO 质量为yCO+CuO △ Cu+CO 2 (1分)28 44 y 3.3克 y=2.1克 (1分)没有参加反应的CO 的质量为2.8克-2.1克= 0.7克 (1分)答:进入C 管的CO 质量为2.8克,离开C 管的CO 质量为0.7克。
目夺市安危阳光实验学校考点13元素周期律1.复习重点1.同周期元素及其化合物性质的递变规律;2.同主族元素及其化合物性质的递变规律,理解元素周期律的实质3..理解元素周期律与原子结构的关系。
4..能根据元素周期律预测元素的性质。
2.难点聚焦元素周期律:(1)元素原子核外电子排布的周期性变化:随着原子充数的增加,元素排列呈周期性变化结论:随着原子序数的递增,元素原子的最外层电子排布呈现周期性变化。
(2)元素原子半径的周期性变化:(3)元素主要化合价的周期性变化:注:①元素重要化合价的变化中O一般无正价,F无正价,最高正价与最低负价的关系;②最高正化合价+|最低负化合价|=8(仅适用于非金属元素)③金属无正价④有些非金属有多种化合价,如:C元素有+2,+4,-4价(在有机物中也可以有-3,-2,-1价);S元素有+4,+6,-2价;Cl元素有-1,+1,+3,+5,+7价;N元素有-3,+1,+2,+3,+4,+5价。
(4)元素的金属性和非金属性的周期性变化:电子层数相同,随着原子序数的递增,原子半径递减,核对核外电子的引力逐渐增强,失电子能力逐渐减弱,得电子能力逐渐增强,即元素的金属性逐渐减弱,非金属性逐渐增强。
①.元素的金属性:指元素气态原子失去电子的能力。
元素金属性强弱判断的实验依据:a.金属单质跟水或酸反应置换出氢气的难易程度:越容易则金属性越强,反之,金属性越弱;b.最高价氧化物对应水化物的碱性强弱:最高价氢氧化物的碱性越强,这种金属元素金属性越强,反之,金属性越弱;c.金属单质间的置换反应例:比较1:①镁与2mL1mol/L 盐酸反应②铝与2mL1mol/L 盐酸反应 所以金属性:l Mg A > 比较2:⑴钠与水反应(回忆) ⑵镁与水反应【实验5-1】 碱性:2aOH Mg(OH)N > 金属性:Na Mg Al >>②元素的非金属性:指元素气态原子得到电子的能力。
元素非金属性强弱判断的实验依据:a.非金属元素单质与氢气化合的难易程度及生成氢化物的稳定性强弱:如果元素的单质跟氢气化合生成气态氢化物容易且稳定,则证明这种元素的非金属性较强,反之,则非金属性较弱; b.最高价氧化物对应水化物的酸性强弱:酸性越强则对应的元素的非金属性越强;c.非金属单质间的置换反应例:222222()l 2HCl l r 2HBr r 2()H F HF H C HI HI +=+2加热22阴暗处混合爆炸,HF 最稳定=(混合气体光照爆炸,HC 稳定)H +B (混合加热反应,HB 较稳定)H +I 缓慢反应,很不稳定非金属性:l r F C >>B >I 对于同一周期非金属元素:如2i l S P S C 、、、等非金属单质与2H 反应渐趋容易,其气态氢化物的稳定性为:432i l S H PH H S HC <<<上述非金属元素最高价氧化物对应水化物的酸性强弱顺序为: 非金属性:i l S P S C <<< 结论: a g l i l N M A S P S C金属性逐渐减弱,非金属性逐渐增强 (5)元素周期律的实质:元素性质的周期性变化是元素原子的核外电子排布的周期性变化的必然结果。
第一章习题答案1.1 选择题1. A2. C3. C4. B5. C6. A7. C8. B9. D 10. A 11. D 12. A 13. A1.2 填空题数据数据的逻辑独立性数据的物理独立性层次数据模型,网状数据模型,关系数据模型能按照人们的要求真实地表示和模拟现实世界、容易被人们理解、容易在计算机上实现实体、记录属性、字段码域一对一、一对多、多对多E-R模型E-R模型层次模型、网状模型、关系模型数据操作、完整性约束矩形、菱形、椭圆形层次模型、一对多网状模型关系模型关系外模式、模式、内模式三级模式、两级映像外模式、模式、内模式数据、程序数据逻辑、数据物理DBMS数据库管理系统、DBA数据库管理员1.4 综合题2.注:各实体的属性省略了3.第二章习题答案1.1 单项选择题1. C2. A3. B4. C5. C6. D7. A8. B1.2 填空题集合2. 能唯一标识一个实体的属性系编号, 学号,系编号关系, 元组, 属性关系模型,关系, 实体, 实体间的联系投影1.4 综合题1. πsnoσcno=’2’SC2. πsnoσcname=’信息系统’SCCOURSE3. πsno,SNAME,SAGESTUDENT第三章习题答案1.1select from jobs1.2select emp_id,fname+'-'+lname as 'Name' from employee1.3select emp_id,fname+'-'+lname as 'Name',Yeargetdate-Yearhire_date as 'worke time' from employee order by 'worke time'2.1select from employee where fname like 'f%'2.2select from employee where job_id='11'2.3select emp_id,fname+'-'+lname as 'Name', Yeargetdate-Yearhire_date as worketime from employeewhere Yeargetdate-Yearhire_date >5order by worketime2.4select from employee where castjob_id as integer>=5 and castjob_id as integer<=8 2.5select from employee where fname='Maria'2.6select from employee where fname like '%sh%' or lname like '%sh%'3.1select from sales where ord_date <'1993-1-1'4.1select distinct bh, zyh from stu_info wherebh inselect bh from stu_infogroup by bhhaving count>30 and count<40order by bh或者是select bh,zyh from stu_infogroup by zyh,bhhaving countbh>30 and countbh<40order by bh4.2select from gbanwhere bh like '计%'4.3select from gfiedwhere zym like '%管理%'4.4select xh,xm,zym,stu_info.bh,rxsj from stu_info,gfied,gban where nl>23and stu_info.zyh=gfied.zyh and stu_info.bh=gban.bh4.5select zyh,count from gbanwhere xsh='03'group by zyh第四章习题答案4.1 单项选择题:B 2、A 3、C 4、A 5、A 6、C 7、C 8、D 9、B 10、A 11、C或B,即书上121页例题中from的写法12、A 13、C 14、C 15、C4.2 填空题:drop tablealter table add <列名或约束条件>with check option基本表基本表distinct group by roder by数据定义数据操纵数据控制distinctlike % _自含式嵌入式10、order by asc desc4.3 综合题1、SELECT XH, XM, ZYM, BH, RXSJFROM STU_INFO, GFIEDWHERE STU_INFO.ZYH = GFIED.ZYH AND NL > 23 AND XBM = '男'2、SELECT ZYM 专业名, count 人数 FROM STU_INFO, GFIEDWHERE STU_INFO.XSH = '03' AND STU_INFO.ZYH = GFIED.ZYHGROUP BY ZYM注意:该题目中给出的条件XSH = '03'中的03代表的是“控制科学与工程”学院,信息学院的代码是12,大家可根据具体情况来做该题;3、SELECT bh,count as 人数 FROM STU_INFO GROUP BY bh4、SELECT XH, XM, XBM, BH FROM STU_INFOWHERE ZYH INSELECT ZYHFROM STU_INFOWHERE XM = '李明'ORDER BY XH5、SELECT DISTINCT GCOURSE.KCH, KM FROM STU_INFO, XK, GCOURSEWHERE XK.KCH = GCOURSE.KCH AND STU_INFO.XSH = '12'AND STU_INFO.XH = XK.XH该题中设计到的课程名称只有在GCOURSE表中存在,所以在题目开始的几个表中还应填加该表;另外把信息学院的代码改为12;6、SELECT COUNTDISTINCT KCH AS 选课门数, AVGKSCJ AS 平均成绩FROM STU_INFO, XKWHERE STU_INFO.XH = XK.XH AND XSH = '12'7、SELECT DISTINCT STU_INFO.XH, XM, BH, ZYM, KMFROM STU_INFO, XK, GFIED, GCOURSEWHERE KSCJ > 85 AND STU_INFO.XH = XK.XH AND XK.KCH = GCOURSE.KCH AND STU_INFO.ZYH = GFIED.ZYHORDER BY ZYM, BH, STU_INFO.XH8、SELECT STU_INFO.XH, XM, XSM, ZYM, BH, PYCCMFROM STU_INFO, XK, GDEPT, GFIEDWHERE KKNY = '20011' AND STU_INFO.XH = XK.XH AND STU_INFO.XSH = GDEPT.XSH AND STU_INFO.ZYH = GFIED.ZYHGROUP BY STU_INFO.XH, XM, XSM, ZYM, BH, PYCCMHAVING COUNT > 109、SELECT DISTINCT bhFROM STU_INFO10、DELETE FROM STU_INFOWHERE XH LIKE '2000%'或DELETE FROM STU_INFOWHERE LEFTXH,4 = '2000'11、ALTER TABLE STU_INFOADD BYSJ varchar812、UPDATE XKSET KSCJ = 60WHERE KSCJ BETWEEN 55 AND 59 andXH inSELECT xhFROM stu_infoWHERE zyh = '0501'andKCH inSELECT kchFROM gcourseWHERE km = '大学英语'前面已经考虑到在该题目中应该加入学生课程信息表GCOURSE13、UPDATE GCOURSESET KCXF=6WHERE KCH = '090101'14、CREATE TABLE CCOURSEKCH char6,KM varchar30,KCYWM varchar3015、CREATE VIEW ISE ASSELECTFROM STU_INFOWHERE XSH=’12’第五章课后答案5.11~7 BABABCB5.21 使属性域变为简单域消除非主属性对主关键字的部分依赖消除非主属性对主关键字的传递依赖2 平凡函数依赖3 Y也相同唯一的Y值5.31 函数依赖:P136定义5.1部分函数依赖:P138定义5.4完全函数依赖:P138定义5.4传递函数依赖:P138定义5.51NF:P139定义5.62NF:P141定义5.73NF:P142定义5.8BCNF:P144定义5.9在全码关系中R〈U,F〉中若存在这样的码X,属性组Y及非主属性Z 使得X→Y, Y→Z成立,所以全码关系R〈U,F〉∈3NF;在全码关系R〈U,F〉中,对于R中的函数依赖,若X→Y且X必含有码,所以全码关系R∈BCNF 2 1 R的码是Sno,Cno,R是1NF,因为Teacher和Title属性部分函数依赖于码Sno,Cno,所以R∈1NF2SCSno,Cno,GradeCTCno,teacher TTTeacher,title3 D->B C->A4 需求分析需求分析是数据库设计的第一个阶段,从数据库设计的角度来看,需求分析的任务是对现实世界要处理的对象组织、部门、企业等进行详细的调查了解,通过对原系统的了解,收集支持新系统的基础数据并对其进行处理,在此基础上确定新系统的功能;概念结构设计阶段将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计;简单地说数据库概念结构设计的任务就是根据需求分析所确定的信息需求,建立信息模型;如E-R模型;逻辑结构设计阶段数据库逻辑结构设计的任务是把概念结构设计阶段所得到的与DBMS无关的数据模式,转换成某一个DBMS所支持的数据模型表示的逻辑结构;数据库物理设计阶段数据库物理设计是对给定的关系数据库模式,根据计算机系统所提供的手段和施加的限制确定一个最适合应用环境的物理存储结构和存取方法数据库实施阶段在数据库实施阶段,设计人员运用DBMS提供的数据语言及其宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行数据库运行和维护阶段数据库应用系统经过试运行后即可投入正式运行;在数据库系统运行过程中必须不断地对其进行评价、调整与修改;包括:数据库的转储和恢复、数据库的安全性和完整性控制、数据库性能的监督、分析和改进、数据库的重组织和重构造;P149最后一段ER图是用来描述某一组织单位的概念模型,提供了表示实体、属性和联系的方法;构成ER图的基本要素是实体、属性和关系;实体是指客观存在并可相互区分的事特;属性指指实体所具有的每一个特性;商店商店编号,商店名,地址,电话码:商店编号顾客顾客编号,姓名,性别,家庭住址,出生年月码:顾客编号消费商店编号,顾客编号,消费金额码:商店编号,顾客编号第六章习题答案6.1 单项选择题1、A2、D3、D4、D5、B6、D7、C6.2 填空题1、原子性一致性隔离性持续性 ACID2、软故障硬故障3、静态动态4、丢失修改不可重复读读“脏”数据5、自主存取控制强制存取控制6、实体完整性约束参照完整性约束用户自定义完整性约束6.4 综合题create table 读者借书证号 char10 primary key,姓名 varchar10 not null,年龄 tinyint not null,所在院系 varchar20 not nullcreate 图书图书号 char8 primary key,书名 varchar20 not null,作者 varchar10 not null,出版社 varchar30 not null,价格 real not null check价格>0 and 价格<=120create 借阅借书证号 char10 not null,图书号 char8 not null,借阅日期 datetime not null,primary key借书证号, 图书号,foreign key借书证号 references 读者借书证号,foreign key图书号 references 图书图书号实验4 答案Select xh,xm,xbm from stu_info,gdept where stu_info.xsh=gdept.xsh and gdept.xsm=’信息科学与工程’或 Select xh,xm,xbm from stu_info where xsh=select xsh from gdept where xsm=’信息科学与工程’Select stu_info.xh,xm,km from stu_info,xk,gcourse where stu_info.xh=xk.xh and xk.kch=gcourse.kch and kscj>85Select xh,xm,xsm from stu_info,gdept where stu_info.xsh=gdept.xsh and xh like ‘2000%’Select xh, xm from stu_info where xh in select xh from xk where kch=’090101’ and kscj<60或 select stu_info.xh,xm from stu_info,xk where stu_info.xh=xk.xh and kch=’090101’ and kscj<605. select stu_info.xh,xm,km from stu_info,xk,gcourse where stu_info.xh=xk.xh and xk.kch=gcourse.kch and xsh=’12’ and kscj<606. select stu_info.xh,xm,xsm from stu_info,xk,gdept where stu_info.xsh=gdept.xsh and stu_info.xh=xk.xh and kkny=’20011’ group by stu_info.xh,xm,xsm having count>=10实验5 答案1、2题参考实验4答案3. Select xh,xm,xbm,bh from stu_info where zyh in select zyh from stu_info where xm=’李明’ order by xh实验6答案Create view num_ban as select countdistinct bh from stu_infoCreate view ban as select distinct bh from stu_infoCreate view is_stu as select xm,xbm,bh from stu_info where xsh=’01’ orxsh=’02’Create view zhang_stu as select from stu_info where xsh=’01’ and xm like ‘张%’或 Create view zhang_stu as select from stu_info,gdept where xsm=’材料科学与工程’ and xm like ‘张%’ and stu_info.xsh=gdept.xsh8. Create view 材0168 as select stu_info.,xk. from stu_info,xk where bh=’材0168’ and stu_info.xh=xk.xhCreate view gaoshu _stu as select xm from stu_info,xk,gcourse where stu_info.xh=xk.xh and gcourse.kch=xk.kch and km=’高等数学’或 Create view gaoshu _stu as select xm from stu_info where xh inselect xh from xk where kch =select kch from gcourse where km=’高等数学’。
实验五、NO1信令实验一、实验目的1、通过数据配置,了解NO1中继电路的工作原理,实现一号中继通话的信令收发过程。
2、掌握一号数据的制作3、初步了解号码变换.二、实验器材数字程控交换机独立局、BAM。
电话机若干三、实验内容说明程控交换机2M接口在DDF架上的位置:交换机SM模块板位如下图所示:(SM模块)四、知识要点1、一些概念解释:a、局向:当一个交换局和本局有直连电路,那么这个交换局就为一个局向。
b、子路由:两个交换局之间的直连语音通道就是两个交换机间的子路由c、路由:两个交换局之间的所有子路由的集合d、路由选择码:以被叫字冠来选择出局策略。
(需要特别注意,和呼叫源的路由选择源码配合决定出局选路。
这里很容易出问题)2、信令的分类,随路信令的概念,及特点3、自环数据的特点;●设置一个虚拟的对端局,并相应设置局向号。
●需要偶数个PCM系统进行自环.●业务字冠属性应设置为本地或本地以上,并且设置路由选择码。
●对进行自环的中继群设置中继群承载数据,对被叫号码进行号码变换。
4、NO.1自环中继模拟两个交换局呼叫,通过一块中继板的2个PCM电路模拟本局的出局和对局的入局。
注意出局中继的2条PCM电路的数据设定方式,1#PCM电路分为出中继(前15条电路),入中继(后15条中继);2#PCM电路分为入中继(前15条中继),出中继(后15条电路)。
五、数据规划本局信令点AAAAAA,要求程控交换机已经有本局硬件配置数据运行正常。
本局业务数据可以在本实验中增加,也可以按照上节实验中的数据一次性导入。
本实验采用自环方式实现一号信令呼叫。
呼叫源本局字冠长途字冠局向号子路由路由中继群号中继电路号设备号号段路由选择码路由选择源码计费选择码计费选择源码0 555 010 1 1 1 1-2 0-63 0-63 5550000 1 1 1 1—55500631、硬件配置要求:需要1块中继板,板位均为DTM板。
如果板位不是DTM,可以通过前面基本硬件数据修改。
上机实验五循环结构程序设计(一)一.目的要求1.掌握while、do-while、for语句的语法规则、执行流程。
2.比较3种循环语句的异同。
3.按题目要求,完成代码。
二.实验内容思考问题:3种循环的异同点?能否相互转换?for循环控制单元的表达式与while循环中表达式是如何对应的?第1题、分别用while、do-while、for语句编程,求数列前20项之和:2/1,3/2,5/3,8/5,13/8······算法提示:1)定义实变量sum、term、a、b、c,整变量i2)初始化:sum=0,分子a=2,分母b=13)初始化:i(计数器)=14)计算第i项term =a/b5)累加sum=sum+term6)计算c=a+b,更新b= a,更新a=c7)计数器加1,i++8)重复4、5、6、7,直到i>209)输出2位精度的结果编写程序:方法一,用while语句:#include<stdio.h>void main(){float s=0, a=2,b=1,c;int i=1;while(i<=20){s=s+a/b;c=a+b;b=a;a=c;i++;}printf(“s=%.2f”,s);}方法二,用do-while语句:#include<stdio.h>void main(){float s=0,a=2,b=1,c;int i=1;do {s=s+a/b;c=a+b;b=a;a=c;i++;} while(i<=20);printf(“s=%.2f”,s);}方法三,用for语句:#include<stdio.h>void main(){float s=0,a=2,b=1,c;int i;for(i=1;i<=20;i++){s=s+a/b;c=a+b;b=a;a=c;}printf(“s=%.2f”,s);}第2题、计算多项式的值:s=1!+2!+3!+4!+ (20)算法提示:该多项式迭代公式为:term=term*i,sum=sum+term注意:哪些变量需要初始化?变量应采用什么类型?编写程序:#include<stdio.h>void main(){int i;double s=0,fact=1;for(i=1;i<=20;i++){fact*=i;s=s+fact;}printf(“s=%f”,s);}把每一次迭代结果输出,程序应做怎样的修改?第3题、输入x和n,计算并输出下式的值:s=x/1+x/3+……+x/n参考答案:#include <stdio.h>int main(){int n,i;float x,s=0;printf("请输入x,n,以,分隔");scanf("%f,%d",&x,&n);for(i=1;i<=n;i+=2){s+=(x/i);}printf("\ns=%f",s);}第4题、输入一批正整数,求出其中的偶数之和。
实验5(1) 类的组合参考答案一、实验目的与实验要求(1)理解类组合的概念与作用。
(2)掌握对象成员的定义方法,理解对象成员的构造与析构方法。
(3)理解组合后类的构造函数与析构函数的调用次序。
(4)掌握对象成员中私有成员和保护成员的访问方法。
二、实验内容题目1:对象成员的定义、构造与访问。
定义三个类Member1、Member2和New。
Member2中包含有Member1类型的成员,New中包含有Member1与Member2类型的成员。
程序的具体要求如下。
①在Member1类中,它含有一个int型私有数据成员x以及三个公有成员函数。
三个成员函数分别为构造函数、析构函数与显示函数show( )。
show( )函数的作用是输出x的值。
②在Member2类中,它含有三个私有数据成员,分别是Member1型的对象obj1、obj2与int型的数据y。
此外,它还含有三个公有成员函数,分别是构造函数、析构函数与显示函数show( )。
show( )函数的作用是输出y的值。
③在New类中,它含有三个私有数据成员,分别是Member1型的对象m1、Member2型的对象m2与int型的数据z。
此外,它还含有三个公有成员函数,分别是构造函数、析构函数与显示函数show( )。
show( )函数的作用是输出z的值。
④main( )函数中定义一个New型的对象,并调用show( )函数。
程序为:#include<iostream>using namespace std;class Member1{public:Member1(int a){x = a;cout << "constructing Member1 " << x << endl;}~Member1( ){cout << "donstructing Member1\n";}void show( ){cout << "Member1 x = " << x << endl;}private:int x;};class Member2{public:Member2( int a,int b,int c ):obj1(a),obj2(b){y = c;cout << "constructing Member2 " << y << endl;}~Member2( ){cout << "donstructing Member2\n";}void show( ){cout << "Member2 y = " << y << endl;}private:Member1 obj1, obj2;int y;};class New{public:New( int a,int b,int c,int d,int e): m1(a),m2(b,c,d){z = e;cout << "constructing New " << z << endl;}~New( ){cout << "donstructing New\n";}void show( ){cout << "New z = " << z << endl;}private:Member1 m1;Member2 m2;int z;};int main( ){New ex(1,2,3,4,5);ex.show( );return 0;}题目2:类组合的应用。
编写一个程序,对一批学生的资料进行处理。
程序的具体要求如下。
①编写日期类Date,它含有三个私有int型数据成员year、month、day,分别表示年、月、日。
此外,它还含有五个公有成员函数,分别是构造函数、显示函数Show( )、取值函数GetYear( )、GetMonth( )和GetDay( )。
Show( )的功能是输出当前对象的日期,GetYear( )、GetMonth( )、GetDay( )的作用分别是返回year、month和day的值。
②编写学生类Student,它含有三个私有数据成员,分别是字符串型变量name、int型变量score与Date型变量birthday,分别表示学生的姓名、成绩与出生日期。
此外,它还含有五个公有成员函数,分别是构造函数、显示函数Show( )、取值函数GetName( )、GetScore( )和GetDate( )。
Show( )的功能是输出当前对象的所有信息,GetName( )、GetScore( )、GetDate( ) 的作用分别是返回name的首地址、score的值以及birthday的值。
③编写函数CompareDate。
它的原型如下,它的作用是比较日期d1和d2的前后。
如果d1在d2前,返回-1,如果d1在d2后,返回1,如果d1和d2是同一天,返回0。
int CompareDate( Date d1, Date d2 );④编写函数SortByName。
它的原型如下,它的作用是对st数组的前num个数据按姓名进行排序。
void SortByName( Student * st , int num );⑤编写函数SortByScore。
它的原型如下,它的作用是对st数组的前num个数据按成绩进行排序。
void SortByScore( Student *st , int num );⑥编写函数SortByBirthday。
它的原型如下,它的作用是对st数组的前num个数据按出生日期进行排序。
void SortByBirthday( Student * st, int num );⑦编写函数PrintStudent。
它的原型如下,它的作用是输出st数组的前num项。
void PrintStudent( Student *st , int num );⑧编写主函数main( ),在main( )中定义对象数组st,并调用上述函数进行测试。
st数组使用下列数据进行初始化。
Jack, 99, 1990, 2, 5Mike, 62, 1989, 12, 25Tom, 88, 1990, 3, 14Kate, 74, 1989, 10, 15Rowen, 92, 1990, 5, 22程序如下:#include<iostream>using namespace std;class Date{public:Date( int y = 2000 , int m = 1 , int d = 1 ){year = y;month = m;day = d;}void Show( ){cout << year << "-" << month << "-" << day << endl;}int GetYear( ){return year;}int GetMonth( ){return month;}int GetDay( ){return day;}private:int year;int month;int day;};class Student{public:Student( int y=0,int m=0,int d=0,int s=0,char *p=" " ): birthday(y,m,d){strcpy( name, p );score = s;}void Show( ){cout << name << " " << score << " ";birthday.Show();}char * GetName( ){return name;}int GetScore( ){return score;}Date GetDate( ){return birthday;}private:char name[20];int score;Date birthday;};int CompareDate( Date d1, Date d2 );void SortByName( Student *, int num );void SortByScore( Student *, int num );void SortByBirthday( Student *, int num );void PrintStudent( Student *, int num );int main( ){Student st[5] = {Student(1990,2,5,99,"Jack"),Student(1989,12,25,62,"Mike"),Student(1990,3,14,88,"Tom"),Student(1989,10,15,74,"Kate"),Student(1990,5,22,92,"Rowen")};PrintStudent( st,5);cout<<endl;SortByName(st,5);PrintStudent(st,5);cout<<endl;SortByScore(st,5);PrintStudent(st,5 );cout<<endl;SortByBirthday(st,5);PrintStudent(st,5);return 0;}int CompareDate( Date d1, Date d2 ){ //int t;if (d1.GetYear()<d2.GetYear())return-1;else if(d1.GetYear()==d2.GetYear())if(d1.GetMonth()<d2.GetMonth())return -1;else if (d1.GetMonth()==d2.GetMonth())if(d1.GetDay()<d2.GetDay())return -1;else if (d1.GetDay()==d2.GetDay())return 0;else return 1;else return 1;else return 1;}void SortByName( Student *st, int num ){Student t;int k;for(int i=0;i<num;i++){ k=i;for(int j=i+1;j<num;j++)// if(st[k].GetName()>st[j].GetName())if(strcmp(st[k].GetName(),st[j].GetName() )>0)k=j;t=st[k];st[k]=st[i];st[i]=t;}}void SortByScore( Student *st, int num ){Student t;int k;for(int i=0;i<num;i++){ k=i;for(int j=i+1;j<num;j++)if(st[k].GetScore()<st[j].GetScore())k=j;t=st[k];st[k]=st[i];st[i]=t;}}void SortByBirthday( Student *st, int num ){Student t;int k;for(int i=0;i<num;i++){ k=i;for(int j=i+1;j<num;j++)if(CompareDate(st[k].GetDate(),st[j].GetDate())==1) k=j;t=st[k];st[k]=st[i];st[i]=t;}}void PrintStudent( Student *st, int num ){ for (int i=0;i<num;i++)st[i].Show();}运行结果为:Jack 99 1990-2-5Mike 62 1989-12-25Tom 88 1990-3-14Kate 74 1989-10-15Rowen 92 1990-5-22Jack 99 1990-2-5Kate 74 1989-10-15Mike 62 1989-12-25Rowen 92 1990-5-22Tom 88 1990-3-14Jack 99 1990-2-5Rowen 92 1990-5-22Tom 88 1990-3-14Kate 74 1989-10-15Mike 62 1989-12-25Kate 74 1989-10-15Mike 62 1989-12-25Jack 99 1990-2-5Tom 88 1990-3-14Rowen 92 1990-5-22Press any key to continue三、实验指导题目1指导:①程序的主要代码如下,在横线上补充相应的语句。