广东海洋大学学生实验报告书(学生用表)
- 格式:doc
- 大小:145.50 KB
- 文档页数:3
nGDOU-B—11—112广东海洋大学学生实验报告书(学生用表)课程名称课程号学院(系)信息学院专业班级学生姓名学号实验地点04002 实验日期实验一连时间信号的MATLAB表示和连续时间LTI系统的时域分析一、实验目的1.掌握MA TLAB产生常用连续时间信号的编程方法,并熟悉常用连续时间信号的波形和特性;2.运用MATLAB符号求解连续系统的零输入响应和零状态响应;3.运用MATLAB数值求解连续系统的零状态响应;4.运用MATLAB求解连续系统的冲激响应和阶跃响应;5.运用MATLAB卷积积分法求解系统的零状态响应。
二、实验原理1. 连续信号MATLAB实现原理从严格意义上讲,MA TLAB数值计算的方法并不能处理连续时间信号.然而,可用连续信号在等时间间隔点的取样值来近似表示连续信号,即当取样时间间隔足够小时,这些离散样值能够被MATLAB处理,并且能较好地近似表示连续信号.MATLAB提供了大量生成基本信号的函数.比如常用的指数信号、正余弦信号等都是MATLAB的内部函数。
为了表示连续时间信号,需定义某一时间或自变量的范围和取样时间间隔,然后调用该函数计算这些点的函数值,最后画出其波形图.三、实验内容1.实例分析与验证根据以上典型信号的MA TLAB函数,分析与验证下列典型信号MA TLAB程序,并实现各信号波形图的显示,连续信号的图形显示使用连续二维图函数plot().(1)正弦信号:用MA TLAB命令产生正弦信号2sin(2/4)ππ+,并会出时间0≤t≤3的波形图。
程序如下:K=2;w=2*pi ;phi=pi/4;t=0:0.01:3;ft=K*sin (w*t+phi );plot(t,ft ),grid on ;axis ([0,3,-2。
2,2.2])title (’正弦信号’)(2) 抽样信号:用MA TLAB 中的sinc(t)函数命令产生抽样信号Sa(t),并会出时间为66t ππ-≤≤的波形图。
广东海洋大学学生实验报告书(学生用表)实验名称实验二.软件需求分析课程名称软件工程课程号32342206 学院(系) 数学与计算机学院专业计算机科学与技术班级计科1171学生姓名李明海学号201711621116 实验地点科技楼423实验日期2019年10月23日一、实验目的(1)熟悉并掌握StarUML工具的用法;(2)理解和掌握StarUML工具用于需求分析的用法;(3)掌握面向对象分析、设计的方法二、实验任务完成实验指导上实验1、实验2、实验3的实验任务。
三、实验仪器设备和材料安装有StarUML工具的PC机。
四、实验内容和步骤任务1:完成下张幻灯片中顺序图的绘制GDOU-B-11-112任务2:请完成教学管理系统中“设置开设课程”的顺序图任务3:图书管理系统功能性需求说明如下。
图书管理系统能够为一定数量的借阅者提供服务。
每个借阅者能够拥有唯一标识其存在的编号。
图书馆向每一个借阅者发放图书证,其中包含每一个借阅者的编号和个人信息。
提供的服务包括提供查询图书信息、查询个人信息服务和预订图书服务等。
当借阅者需要借阅图书、归还书籍时,需要通过图书管理员进行,即借阅者不直接与系统交互,而是通过图书管理员充当借阅者的代理和系统交互。
系统管理员主要负责系统的管理维护工作,包括对图书、数目、借阅者的添加、删除和修改,并且能够查询借阅者、图书和图书管理员的信息。
可以通过图书的名称或图书的ISBN/ISSN号对图书进行查找。
回答下面问题:(1)该系统中有哪些参与者?(2)画出语境“借阅者预订图书”的顺序图。
答:(1)该系统中有借阅者、图书管理员、系统管理员参与者。
(2)“借阅者预订图书”的顺序图:成绩指导教师日期2019年10月28日注:请用A4纸书写,不够另附纸。
第页,共页。
GDOU-B-11-112广东海洋大学学生实验报告书(学生用表)实验名称实验2数据的查询、更新课程名称数据库系统原理课程号1620072学院(系) 信息学院专业计算机科学与技术班级 1113学生姓名学号实验地点科技楼实验日期04-12实验二数据的查询、更新一、实验目的1、掌握用户自定义数据类型的方法2、掌握用T-SQL语句进行数据的插入、修改、删除的方法3、熟练掌握SELECT语句,能够运用该语句完成各种查询二、实验要求1、实验前做好上机实验的准备,针对实验内容,认真复习与本次实验有关的知识,完成实验内容的预习准备工作;2、能认真独立完成实训内容;3、实验后做好实验总结,根据实验情况完成总结报告。
三、实验内容1、用T-SQL语句,创建一用户自定义数据类型:名称为“char20”,数据类型为varchar,长度为20,允许为空。
sp_addtype char20,'varchar(20)',null2、用T-SQL语句,建立一个“学生课程数据库”,在此基础上建立该数据库包含的学生表,课程表,学生选修表,并向各表插入如下相应的数据。
(1) 建立“学生课程数据库”数剧库:CREATE DATABASE学生课程数据库ON PRIMARY(NAME=Student_dat,FILENAME='D:\学生课程数据库.mdf',SIZE=10MB,MAXSIZE=50MB,FILEGROWTH=10%)LOG ON(NAME=Student_log,FILENAME='D:\学生课程数据库.ldf',SIZE=5MB,FILEGROWTH=10%)GO(2)创建学生表CREATE TABLE Student(Sno INT PRIMARY KEY,Sname CHAR(10),Ssex CHAR(2)CHECK(Ssex='男'OR Ssex='女'),Sage SMALLINT CHECK(Sage BETWEEN 15 AND 30),Sdept CHAR(20));插入数据:INSERT INTO Student( Sno ,Sname,Ssex,Sage,Sdept )VALUES('95001','李敏勇','男',20,'CS') INSERT INTO Student( Sno ,Sname,Ssex,Sage,Sdept )VALUES('95002','刘晨','女',19,'IS')INSERT INTO Student( Sno ,Sname,Ssex,Sage,Sdept )VALUES('95003','王敏','女',18,'MA')INSERT INTO Student( Sno ,Sname,Ssex,Sage,Sdept ) VALUES('95004','张立','男', 18 ,'IS');(2)创建课程表CREATE TABLE Course(Cno CHAR(4)PRIMARY KEY,Cname CHAR(10)NOT NULL,Cpno CHAR(4),Credit INT CHECK(Credit>=0 AND Credit<=100), Teacher char20);插入数据:INSERT INTO Course ( Cno,Cname,Cpno,Credit,Teacher)VALUES(1,'数据库',5, 4,'王芳')INSERT INTO Course ( Cno,Cname,Cpno,Credit,Teacher)VALUES(2 ,'数学',NULL,2,'刘新')INSERT INTO Course ( Cno,Cname,Cpno,Credit,Teacher)VALUES(3 ,'信息系统',1,4,'刘新')INSERT INTO Course ( Cno,Cname,Cpno,Credit,Teacher) VALUES(4,' 操作系统', 6, 3,'高升')INSERT INTO Course ( Cno,Cname,Cpno,Credit,Teacher)VALUES(5 ,'数据结构',7, 4,'宋明')INSERT INTO Course ( Cno,Cname,Cpno,Credit,Teacher)VALUES(6 ,'数据处理',NULL,2,'张彬')INSERT INTO Course ( Cno,Cname,Cpno,Credit,Teacher)VALUES(7,'Pascal语言',6,4,'李磊');(2)创建学生选修表CREATE TABLE SC(Sno INT FOREIGN KEY REFERENCES Student(Sno),Cno CHAR(4)FOREIGN KEY REFERENCES Course(Cno), Grade INT CHECK( Grade>=0 AND Grade<=100 ), PRIMARY KEY(Sno,Cno));插入数据:INSERT INTO SC ( Sno,Cno,Grade)VALUES('95001','1',92)INSERT INTO SC ( Sno,Cno,Grade)VALUES('95001','2',85)INSERT INTO SC ( Sno,Cno,Grade)VALUES('95001','3',88)INSERT INTO SC ( Sno,Cno,Grade)VALUES('95002','2',90)INSERT INTO SC ( Sno,Cno,Grade)VALUES('95003','2',55)INSERT INTO SC ( Sno,Cno,Grade)VALUES('95004','2',70)3、用T-SQL语句,修改上面所建学生课程数据库中数据:1) 向学生表:Student中加入一条记录:(95030,谢非,男,22,CS)并保存INSERT INTO Student( Sno ,Sname,Ssex,Sage,Sdept )VALUES('95030','谢非','男',22,'CS')2) 将李敏勇的数据库的成绩改为98分UPDATE SCSET Grade=98WHERE SC.Sno IN(SELECT SC.Sno FROM Student,SCWHERE Student.Sno = SC.Sno AND Student.Sname ='李敏勇')ANDo IN(SELECT o FROM SC,CourseWHERE o = o AND ame='数据库')3) 删除学生表Student中谢非的记录并保存DELETE StudentWHERE Student.Sname ='谢非'4) 能不能从Student表中删除李敏勇学生的记录,为什么?能不能删除王敏, 张立两个学生的记录? DELETE StudentWHERE Student.Sname ='李敏勇'不能删除李敏勇学生的记录:“DELETE 语句与REFERENCE 约束"FK__SC__Sno__07020F21"冲突。
广东海洋大学学生实验报告书(学生用表)实验名称实验名称课程名称课程名称课程号课程号学院学院((系) 专业专业班级班级学生姓名学生姓名学号学号实验地点实验地点实验日期实验日期实验4 计数器及其应用一、实验目的1、熟悉中规模集成计数器的逻辑功能及使用方法、熟悉中规模集成计数器的逻辑功能及使用方法2、掌握用74LS161构成计数器的方法构成计数器的方法3、熟悉中规模集成计数器应用、熟悉中规模集成计数器应用二、实验原理计数器是典型的时序逻辑电路,它是用来累计和记忆输入脉冲的个数.计数是数字系统中很重要的基本操作,集成计数器是最广泛应用的逻辑部件之一。
计数器种类较多,按构成计数器中的多触发器是否使用一个时钟脉冲源来分,有同步计数器和异步计数器;步计数器和异步计数器;根据计数制的不同,根据计数制的不同,根据计数制的不同,可分为二进制计数器、可分为二进制计数器、可分为二进制计数器、十进制计数十进制计数器和任意进制计数器;根据计数的增减趋势,又分为加法、减法和可逆计数器。
还有可预置数和可编程序功能计数器等。
本实验主要研究中规模十进制计数器74LS161的功能及应用。
的功能及应用。
1、中规模集成计数器74LS161 是四位二进制可预置同步计数器,由于它采用4 个主从JK 触发器作为记忆单元,故又称为四位二进制同步计数器,其集成芯片管脚如图元,故又称为四位二进制同步计数器,其集成芯片管脚如图11所示:所示:管脚符号说明:电源正端Vcc ,接+5V ;异步置零(复位)端Rd ;时钟脉冲CP ;预置数控制端数控制端 A 、B 、C 、D ;数据输出端;数据输出端 QA 、QB 、QC 、QD ;进位输出端;进位输出端 RCO :使能端:使能端EP EP EP,,ET ET;预置端;预置端;预置端LD ;图1 74LS161 管脚图管脚图GDOU-B-11-112该计数器由于内部采用了快速进位电路,所以具有较高的计数速度。
GDOU-B-11-112广东海洋大学学生实验报告书(学生用表)实验名称实验3:语法分析课程名称编译原理课程号16242211 学院(系) 数学与计算机学院专业计算机科学与技术班级计科1141学生姓名学号实验地点科425 实验日期2017.4.21一、实验目的熟悉语法分析的过程;理解相关文法的步骤;熟悉First集和Follow集生成二、实验要求对于给定的文法,试编写调试一个语法分析程序:要求和提示:(1)可选择一种你感兴趣的语法分析方法(LL(1)、算符优先、递归下降、SLR(1)等)作为编制语法分析程序的依据。
(2)对于所选定的分析方法,如有需要,应选择一种合适的数据结构,以构造所给文法的机内表示。
(3)能进行分析过程模拟。
如输入一个句子,能输出与句子对应的语法树,能对语法树生成过程进行模拟;能够输出分析过程每一步符号栈的变化情况。
设计一个由给定文法生成First集和Follow集并进行简化的算法动态模拟。
三、实验过程1:文法:E->TE’E’->+TE’|εT->FT’T’->*FT’|εF->(E)|i:2程序描述(LL(1)文法)本程序是基于已构建好的某一个语法的预测分析表来对用户的输入字符串进行分析,判断输入的字符串是否属于该文法的句子。
基本实现思想:接收用户输入的字符串(字符串以“#”表示结束)后,对用做分析栈的一维数组和存放分析表的二维数组进行初始化。
然后取出分析栈的栈顶字符,判断是否为终结符,若为终结符则判断是否为“#”且与当前输入符号一样,若是则语法分析结束,输入的字符串为文法的一个句子,否则出错若不为“#”且与当前输入符号一样则将栈顶符号出栈,当前输入符号从输入字符串中除去,进入下一个字符的分析。
若不为“#”且不与当前输入符号一样,则出错。
四、程序流程图本程序中使用以下文法作对用户输入的字符串进行分析:E→TE’E’→+TE’|εT→FT’T’→*FT’|εF→i|(E)该文法的预测分析表为:五:结果及截图1、显示预测分析表,提示用户输入字符串2、输入的字符串为正确的句子:3、输入的字符串中包含了不属于终结符集的字符4、输入的字符串不是该文法能推导出来的句子程序代码:package complier;import java.io.*;public class LL {String Vn[] = { "E", "E'", "T", "T'", "F" }; // 非终结符集String Vt[] = { "i", "+", "*", "(", ")", "#" }; // 终结符集String P[][] = new String[5][6]; // 预测分析表String fenxi[] ; // 分析栈int count = 1; // 步骤int count1 = 1;//’分析栈指针int count2 = 0, count3 = 0;//预测分析表指针String inputString = ""; // 输入的字符串boolean flag;public void setCount(int count, int count1, int count2, int count3){ this.count = count;this.count1 = count1;this.count2 = count2;this.count3 = count3;flag = false;}public void setFenxi() { // 初始化分析栈fenxi = new String[20];fenxi[0] = "#";fenxi[1] = "E";}public void setP() { // 初始化预测分析表for (int i = 0; i < 5; i++) {for (int j = 0; j < 6; j++) {P[i][j] = "error";}}P[0][0] = "->TE'";P[0][3] = "->TE'";P[1][1] = "->+TE'";P[1][4] = "->ε";P[1][5] = "->ε";P[2][0] = "->FT'";P[2][3] = "->FT'";P[3][1] = "->ε";P[3][2] = "->*FT'";P[3][4] = "->ε";P[3][5] = "->ε";P[4][0] = "->i";P[4][3] = "->(E)";// 打印出预测分析表System.out.println(" 已构建好的预测分析表");System.out.println("----------------------------------------------------------------------");for (int i=0; i<6; i++) {System.out.print(" "+Vt[i]);}System.out.println();System.out.println("----------------------------------------------------------------------");for (int i=0; i<5; i++) {System.out.print(" "+Vn[i]+" ");for (int j=0; j<6; j++) {int l = 0;if (j>0) {l = 10-P[i][j-1].length();}for (int k=0; k<l; k++) {System.out.print(" ");}System.out.print(P[i][j]+" ");}System.out.println();}System.out.println("----------------------------------------------------------------------");}public void setInputString(String input) {inputString = input;}public boolean judge() {String inputChar = inputString.substring(0, 1); // 当前输入字符boolean flage = false;if (count1 >= 0) {for (int i=0; i<6; i++) {if (fenxi[count1].equals(Vt[i])) { // 判断分析栈栈顶的字符是否为终结符flage = true;break;}}}if (flage) {// 为终结符时if (fenxi[count1].equals(inputChar)) {if (fenxi[count1].equals("#")&&inputString.length()==1) { // 栈顶符号为结束标志时// System.out.println("最后一个");String fenxizhan = "";for (int i=0; i<=P.length; i++) { // 拿到分析栈里的全部内容(滤去null)if (fenxi[i] == null) {break;} else {fenxizhan = fenxizhan + fenxi[i];}}// 输出当前分析栈情况,输入字符串,所用产生式或匹配System.out.print(" " + count);String countToString = Integer.toString(count);int farWay = 14 - countToString.length();for (int k=0; k<farWay; k++) {System.out.print(" ");}System.out.print(fenxizhan);farWay = 20 - fenxizhan.length();for (int k=0; k<farWay; k++) {System.out.print(" ");}System.out.print(inputString);farWay = 25 - inputString.length();for (int k=0; k<farWay; k++) {System.out.print(" ");}System.out.println("接受");flag = true;return true;} else {// 分析栈栈顶符号不为结束标志符号时String fenxizhan = "";for (int i=0; i<=P.length; i++) { // 拿到分析栈里的全部内容(滤去null)if (fenxi[i] == null) {break;} else {fenxizhan = fenxizhan + fenxi[i];}}// 输出当前分析栈情况,输入字符串,所用产生式或匹配System.out.print(" "+count);String countToString = Integer.toString(count);int farWay = 14 - countToString.length();for (int k=0; k<farWay; k++) {System.out.print(" ");}System.out.print(fenxizhan);farWay = 20 - fenxizhan.length();for (int k=0; k<farWay; k++) {System.out.print(" ");}System.out.print(inputString);farWay = 25 - inputString.length();for (int k=0; k<farWay; k++) {System.out.print(" ");}System.out.println("\"" + inputChar + "\"" + "匹配");// 将栈顶符号出栈,栈顶指针减一fenxi[count1] = null;count1 -= 1;if (inputString.length() > 1) { // 当当前输入字符串的长度大于1时,将当前输入字符从输入字符串中除去inputString = inputString.substring(1, inputString.length());} else { // 当前输入串长度为1时inputChar = inputString;}// System.out.println(" "+count+" "+fenxizhan+"// "+inputString +" "+P[count3][count2]);// System.out.println(count + inputChar + "匹配 ");count++;judge();}}else { // 判断与与输入符号是否一样为结束标志System.out.println(" 分析到第" + count + "步时出错!");flag = false;return false;}} else {// 非终结符时boolean fla = false;for (int i=0; i<6; i++) { // 查询当前输入符号位于终结符集的位置if (inputChar.equals(Vt[i])) {fla = true;count2 = i;break;}}if(!fla){System.out.println(" 分析到第" + count + "步时出错!");flag = false;return false;}for (int i=0; i<5; i++) { // 查询栈顶的符号位于非终结符集的位置if (fenxi[count1].equals(Vn[i])) {count3 = i;break;}}if (P[count3][count2] != "error") { // 栈顶的非终结符与输入的终结符存在产生式时String p = P[count3][count2];String s1 = p.substring(2, p.length()); // 获取对应的产生式if (s1.equals("ε")) { // 产生式推出“ε”时String fenxizhan = "";for (int i=0; i<=P.length; i++) {if (fenxi[i] == null) {break;} else {fenxizhan = fenxizhan + fenxi[i];}}// 输出当前分析栈情况,输入字符串,所用产生式或匹配System.out.print(" " + count);String countToString = Integer.toString(count);int farWay = 14 - countToString.length();for (int k=0; k<farWay; k++) {System.out.print(" ");}System.out.print(fenxizhan);farWay = 20 - fenxizhan.length();for (int k=0; k<farWay; k++) {System.out.print(" ");}System.out.print(inputString);farWay = 25 - inputString.length();for (int k=0; k<farWay; k++) {System.out.print(" ");}System.out.println(fenxi[count1] + P[count3][count2]);// 将栈顶符号出栈,栈顶指针指向下一个元素fenxi[count1] = null;count1 -= 1;count++;judge();} else { // 产生式不推出“ε”时int k = s1.length();String fenxizhan = "";for (int i=0; i<=P.length; i++) {if (fenxi[i] == null) {break;} else {fenxizhan = fenxizhan + fenxi[i];}}// 输出当前分析栈情况,输入字符串,所用产生式或匹配System.out.print(" "+count);String countToString = Integer.toString(count);int farWay = 14 - countToString.length();for (int o=0; o<farWay; o++) {System.out.print(" ");}System.out.print(fenxizhan);farWay = 20 - fenxizhan.length();for (int o=0; o<farWay; o++) {System.out.print(" ");}System.out.print(inputString);farWay = 25 - inputString.length();for (int o=0; o<farWay; o++) {System.out.print(" ");}System.out.println(fenxi[count1] + P[count3][count2]);for (int i=1; i<=k; i++) { // 将产生式右部的各个符号入栈String s2 = s1.substring(s1.length() - 1,s1.length());s1 = s1.substring(0, s1.length() - 1);if (s2.equals("'")) {s2= s1.substring(s1.length() - 1, s1.length())+ s2;i++;s1 = s1.substring(0, s1.length() - 1);}fenxi[count1] = s2;if (i < k)count1++;// System.out.println("count1=" + count1);}// System.out.println(" "+count+" "+fenxizhan+"// "+inputString +" "+P[count3][count2]);count++;// System.out.println(count);judge();}} else {System.out.println(" 分析到第" + count + "步时出错!");flag = false;return false;}}return flag;}public static void main(String args[]) {LL l = new LL();l.setP();String input = "";boolean flag = true;while (flag) {try {InputStreamReader isr = new InputStreamReader(System.in);BufferedReader br = new BufferedReader(isr);System.out.println();System.out.print("请输入字符串(输入exit退出):");input = br.readLine();} catch (Exception e) {e.printStackTrace();}if(input.equals("exit")){flag = false;}else{l.setInputString(input);l.setCount(1, 1, 0, 0);l.setFenxi();System.out.println();System.out.println("分析过程");System.out.println("----------------------------------------------------------------------");System.out.println(" 步骤 | 分析栈 | 剩余输入串 | 所用产生式 ");System.out.println("----------------------------------------------------------------------");boolean b = l.judge();System.out.println("----------------------------------------------------------------------");if(b){System.out.println("您输入的字符串"+input+"是该文发的一个句子");}else{System.out.println("您输入的字符串"+input+"有词法错误!");}}}}}六:实验心得通过本次实验基本掌握了语法分析的原理和LL(1)语法分析方法,以及预测分析表的构造,进一步熟悉了语法分析的详细过程,收获还是蛮大的,值得我们认真对待。
实验1--图像的基本操作(总7页)本页仅作为文档封面,使用时可以删除This document is for reference only-rar21year.MarchGDOU-B-11-112广东海洋大学学生实验报告书(学生用表)实验名称图像的基本操作课程名称数字图像处理课程号学院(系)信息学院专业电子信息工程班级电子1103班学生姓名杜嘉星学号1308实验地点实验日期实验1 图像的基本操作一、实验目的:学会用MATLAB工具箱中的函数对图像进行读取、显示和保存等的基本操作。
二、实验内容:1、仔细阅读MATLAB帮助文件中有关函数imread, size, whos, imshow, imwrite的使用说明,能充分理解其使用方法。
2、并能运用以上函数完成相应的实验操作。
三、实验要求:掌握并能熟练应用上述函数。
实验报告需要提交每步处理的命令并回答相关的问题。
四、实验相关知识:学习有关函数的使用imread使用函数imread可以将图像读入MATLAB环境,imreaed的语法为imread(’filename’),其中filename是一个含有图像文件全名的字符串(包括任何可用的扩展名)。
例如,f=imread(‘’);要想读取指定路径中的图像,最简单的办法就是在filename中输入完整的或相对的。
例如,f=imread(‘D:\myimages\’);size函数size可给出一幅图像的行数和列数。
用如下格式可自动确定一幅图像的大小:[M,N]=size(f); 该语法将返回图像的行数(M)和列数(N)。
whos函数whos可以显示出一个数组的附加信息。
语句为:whos fimshow在MATLAB桌面上图像一般使用函数imshow来显示,该函数的基本语法为:imshow(f, G)。
其中,f是一个图像数组,G是显示该图像的灰度级数。
若省略G,则默认的灰度级数是256。
语法imshow(f, [low high])会将所有小于或等于low的值都显示为黑色,所有大于或等于high的值都显示为白色。
实验四数据的完整性、安全性一、实验目的1.掌握数据安全性和完整性的概念,以及如何保证数据库中数据安全及完整性。
2.掌握 SQL Server中有关用户、角色及操作权限的管理方法.3.学会创建和使用规则、缺省。
二、实验内容1 数据库的安全性实验,通过SSMS设置 SQL Server的安全认证模式.实现对SQL Server 的用户和角色管理,设置和管理数据操作权限.2数据库的完整性实验。
使用Transact-SQL设计规则、缺省、约束和触发器。
三、实验要求1.数据的完整性实验⑴用SQL语句创建一学生成绩数据库(XSCJ),包括学生(XSQK)、课程(KC)和成绩表(XS_KC):学生情况表(XSQK)课程表(KC)成绩表(XS_KC)⑵数据的实体完整性实验①用SSMS分别将学生情况表(XSQK)的学号字段、课程表(KC)的课程号字段设置为主健②用T-SQL语句将成绩表(XS_KC)的学号、课程号字段设置为主健⑶数据的参照完整性实验①用SSMS为成绩表(XS_KC)创建外键FK_ XSQK_ID,外键FK_ XSQK_ID参照学生情况表(XSQK)表的学号②用T-SQL语句成绩表(XS_KC)创建外键FK_ KC_ID,外键FK_ KC _ID参照课程表(KC)表的课程号⑷数据的用户定义完整性实验①用T-SQL语句为学生情况表(XSQK)的姓名列创建一个唯一约束②用SSMS为学生情况表(XSQK)的性别列创建一个检查约束,使得性别的值为男或女③用T-SQL语句为成绩表(XS_KC)的成绩列创建一个检查约束,使得成绩的值在(0~100)之间④用SSMS语句课程表(KC)的学时列创建一个缺省约束,缺省值为60⑤用T-SQL语句课程表(KC)的学分列创建一个缺省约束,缺省值为22.将如下数据分别转换成文本数据或Excel的格式,并分别将其导入数据库的各个表中:学生情况表(XSQK):课程表(KC):成绩表(XS_KC ):3. 理解默认值的概念和作用①用语句创建名为Xi_default ,值为 “计算机系”的默认值②将默认值Xi_default 绑定到学生表中的所在系的属性列上③解除学生表所在系的属性列上的默认值④删除默认值Xi_default注:创建默认值的格式:create default 默认值名as ‘默认值’默认值绑定的格式:sp_bindefault 默认值名, <’表名.列名’︱自定义数据类型名称>解除默认值绑定格式:sp_unbindefault <’表名.列名’︱自定义数据类型名称>删除默认值格式:Drop default 默认值名4.理解规则的概念和作用①用语句创建规则“rule_kkxq”,用以限制插入该规则所绑定的列中的值只能取1、2、3、4、5、6②将“rule_ kkxq”规则绑定到课程表的开课学期属性上,并执行以下语句,看看能否正常执行,为什么:Insert into 课程表Values(109,'C语言','李方',8,64,4)不能正常执行,因为数值8不在规则rule_kkxq所绑定的数据范围内③若不解除规则,能否将规则rule_ kkxq直接删除?不能,需先解除规则才能删除规则rule_ kkxq注:创建规则的格式:create rule 规则名as @列名约束条件规则绑定的格式:sp_bindrule 规则名, <’表名.列名’︱自定义数据类型名称>解除规则绑定格式:sp_unbindrule <’表名.列名’︱自定义数据类型名称>删除规则格式:Drop rule 规则名5.数据的安全性实验:(1)设置身份验证模式①写出查看当前SQL Server身份验证模式的过程,即查看当前SQL Server系统到底是采用Windows身份验证还是混合身份验证模式。
GDOU-B-11-112 广东海洋大学学生实验报告书(学生用表)Java程序设计与开发实验名称实验二Java流程控制课程名称门「课程号技术学院(系)数学与计算机学院专业计算机科学与技术班级 ______________钟海楼2016.10.1 学生姓名邓超荣学号201411621110实验地点实验日期04017 5一实验目的:掌握Java流程控制语句掌握字符串的定义与使用二实验内容:1、超级素数:一个n位超级素数是指一个 n位正整数,它的前1位,前2位,...,前n位均为素数,例如,7331是个4位超级素数,因为7,73, 733, 7331均为素数。
由键盘输入n (n<9),然后输出全部的1---n位超级素数.可参考下面的类 class Prime{public boolea n isPrime( Io ng nu m){ // 输入:一个长整数,若为素数则返回true,否则返回false;if (num==1) return false ;for (long i=2;i<=Math. sqrt(num);i++){if (nu m%i==0)return false;return true ; public boolean findPrime( long a){ // 判断一个数是否为超级素数 boolean flagPrime= true ;long b;b=a;while (b>=10) b=b/10;if (b==1) return false ;b=a;flagPrime= true ;while (b>0){flagPrime=flagPrime &&isPrime(b);if (flagPrime== true )b=b/10;elsebreak ;}if (flagPrime== true )return true ;elsereturn false ;实验代码:Test_01.javapackage eclipse_test5;Prime.javaimport java.util.Scanner;public class test_01 {public static void main(String[] args) { // TODO Auto-generatedmethod stub int n;Prime prime=new Prime();Scanner scan=new Scanner(System.in);System.out.println(" 请输入 N 的值 (N<9)"); n= scan.nextInt();System.out.println(" 超级素数是: "); System.out.println(" "+2);for(int i=3;i<exp(n);i=i+2){if(prime.findPrime(i)==true)System.out.println(" "+i); scan.close();}static long exp(int x){〃产生 10A x 这样的数long num=1;if(x>9) x=9;for(int i=1;i<=x;i++){num=num*10;}return num;}}import java.util.Scanner;//超级素数class Prime{public boolean isPrime(long num){ // 输入:一个长整数,若为素数则返回true,否则返回false;if(num==1) return false;for(long i=2;i<=Math.sqrt(num);i++){if(num%i==0)} return true;}public boolean findPrime(long a){ // 判断一个数是否为超级素数 boolean flagPrime=true;long b;b=a;while(b>=10) b=b/10;if (b==1) return false;b=a;flagPrime=true;while(b>0){flagPrime=flagPrime &&isPrime(b);if(flagPrime==true)b=b/10;elsebreak;}if (flagPrime==true)return true;else}运行结果请输入N的值(N<9)2超圾素数是:23572329313753597173792•编写一加密程序,要求从键盘上输入一个字符串,然后输出加密后的字符串。
广东海洋大学学生实验报告书实验名称实验2 LED数码管动态和静态显示课程名称计算机控制技术系自动化系专业自动化班级1132 学生姓名袁明星/201311632223 实验地点科技楼403实验日期王波成绩指导教师一、设计目的:LED数码管动态和静态显示二、设计任务:1.LED数码管动态显示,动态扫描时间间隔可调;2.LED数码管静态显示,显示动态扫描时间间隔;三、操作流图:步骤:1.上排的三个数码管用静态扫描方式,显示动态扫描时间间隔;2.下排的6用数码管用动态扫描方式,显示时钟;3.一个独立的按键,每按一次,可增加动态扫描时间间隔四、实验要求:1、态度严谨,独立完成,勤于思考,善于总结;2、认真完成实验报告。
ORG 0000HAJMP STARTORG 0003HAJMP INT_0ORG 000BHAJMP INT_T0ORG 0030H START:MOV 30H,#0 ;秒MOV 31H,#0 ;分MOV 32H,#0 ;时MOV 33H,#1MOV SP,#40HSETB IT0MOV TMOD,#01HMOV TH0,#3CHMOV TL0,#0B0HMOV IE,#83HSETB TR0MOV R0,#20V1: MOV A,33HMOV B,#100DIV ABMOV DPTR,#TABMOVC A,@A+DPTRMOV P3,#4FHMOV P2,AMOV A,BMOV B,#10DIV ABMOV DPTR,#TABMOVC A,@A+DPTRMOV P3,#2FHMOV P2,AMOV A,BMOV DPTR,#TABMOVC A,@A+DPTRMOV P3,#1FHMOV P2,AMOV A,30HMOV B,#10DIV ABMOV DPTR,#TAB MOVC A,@A+DPTR MOV P1,#02H MOV P0,AACALL DELAY MOV A,BMOV DPTR,#TAB MOVC A,@A+DPTR MOV P1,#01H MOV P0,AACALL DELAYMOV A,31HMOV B,#10DIV ABMOV DPTR,#TAB MOVC A,@A+DPTR MOV P1,#08H MOV P0,AACALL DELAY MOV A,BMOV DPTR,#TAB MOVC A,@A+DPTR MOV P1,#04H MOV P0,AACALL DELAYMOV A,32HMOV B,#10DIV ABMOV DPTR,#TAB MOVC A,@A+DPTR MOV P1,#20H MOV P0,AACALL DELAY MOV A,BMOV DPTR,#TAB MOVC A,@A+DPTR MOV P1,#10H MOV P0,AACALL DELAYAJMP V1INT_T0:PUSH ACCDJNZ R0,NEXTMOV A,30HINC ACJNE A,#60,NEXT1MOV 30H,#0MOV A,31HINC ACJNE A,#60,NEXT2MOV 31H,#0MOV A,32HINC ACJNE A,#24,NEXT3MOV 32H,#0AJMP NEXT4NEXT1: MOV 30H,AAJMP NEXT4NEXT2: MOV 31H,AAJMP NEXT4NEXT3: MOV 32H,ANEXT4: MOV R0,#20 NEXT: MOV TH0,#3CHMOV TL0,#0B0HPOP ACCRETIINT_0: PUSH ACCMOV A,33HCJNE A,#100,NEXT01MOV 33H,#1AJMP NEXT0NEXT01:MOV B,#10MUL ABMOV 33H,ANEXT0: POP ACCRETIDELAY:MOV R7,33HDEL1: MOV R6,#4NOPDEL2: MOV R5,#123DEL3: DJNZ R5,DEL3DJNZ R6,DEL2DJNZ R7,DEL1RETTAB: DB 0C0H,0F9H,0A4H,0B0H,099H,092H,082H,0F8H,080H,090H END六、实验心得:通过实验,让我对这门课程有了更深入的了解。
GDOU-B-11-112广东海洋大学学生实验报告书实验名称实验6:异常处理课程名称Java程序设计2 成绩学院(系)软件学院专业计算机软件工程班级学生姓名学号实验地点实验日期实验目的:1.掌握Java异常的概念和类型;2.掌握Java的异常处理机制;3.掌握Java人工抛出异常和自定义异常方法;实验内容:1.下面的代码在运行过程中会出现异常,就使用异常捕捉处理机制使得下列代码能够运行到正常的终点结束。
public class Exc1{static void subroutine( ){int d=0;int a=10/d;}public static void main(String[] args){Exc1.subroutine( );System.out.println(“程序正常结束”);}}2.下面代码在顺序执行的过程中可能会发生多种类型的异常,用多个catch语句捕获处理具体异常(不要使用笼统父类Exception),使程序代码能够正常运行到终点结束。
public class Exc2{public static void main(String[] args){int a=args.length;System.out.println(“\n参数个数为:”+a);int b=42/a;int c[]={1};c[2]=10;System.out.println(“程序运行结束”);}}指导教师日期注:请用A4纸书写,不够另附纸。
第页,共页3. P194页第4题,写出程序的运行结果,说明输出该结果的原因;对程序做少量修改使得输出的结果是“abcdmn”;程序的修改要求如下,所有的System.out.println()语句位置不能改变。
可修改或移动其它的部分语句,也可增加语句,要求增加的语句不超过2行。
4. 测试以下的程序,运行时分别用0个,1个和2个参数测试,写出程序的运行结果。
掌握try-catch语句的嵌套使用。
《自动控制原理》课程实验报告
学院班级
姓名学号
成绩指导教师
年月日
实验成绩表
(注:预习报告要求填写实验内容和目的、实验设备、实验步骤等内容。
)
实验报告
实验一二阶系统的阶跃响应
实验组别:实验日期:一、实验目的:
二、实验内容:
三、实验设备:
四、实验原理:
五、实验步骤:
六、实验结果:
1、实验数据:
2、曲线图:
七、实验分析与思考:
1.在实验线路中如何确保系统实现负反馈?如果反馈回路中偶数个运算放大器,则构成什么反馈?
2.有哪些措施能增加二阶系统的稳定度?它们对系统的性能还有什么影响?
实验二连续系统的串联校正
实验组别:实验日期:一、实验目的:
二、实验内容:
三、实验设备:
四、实验步骤:
五、实验分析与思考:
1.除串联校正装置外,还有什么校正装置?它们的特点是什么?。
《食品化学与营养学》实验报告题目膳食调查与评价姓名邓晓君学号201211211606专业班级食品科学与工程1126班指导教师夏杏洲王海清实验时间2014/10/16-22实验五膳食调查与评价一、目的和意义膳食调查是营养调查的内容之一,通过本实验(实习),掌握最基本的膳食计算方法,学习如何评价膳食的合理性,并提出建议。
二、膳食调查方法膳食调查有称重法、查帐法、回顾询问法(24h个人膳食询问法)、化学分析法。
本实验采用24h个人膳食回顾询问法,对大学生膳食进行计算评价。
三、膳食调查步骤第一步:以个人为单位记录调查表,可以是自己或某个同学,收集摄食资料,要求不少于5天(节、假日应除开)。
每日应有早、中、晚餐,少数同学还有三餐以外的零食,也应计算在内。
第二步:依次计算完成表1~6各项内容。
(表中的表格不够可增加,最好直接用Excel做表格,以方便后面的计算)表1 每人每日摄入各类食物摄入量登记表;表2 每人平均每日营养素摄入量计算表;表3 每人平均每日膳食评价表(与DRIs中的RNIs或AIs相应值比较);表4 每人平均每日三餐热量分配;表5 每人平均每日热量来源;表6 每人平均每日蛋白质来源;表7 每人平均每日脂肪来源。
四、思考题请你对上述膳食调查的资料进行分析,并对该膳食的质量进行评价,如何改善才能符合平衡膳食的要求,应该如何调整?1、膳食调查结果显示,可知该膳食的食物种类基本符合《中国居民膳食平衡宝塔》,食谱中的食物种类包括谷类食物、动物性食物、植物性食物、豆类及其制品和水果蔬菜类;但缺少坚果类食物的摄入,应该在保持现有食物摄入水平的同时摄入适量的坚果类食物。
2、成年女性从事轻体力劳动者的能量推荐摄入量(RNI)为2100kcal(8786.4kJ),本人为女性,实际能量的摄入量是8209.33kJ,占RNI的93.4%,膳食能量摄入适宜,应保持现状,或可适量减少摄入和改善能量来源结构。
3、从能量来源分析来看,膳食表显示蛋白质、脂肪、糖类的摄入量分别占RNI的133.9%、90.1%和80.1%,脂肪和糖类均摄入充足,而蛋白质的摄入量过量,应该适量再增加含有脂肪或糖类的食物的供给量。
广东海洋大学学生实验报告书(学生用表)
实验名称 数据抓包实验 课程名称 计算机网络 课程号
学院(系) 信息学院 专业 电子信息工程 班级 电子1112
学生姓名 罗经宪 学号 201111611217 实验地点 实验日期
同组同学 王奕武 实验成绩
一、实验目的
1、掌握wireshark软件的使用
2、利用wireshark捕获数据包
二、实验仪器设备及软件
安装好的window2003 sever的操作系统级wireshark的计算机
三、实验方案
通过ping命令发出对某一个IP地址的数据请求后,利用wireshark软件对执行ping
命令后进行数据包捕获,通过捕获的数据包分析
四、实验步骤
1、输入ping命令发送及接收文件
2、在wireshark捕获ping命令发出和接收的数据包
五、实验结果及分析
从图中可知输入ping qq.com,得到了来自ip14.17.32.211四个回复
GDOU-B-11-112
利用wireshark捕获输入ping命令后的数据包,从图中可知NO.62,64,68,83发出ping
命令请求的数据包,而NO.63,65,69,84回复ping命令的数据包
从图中可知,该NO.62数据包的src:10.1.180.242,dst:14.17.32.211,数据包大小74bytes
六、实验总结及体会
通过这次实验后,简单掌握了利用ping命令和wireshark软件捕获数据包,并且可
以利用ping命令检验网络的运行情况,在wriesharkbu捕获的数据包可以知道其大小,
各自IP。
七、教师评语