当前位置:文档之家› 南京邮电大学软件设计实验报告

南京邮电大学软件设计实验报告

南京邮电大学软件设计实验报告
南京邮电大学软件设计实验报告

通信与信息工程学院2012/2013学年第二学期软件设计实验报告

模块名称Visual C++

专业广播电视工程

学生班级B100117

学生学号B10011714

学生姓名王建明

指导教师田炜

设计题目

(1)P021E

(2)P018M

(3)R019M

(4)P006H

任务要求

(1)编辑文本;保存、打开指定位置的文本文件;具有输入输出

界面。

(2)编制不同数制间的转换程序。要求提供输入输出界面,当输

完一个任意十进制数字,程序能自动将其转化为另外的数制表示的

值,包括二进制、八进制和十六进制。

(3)输入一个自然数n,求,同时统计结果中有多少个0。(4)输

入任意四个整数(0到10),运算符只有加减乘除,还有括号.每个数

只能且必须用一次。要求判断这些表达的结果中是否有24。

如果有,输出计算表达式:如输入4,6,1,1 输出4*6*1*1 =24 (允

许有括号)。

实验设备及软件硬件设备:

微型计算机一台

JH5001IV型通信教学实验系统软件设备:

Microsoft Visual C++ 6.0

同组人员

学号及姓

参考文献

教材:《Visual C++ 6.0教程》于涛等编科学出版社

《C语言程序设计》朱立华王立柱编著人民邮电出版社

参考书:《计算机软件技术实验教程》熊壮编重庆大学出版社

《Visual C++ 6.0程序设计自学教程》康博创作室编著清华

大学出版社

《C程序设计》第三版谭浩强编著清华大学出版社

题目一:P021E

实验要求:

设计一个简单的文本编辑器,该系统要求对一个文本文件中的内容进行各种常规操作,例如:

(1)编辑文本;

(2)保存、打开指定位置的文本文件;

(3)具有输入输出界面。

1、问题分析与方案设计。

本次程序主要为了让我们了解C语言中对于文件的一般操作。

文件是程序设计中的一个重要概念。操作系统是以文件为单位对数据进行管理的,也就是说,如果想找外部介质上的数据,必须先按文件名找到所指定的文件,然后再从该文件中读取数据。C语言把文件看作是一个字符(字节)的序列,即由一个一个字符(字节)数据顺序组成。根据数据的组织形式,可分为ASCII文件和二进制文件。ASCII文件又称文本(text)文件,他的每一个字节放一个ASCII代码,代表一个字符。二进制文件是把内存中的数据按其在内存中的存储形式原样输出到磁盘上存放。

在文件系统中,“文件指针”是一个非常重要的概念,通常在进行关于文件操作的C程序时,会定义一个结构体变量的文件指针(FILE *fp),以便于C语言程序能够准确的对文件进行访问及操作。本次实验程序包含了简单地对于文件的打开、插入、删除、查找、替换、显示、保存的操作,通过对于文件指针的运用以及各种文件指令的运用,基本达到了实验的要求。

在本次实验中,按照顺序程序的设计方法,加以熟练地运用C程序中主函数与一般函数之间的熟练调用,顺利的实现了实验要求的各种结果。程序中用到的核心方法包括:文件的打开与关闭、文件的读写、文件的定位以及文件的出错检测等。其中包括了fopen、fclose、fputc、fgetc、fread、fwrite、rewind、fseek、ftell和ferror等函数。这些函数对算法的实现起了很大的作用具体算法实现过程如下图所示。

程序流程图如下:

Choice=6

N Y N

Y

choice=3 Choice=1

Choice=2 Choice=4

Choice=5

Choice=0

开始

结束

Choice=1 Choice=2 输入文件名及路径 1.插入2.删除3.查找4.替换5.显示6.返回0.退出 输入插入的字符串 输入删除的字符串

输入查找的字符串 输入替换的字符串及源字符串

显示文件内容

1.打开文件

2.退出 文件能否打开? 输入正确否? 选择操作

2、编程实现。

程序的关键源代码如下:

(1)打开指定位置的文件的代码:

printf("请输入要打开的文件名及路径:");

scanf("%s",name);

fp=fopen(name,"r+");

if(!fp)

{

system("cls");

printf("\t\t\t ====文件无法打开!====\n");

choose0();

}

system("cls");

while((ch=fgetc(fp))!=EOF)

{

putchar(ch);

}

rewind(fp);

(2)对文件内容进行插入操作的代码:

char s1[10000];

char s2[100];

inti=0;

while((ch1=fgetc(fp))!=EOF)

{

s1[i]=ch1;

i++;

}

rewind(fp);

s1[i]='\0';

system("cls");

show();

printf("请定位你想要插入字符串的地方:");

scanf("%d",&set);

system("cls");

show();

printf("输入你插入的字符串:");

scanf("%s",s2);

intlen=strlen(s2);

fclose(fp);

fp=fopen(name,"w");

for(int j=0;j

{

ch1=s1[j];

fputc(ch1,fp);

}

for(j=0;j

{

ch1=s2[j];

fputc(ch1,fp);

}

for(j=set;j

{

ch1=s1[j];

fputc(ch1,fp);

}

fclose(fp);

system("cls");

(3)对文件内容进行查找操作的代码:

int count=0;

scanf("%s",str);

intlen=strlen(str);

fp=fopen(name,"r");

if(!fp)

{

printf("\t\t\t\t ===文件无法打开!===\n");

}

rewind(fp);

while((ch=fgetc(fp))!=EOF)

{

str1[count]=ch;

count++;

}

str1[count]='\0';

fclose(fp);

p=strstr(str1,str);

system("cls");

if(p!=NULL)

printf("\t\t\t ===文本中存在这样的字符串===\n");

else

printf("\t\t\t\t ===文本中不存在这样的字符串===\n"); (4)对文件内容进行替换的代码:

printf("请输入被替换字符串:");

printf("\n");

scanf("%s",s2);

printf("请输入替换的字符串:");

printf("\n");scanf("%s",s3);

int i,j,len1,len2,len3,len4,count=0;

len1=strlen(s1);

len2=strlen(s2);

len3=strlen(s3);

intnum=0;

fp=fopen(name,"r");

if(!fp)

{

printf("\t\t\t\t ===文件无法打开!===\n");

}

rewind(fp);

while((ch=fgetc(fp))!=EOF)

{

s1[count]=ch;

count++;

}

s1[count]='\0';

fclose(fp);

for(i=0;i

{

for(j=0;j

{

if(s1[i+j]!=s2[j])

{

s4[num]=s1[i];

num++;

break;

}

if(j==len2-1)

{

for(int k=0;k

{

s4[num]=s3[k];

num++;

}

i+=len2-1;

}

}

}

s4[num]='\0';

len4=strlen(s4);

fp=fopen(name,"w");

for(j=0;j

{

ch=s4[j];

fputc(ch,fp);

}

fclose(fp);

(5)对文件内容进行删除的代码:

printf("请输入被删除字符串:");

scanf("%s",s2);

printf("\n");

int i,j,len1,len2,len4,count=0;

len1=strlen(s1);

len2=strlen(s2);

intnum=0;

fp=fopen(name,"r");

if(!fp)

{

printf("\t\t\t\t ===文件无法打开!===\n");

}

rewind(fp);

while((ch=fgetc(fp))!=EOF)

{

s1[count]=ch;

count++;

}

s1[count]='\0';

fclose(fp);

for(i=0;i

{

for(j=0;j

{

if(s1[i+j]!=s2[j])

{

s4[num]=s1[i];

num++;

break;

}

if(j==len2-1)

{

s4[num]=s1[i+len2];

num++;

i+=len2;

}

}

}

s4[num]='\0';

len4=strlen(s4);

fp=fopen(name,"w");

for(j=0;j

{

ch=s4[j];

fputc(ch,fp);

}

fclose(fp);

(6)显示文件内容的代码:

fp=fopen(name,"r");

if(!fp)

{

printf("\t\t\t\t ===文件无法打开!===\n");

choose0();

}

printf("--------------------------------------------------------------------------------") while((ch=fgetc(fp))!=EOF)

{

putchar(ch);

}

rewind(fp);

3、测试数据、测试结果、结果分析。

(1)欢迎界面:

(2)选择菜单:

(3)插入操作及结果:

在文本文档“123456789abcdefg”的“123456789”后插入“gfedcba”其结果应为“123456789gfedcbaabcdefg”其C程序执行结果如下:

(4)删除操作及结果:

在文本文档“123456789gfedcbaabcdefg”中,删去文本“abcdefg”,其结果应为“123456789gfedcba”,其C程序执行结果如下:

(5)查找操作及结果:

在文本文档“123456789gfedcba”中,查找“123456789”字符串,其结果应为提示“===文本中存在这样的字符串===”。其C程序执行结果如下:

(6)替换操作及结果

在文本文档“123456789gfedcba”中,将“gfedcba”字符串替换为“abcdefg”字符串,其结果应为“123456789abcdefg”。其C程序执行结果如下:

(7)实验结果分析。

从上面的测试结果可以看出,本次实验程序基本完成了实验的要求内容而且在功能上还进行了一定程度的的丰富,实现了文件的打开、保存以及一些简单的编辑操作。

程序通过打开文件后对文件内容进行字符串的一系列操作,运用C语言定义的指令对文件系统进行编辑,熟悉了各指令的用途,进一步了解了C语言是怎样对文件系统进行操作的,对后续课程的学习奠定了坚实的基础。

题目二:P018M

实验要求:

编制不同数制间的转换程序。要求提供输入输出界面,当输完一个任意十进制数字,程序能自动将其转化为另外的数制表示的值,包括二进制、八进制和十六进制。

1、问题分析与方案设计。

算法处理的对象是数据,而数据是以某种特定的形式存在的(例如整数、实数、字符等形式)。不同的数据之间往往还存在某些联系(例如由若干个整数组成一个整数数组)。C语言提供了一些数据类型,由这些数据类型可以构造出不同的数据结构。包括:基本类型、构造类型、指针类型和空类型。

数据一般常用的有十六进制、十进制、八进制和二进制。在计算机内部,数据一般以二进制的方式存储和运算。当往计算机中输入一个非二进制数据时,计算机会自动将其转换为二进制数来存储或计算,当需要输出其他进制的数据时,需要转换成其他进制的数据输出。

根据设计题目的要求,可以知道要实现进制数的转换,可以将不同的进制数转换成字符串输出,即可以实现将不同进制数的显示。对于转换,可以考虑使用一个模块,将任意进制的数(程序接受时依然当作字符串接收)转换成十进制的整数,然后再从这个十进制整数出发转换成任意进制的数显示(也是一个字符串)。这个程序设计的关键在于任意进制的数转换成十进制数以及十进制数转换成任意进制数!

转化成十进制时可以通过计算输入字符串的长度,在知道输入是几进制的前提下就可以将不同位上的数转换成十进制求和就可以得到;转换成任意进制时可以使用短除法,不断相除取余数知道商为零为止,得到的字符串在翻转后即使得到的任意进制数对应的字符串。

程序中还加入了各种进制的判断程序,通过调用判断输入数据是否为已选进制的子程序来判断输入数据格式是否符合要求。本次实验程序设计了判断十六进

制、十进制、八进制和二进制的子程序,从而使程序具有更高的可靠性和更强的鲁棒性。通过运用主程序与子程序之间的相互调用,也使得程序结构变得更加清晰,具有更好的可读性。

具体的程序流程图如下:

N

Y choice=0 Choice !=0

Y

N

Y

Choice=0

Choice=0

开始

结束

1.输入二进制数

2.输入八进制数

3.输入十进制数

4.输入十六进制数

0.退出

正确否

相应的进制数否 输入相应的进制数

1.转为八进制

2.转为十进制

3.转为十六进制 0.退出 1.转为二进制 2.转为十进制 3.转为十六进制 0.退出 1.转为二进制 2.转为八进制 3.转为十六进制 0.退出 1.转为二进制 2.转为八进制 3.转为十六进制 0.退出

显示结果

2、编程实现。

程序的关键源程序代码如下:

(1)判断输入数据是否为已选进制数据:

do

{

inti=0;

scanf("%s",a);

intlen=strlen(a);

for(i=0;i

{

1) if(a[i]=='0'||a[i]=='1')··················判断是否为二进制数据

2) if(a[i]>='0'&&a[i]<='7')···············判断是否为八进制数据

3) if(a[i]>='0'&&a[i]<='9')···············判断是否为十进制数据

4) if((a[i]>='0'&&a[i]<='9')||(a[i]>='A'&&a[i]<='F')||(a[i]>='a'&&a[i]<='f'))

··································判断是否为十六进制数据

{

jud=0;

}

else

{

system("cls");

printf("\t\t\t--------------------------------\n");

1) printf("\t\t\t 此数据非二进制数\n");······显示提示

2) printf("\t\t\t 此数据非八进制数\n");······显示提示

3) printf("\t\t\t 此数据非十进制数\n");······显示提示

4) printf("\t\t\t 此数据非十六进制数\n");····显示提示

printf("\t\t\t--------------------------------\n");

printf("请重新输入:");

i=len;

jud=1;

}

}

}while(jud);

}

(2)十进制数转换成其他进制数据:

{

intnum=1,i,j,ni;

int s[100];

for(i=0;num!=0;i++)

{

1) ni=y%2;·······················十进制数转换成二进制数

2) ni=y%8;·······················十进制数转换成八进制数

3) ni=y%16;······················十进制数转换成十六进数

s[i]=ni;

num=y/2;

y=num;

}

system("cls");

1) printf("其二进制表示为:");························显示提示

2) printf("其八进制表示为:");························显示提示

3) printf("其十六进制表示为:");······················显示提示

for(j=i-1;j>=0;j--)

printf("%d",s[j]);

printf("\n");

}

(3)已选进制数转换成十进制数据:

{

inti,len,y=0;

len=strlen(a);

for(i=0;i

1)y+=(int(pow(2,int(len-1-i)))*(int((a[i])-48)));

·······························二进制数转换成十进制数据

2)y+=(int(pow(8,int(len-1-i)))*(int ((a[i])-48)));

·······························八进制数转换成十进制数据

3)if(a[i]>='A'&&a[i]<='F')

y+=(int(pow(16,int(len-1-i)))*(int ((a[i])-55)));

else

if(a[i]>='a'&&a[i]<='f')

y+=(int(pow(16,int(len-1-i)))*(int ((a[i])-87)));

else

y+=(int(pow(16,int(len-1-i)))*(int ((a[i])-48)));

·····························十六进制数转换成十进制数据return y;

}

3、测试数据、测试结果、结果分析。

(1)欢迎语及一级菜单界面:

(2)二级菜单界面:

(3)十进制数转换成其它进制数据:

当用键盘想程序中键入十进制数“1000”时,其经程序转换后的结果应为:二进制为“1111101000”;八进制为“1750”;十六进制为“3E8”。其C程序运行结果如下:

(4)其它进制数转换成十进制数据:

1)当输入二进制数据“11110000000001111”时,十进制数结果应为“61455”,其C程序运行结果如下:

2)当输入八进制数据“76543210”时,十进制数结果应为“16434824”,其C 程序运行结果如下:

3)当输入十六进制数据“1234abcd”时,十进制数结果应为“305441741”。其C程序运行结果如下:

(5)非十进制数据之间的相互转换:

1)当输入二进制数据“010*********”时,转换成八进制数据,其结果应“525”,其C程序运行结果如下:

2)当输入八进制数据“76543210”时,转换成十六进制数据,其结果应为“FAC688”,其C程序运行结果如下:

3 )当输入十六进制数据“1234DCBA”时,转换成二进制数据,其结果应为“10010001101001101110010111010”:

(6)实验结果分析。

本次实验程序基本完成了实验要求,并且还增加了非十进制与非十进之间的转换,进一步了解了数据在计算机内部的存储方式以及计算机计算数据的方式。在数据相互转换的过程中都是以计算机内部的二进制数据作为基础,然后再配以一定的算法,从而实现了各种进制间的转换。

软件设计过程实验报告

软件开发过程 实验一软件需求分析 一、目的和意义 对本书第二和三章的内容做进一步的掌握,写出软件需求规格说明书。为下面的实习奠定基础。 二、实习内容 xx、确定软件题目(学生可自己拟定,也可在本书附录2中选择); 2、分析软件需求以及人工模式下的工作流程; 3、编写需求规格说明书(需求规格说明书的编写要求参见本节模板参考); 4、完成形式:以文档的形式完成软件的需求规格说明书。纸张型号为A4。 三、实习指导 xx、在磁盘上建立一个软件工程实习文件夹,以自己的姓名命名。 2、提交文档的格式如下: 第一页的格式为: 软件名称:文档编号 版本号 文档名称: 项目名称: 项目负责人: 编写时间 审核时间 批准时间 开发单位 第二页之后的内容为: ●编写目的:阐明编写该文档的目的,指出读者对象 ●项目背景:项目的委托单位、开发单位、该软件系统与其他系统的关系。

●参考资料 软件需求规格说明的书写原则 ①任务概述:软硬件环境、条件和限制(软件的使用条件和限制)。 ②数据描述:输入数据、输出数据、数据库设计和建立数据词典。 ③功能需求:功能划分和功能描述 ④性能需求:数据精度、时间特性、适应性(操作方式、与其他软件的接口、开 发计划变化时,软件应具有的适应能力。)。 ⑤运行要求:用户界面、硬件接口(如:连接打印机)、软件接口(如:是否为 其他项目的子项目)、故障处理。 ⑥其他需求:可使用性、安全保密性、可维护性、可移植性等。 ●模板参考 第一页: 软件名称:教务管理软件文档编号 xxxxxx 版本号 Ver xx.xx 文档名称:需求规格说明书 项目名称:课表编排系统 项目负责人:屈艳 编写: 组 第二页之后的内容: 编写目的:编写该文档是为了分析人工状态下课表编排的工作流程,把人工模式抽象为可在计算机上处理的自动模式。便于开发小组成员对系统整体功能的认识。 项目背景:高校的课表编排一直是一个烦琐的工作,为了解决这个问题,某某高校教务处委托我们开发该软件。该软件是高校教务软件的一个子系统。该子系统与专业规划子系统和教师管理软件有一定的关系。 参 实用软件工程(第二版)北京:清华大学出版社,xxxxxx7 任务概述: 硬件环境:CPU的型号为PentiumIII以上,内存25xxM ,及其兼容机

南邮广播电视工程数字视频非线性编辑制作课程设计实验报告定稿版

南邮广播电视工程数字视频非线性编辑制作课 程设计实验报告精编 W O R D版 IBM system office room 【A0816H-A0912AAAHH-GX8Q8-GNTHHJ8】

通信与信息工程学院 2016 / 2017 学年第一学期 课程设计实验报告 模块名称数字视频非线性编辑制作 专业广播电视工程 学生班级 B130114 学生学号 学生姓名陈超 指导教师姚锡林 日期: 2016 年 11 月 21 日 摘要 本次课程设计利用软件premiere进行数字视频非线性编辑制作。本文首先就本次实验主题归纳总结电视节目制作一般流程方法,接着对此次课程设计主要软件工具进行系统介绍,主要涉及实验相关借本操作的详细阐述;接下来两大章节部分先从取材、构思角度详细分析此次课程设计所做的主题内容与规划,并以此为指导再从具体操作上分步骤、多角度实现视频序列的制作;最后对本次课程设计的体味与收获进行思考。 此次作品《再次出发》电影鉴赏是将导演约翰卡尼的一部经典音乐影视作品利用premiere软件,在制作的过程中添加了转场特效,关键帧,字幕,音频等功能,并运用多种素材,重新删减编辑,形成一部情节连贯,内容完整、主题明确的电影鉴赏短片。短片的片长时间为9分40秒,大小为720*576,AVI格式,PAL制式(48Khz)。

关键词:数字视频非线性编辑制作;premiere;视频制作;

目录 第一章电视节目制作的一般流程与方法 (1) 1.1 电视节目制作一般流程 (1) 1.1.1 前期制作流程 (1) 1.1.2 后期制作工作流程 (2) 1.2 电视节目制作的一般方法 (2) 1.2.1 ENG方式 (2) 1.2.2 EFP方式 (2) 1.2.3 ESP方式 (3) 第二章 Premiere的功能介绍及操作方法 (4) 2.1 Premiere概述 (4) 2.1.1 概述 (4) 2.1.2 基本操作界面 (4) 2.2 Premiere的基本操作 (5) 2.2.1 新建项目 (5) 2.2.2 新建序列 (6)

SQL语言的应用 南京邮电大学软件工程与数据库实验报告一

实验报告一 实验名称:SQL语言的应用 指导教师:茅苏 实验类型:验证 实验学时:4*2 实验时间:2012年9月28日 一、实验目的和要求 练习使用SQL SERVER数据库产品,熟练使用查询分析器和企业管理器; 掌握SQL语言中常用的语句:用DDL创建基本表;用DML插入、修改、删除数据;用QL查询数据等。 二、实验环境(实验设备) 硬件:个人计算机; 软件:MS SQL SERVER环境。 三、实验原理及内容 1.用SQL SERVER的企业管理器创建数据库 数据库名称:10001927db 操作步骤:1、单击左侧的SQL Server组 右键 新建SQL Server注册 下一步 在左侧的“可用的服务器”栏选中或输入CC-PC,点击中间 的添加,将CC-PC添加到右侧的“添加的服务器”栏 下一步 选中“登录时使用Windows身份认证”,然后点击下一步 选中“在 现有SQL Server组中添加SQL Server”,然后点击下一步 完 成 关闭。 2、单击左侧的SQL Server组下面可用的已注册子组里面的数据库→ 右键→新建数据库→输入数据库名称10001927db 2.用查询分析器在上一步创建的数据库中完成以下功能 (1)进入查询分析器并选择操作的数据库 操作步骤:1、开始→程序→MS SQL Server→查询分析器 确认SQL Server(s)为CC-PC 选择Windows身份认证 点击确定 2、在工具栏的下拉链表种选择名为10001927db的数据库。 (2)建立基本表:学生、课程和选课,写出DDL语句。 要求:需为每张表建立主键,其他完整性约束可自己添加。

软件项目管理课程设计实验报告精

软件项目管理课程设计报告 学院: 专业: 班级: 学号: 姓名: 指导教师: 时间:2013年 1月 目录 1、项目概述 (1) 2、工作任务 (Statement Of Work,SOW书 (1) (一整体要求 (1) (二系统逻辑模型 (2) (三系统功能描述 (3) (四应达到的技术指标和参数 .................................... 3 3、项目进度计划 .. (4) (一分解项目工作 (4) (二项目工作关系表 (5) (三项目甘特图 (6) (四网络进度计划图 (7) (五里程碑计划 ................................................ 9 4、项目规模成本估算 . (9)

(一分解项目工作 (9) (二项目规模估算表 (11) (三计算开发成本 (12) (四计算管理、质量成本 (12) (五直接成本 (12) (六计算间接成本 (12) (七计算总估算成本 (12) (八项目报价 ................................................. 13 5. 项目质量计划 .. (13) (一项目质量保证组织 (13) (二质量目标 (14) (三质量策略 (15) (四质量保证活动 (15) (五质量控制活动 (17) (六质量保证的报告途径 (17) (七记录的收集、维护和保存 ................................... 17 6、软件项目团队 . (17) (一团队组织及职责 (18) (二项目的沟通计划 ........................................... 19 7、软件项目配置管理计划 .. (19) 学校内部职工工资系统项目管理书 1、项目概述 假设学校共有教职工约 1000人, 10个行政部门和 8个系部。每个月 20日前各部门(包括系、部要将出勤情况上报人事处, 23日前人事处将出勤工资、奖金及扣款清单送财务处。财务处于每月月底将教职工的工资表做好并将数据送银行。每月初(3日前将工

南京邮电大学软件设计实验报告

软件设计报告 ( 2014 / 2015 学年第二学期) 课程名称软件设计 指导老师赵江实习时间第十八周学生姓名学号 ____学院______专业

软件设计 课程编号:B0465011C 适用专业: 班级: 一、所涉及的课程及知识点 涉及的课程:第6学期之前的专业基础课程。 知识点:专业基础课程中所学的知识点。 二、目的与任务 目的:通过软件设计,培养学生的实践能力和创新精神,加强学生对专业基础课程的理解和掌握,加强学生高级语言编程能力、应用软件以及仿真能力。 任务:选择以下任一模块进行设计:Matlab软件仿真、C语言及应用。

软件设计的内容 题目1:如果给出两个矩阵?? ??? ?????=136782078451220124A ,????? ?????=087654321B ,执行下面的矩阵运算命令。 (1)B A *5+和I B A +-分别是多少(其中I 为单位矩阵) (2)B A *?和B A *将分别给出什么结果,它们是否相同为什么 逻辑功能程序: function [ ] = EXP1() A=[4,12,20;12,45,78;20,78,136]; B=[1,2,3;4,5,6;7,8,0]; I=eye(3); disp('A+5*B='); disp(A+5*B); disp('A-B+I=') disp(A-B+I); disp('A.*B='); disp(A.*B) disp('A*B='); disp(A*B); End 实验过程与结果 打开matlab ,在命令窗口“Command Window ”中键入edit,启动程序编辑器。输入完整程序后利用save as 储存为M 文件,文件名为EXP1。返回主界面,

南邮课程设计实验报告

课程设计I报告 题目:课程设计 班级:44 姓名:范海霞 指导教师:黄双颖 职称: 成绩: 通达学院 2015 年 1 月 4 日

一:SPSS的安装和使用 在PC机上安装SPSS软件,打开软件: 基本统计分析功能包括描述统计和行列计算,还包括在基本分析中最受欢迎的常见统计功能,如汇总、计数、交叉分析、分类比较、描述性统计、因子分析、回归分析及聚类分析等等。具体如下: 1.数据访问、数据准备、数据管理与输出管理; 2.描述统计和探索分析:频数、描述、集中趋势和离散趋势分析、分布分析与查看、正态性检验与正态转换、均值的置信区间估计; 3.交叉表:计数;行、列和总计百分比;独立性检验;定类变量和定序变量的相关性测度; 4.二元统计:均值比较、T检验、单因素方差分析; 5.相关分析:双变量相关分析、偏相关分析、距离分析; 6.线性回归分析:自动线性建模、线性回归、Ordinal回归—PLUM、曲线估计; 7.非参数检验:单一样本检验、双重相关样本检验、K重相关样本检验、双重独立样本检验、K重独立样本检验; 8.多重响应分析:交叉表、频数表; 9.预测数值结果和区分群体:K-means聚类分析、分级聚类分析、两步聚类分析、快速聚类分析、因子分析、主成分分析、最近邻元素分析; 10. 判别分析; 11.尺度分析; 12. 报告:各种报告、记录摘要、图表功能(分类图表、条型图、线型图、面积图、高低图、箱线图、散点图、质量控制图、诊断和探测图等); 13.数据管理、数据转换与文件管理; 二.数据文件的处理 SPSS数据文件是一种结构性数据文件,由数据的结构和数据的内容两部分构成,也可以说由变量和观测两部分构成。定义一个变量至少要定义它的两个属性,即变量名和变量类型其他属性可以暂时采用系统默认值,待以后分析过程中如果有需要再对其进行设置。在spss数据编辑窗口中单击“变量视窗”标签,进入变量视窗界面,即可对变量的各个属性进行设置。 1.创建一个数据文件数据 (1)选择菜单【文件】→【新建】→【数据】新建一个数据文件,进入数据编辑窗口。窗口顶部标题为“PASW Statistics数据编辑器”。 (2)单击左下角【变量视窗】标签进入变量视图界面,根据试验的设计定义每个变量类型。

【精品实验报告】软件体系结构设计模式实验报告

【精品实验报告】软件体系结构设计模式实验报告软件体系结构 设计模式实验报告 学生姓名: 所在学院: 学生学号: 学生班级: 指导老师: 完成日期: 一、实验目的 熟练使用PowerDesigner和任意一种面向对象编程语言实现几种常见的设计模式,包括组合模式、外观模式、代理模式、观察者模式和策略模式,理解每一种设计模式的模式动机,掌握模式结构,学习如何使用代码实现这些模式,并学会分析这些模式的使用效果。 二、实验内容 使用PowerDesigner和任意一种面向对象编程语言实现组合模式、外观模式、代理模式、观察者模式和策略模式,包括根据实例绘制模式结构图、编写模式实例实现代码,运行并测试模式实例代码。 (1) 组合模式 使用组合模式设计一个杀毒软件(AntiVirus)的框架,该软件既可以对某个文件夹(Folder)杀毒,也可以对某个指定的文件(File)进行杀毒,文件种类包括文本文件TextFile、图片文件ImageFile、视频文件VideoFile。绘制类图并编程模拟实现。 (2) 组合模式 某教育机构组织结构如下图所示: 北京总部 教务办公室湖南分校行政办公室 教务办公室长沙教学点湘潭教学点行政办公室

教务办公室行政办公室教务办公室行政办公室 在该教育机构的OA系统中可以给各级办公室下发公文,现采用 组合模式设计该机构的组织结构,绘制相应的类图并编程模拟实现,在客户端代码中模拟下发公文。(注:可以定义一个办公室类为抽象叶子构件类,再将教务办公室和行政办公室作为其子类;可以定义一个教学机构类为抽象容器构件类,将总部、分校和教学点作为其子类。) (3) 外观模式 某系统需要提供一个文件加密模块,加密流程包括三个操作,分别是读取源文件、加密、保存加密之后的文件。读取文件和保存文件使用流来实现,这三个操作相对独立,其业务代码封装在三个不同的类中。现在需要提供一个统一的加密外观类,用户可以直接使用该加密外观类完成文件的读取、加密和保存三个操作,而不需要与每一个类进行交互,使用外观模式设计该加密模块,要求编程模拟实现。参考类图如下: reader = new FileReader();EncryptFacadecipher = new CipherMachine();writer = new FileWriter();-reader: FileReader-cipher: CipherMachine-writer: FileWriter +EncryptFacade () +fileEncrypt (String fileNameSrc,: voidString plainStr=reader.read(fileNameSrc); String fileNameDes)String

南邮单片机实验报告

南邮单片机实验报告 篇一:南邮数据库实验报告 数据库实验报告 ( XX / XX 学年第二学期)? ? 学号 姓名 指导教师 成绩 一、数据库原理第一次实验 【一】实验内容: 数据库表的建立与管理【二】、实验目的: 学习数据库及表的建立、删除、更新等操作。 注:本次实验题目,除了特殊要求,以T-SQL为主,并将所有语句标注好题号,留存在查询界面上,方便检查。【三】、实验题目及其解答: 1、创建一名为‘test’的数据库; CREATE DATABASE test 2、在“test”数据库中新建一张部门表“部门”,输入列:name(char,10位),ID(char,7位),manager (char,10位)各列均不能为空值。

Solution: use test CREATE TABLE 部门 (ID CHAR(7) NOT NULL,name CHAR(10) NOT NULL,manager CHAR(10) NOT NULL) 结果: 3、在“test”数据库中新建一张员工表,命名为 “员工”。在表中输入以下各列: name(char,10位),personID(char,7位),Sex(char,7位),birthday(datetime),deptID(char,7位),各列均不能为空值。 CREATE TABLE 员工 (name CHAR(10) NOT NULL, personID CHAR(7) NOT NULL, sex CHAR(7) NOT NULL, birthday datetime NOT NULL, deptID CHAR(7) NOT NULL) 结果: 4、修改表的操作练习: 1)将‘部门’表中的列ID设为主键; 2)将‘员工’表中personID设为主键,并将deptID设置为外键,关联到‘部门’表上的‘ID’列; 3)在‘部门’表中,添加列quantity(char, 5); 4) 删除‘员工’表中的列‘sex’; 5)修改‘员工’表中列name为(varchar,8) ALTER TABLE 部门 ADD CONSTRAINT C1 PRIMARY KEY(ID) ALTER TABLE 员工ADD CONSTRAINT C2 PRIMARY

设计模式实验报告

实验一单例模式的应用 1 实验目的 1) 掌握单例模式(Singleton)的特点 2) 分析具体问题,使用单例模式进行设计。 2 实验内容和要求 很多应用项目都有配置文件,这些配置文件里面定义一些应用需要的参数数据。 通常客户端使用这个类是通过new一个AppConfig的实例来得到一个操作配置文件内容的对象。如果在系统运行中,有很多地方都需要使用配置文件的内容,系统中会同时存在多份配置文件的内容,这会严重浪费内存资源。 事实上,对于AppConfig类,在运行期间,只需要一个对象实例就够了。那么应该怎么实现呢?用C#控制台应用程序实现该单例模式。绘制该模式的UML 图。 3 实验代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace AppConfig { publicclass Singleton { privatestatic Singleton instance; private Singleton() {

} publicstatic Singleton GetInstance() { if (instance == null) { instance = new Singleton(); } return instance; } } class Program { staticvoid Main(string[] args) { Singleton singletonOne = Singleton.GetInstance(); Singleton singletonTwo = Singleton.GetInstance(); if (singletonOne.Equals(singletonTwo)) { Console.WriteLine("singletonOne 和 singletonTwo 代表的是同一个实例"); } else { Console.WriteLine("singletonOne 和 singletonTwo 代表的是不同实例"); } Console.ReadKey(); } } } 4 实验结果

电工电子实验报告-南邮课程设计

目录 第一章技术指标 (2) 1.1 系统功能要求 (2) 1.2 系统结构要求 (2) 1.3 电气指标 (2) 1.4 设计条件 (2) 第二章整体方案设计 (2) 2.1 整体方案 (2) 2.2 整体原理及方框图 (2) 第三章单元电路设计 (4) 3.1 频率控制电路设计 (4) 3.2 计数器设计(256) (5) 3.3 存储器及正弦函数表 (6) 3.4 D/A(II)正弦波产生电路 (7) 3.5幅度控制 (8) 3.6 阻抗控制 (9) 3.7整体电路图 (9) 3.7 整体元件清单(理论值) (9) 第四章测设与调整(数据) (11) 4.1 频率控制电路调测 (11) 4.2 地址计数器电路调测如下: (11) 4.3 存贮器电路调测(R=1千欧) (11) 4.4 数字幅度电路调测 (11) 4.5 波形扩展 (11) 4.6 整体指标测试 (12) 第五章设计小结 (13) 5.1电子电路课程设计的意义 (13) 5.2 设计任务完成情况 (13) 5.3 问题及改进 (13) 5.4 心得体会 (14) 附录 (15) 参考文献 (15) 主要芯片介绍: (15)

第一章技术指标 1.1 系统功能要求 数控正弦函数信号发生器的功能是,用数字电路技术产生正弦波信号。正弦波输出信号的频率和电压幅度均由数字式开关控制。 1.2 系统结构要求 数控正弦波信号发生器的结构要求如图(1)所示,其中正弦波发生器采用数字电路产生正弦信号,频率选择开关用于选择输出信号的频率,幅度选择开关用于选择输出信号电压幅度。频率选择开关和幅度选择开关均应采用数字电路。 1.3 电气指标 输出信号波形:正弦波 输出信号频率范围:1kHz~5kHz 输出信号最大电压:2.8V (峰峰值) 输出阻抗:50Ω 幅度选择档位:5档 波形可选择:方形,正弦波,三角波,斜波 输出频率最小步长:20Hz 1.4 设计条件 电源条件:+5V,-5V ?可供选择器件如下: ?型号名称及功能数量 ?DAC0832 8位D/C转换电路 2 ?MC4046 锁相电路 1 ?28C64B EEPROM存储器 1 ?T4LS393 双16进制计数器 1 ?MC4051 四模拟开关 1 ?TL084 运算放大器 1 ?8路开关双制直插式微型开关 2 ?MC4060 与晶振为频率器 1 ?CD7474 双D型触发器 3 ?CD7404 六反向器 1 ?74139 译码器 2 ?LED 二极管12 ?单开关开关 3 ?晶振32768k 1 ?其他若干电阻,电容 第二章整体方案设计 2.1 整体方案 事先对正弦波进行取样,把各个取样点的取样值存入存储器构成正弦函数表(可以存入一个周期完整信号,也可以存入半个周期或1/4周期)。通过数字频率控制电路对正弦函数表的读取,再把读出的取样值取出还原成原始的正弦信号。 2.2 整体原理及方框图

《软件课程设计》实验报告

编号:()字号 《软件课程设计》报告 班姓学级:名:号: 指导老师: 职称: 计算机科学与技术学院 二〇〇八年月

专业年级: 学生姓名: 任务下达日期: 课程设计日期: 课程设计题目:面向过程 一.需求分析 设计任务:软件课程设计任务书 题目七: 1.将输入的罗马数据化为10进制数。假设罗马数据中只使用如下7 个“基值”字母:M、D、C、L、X、V、I,分别用来表示 1000、500、100、50、10、5、1。如,罗马数据LXXXVII 表示10 进 制的87。 2.将输入的10进制正整数转换为罗马数据。假设罗马数据中只使用 “基值”字母:M、D、C、L、X、V、I,分别用来表示 1000、500、100、50、10、5、1。 主要界面为:

输入1或2可以选择功能。 输出的形式 如上所示:当输入大写或小写的阿拉伯字母时。 程序能计算出十进制。 程序所能达到的功能 测试的数据:当输入mvii罗马数字时输出十进制 1007 当输入十进制数4535 时相应输出MMMMDXXXV。 二.概要设计 程序中主要在开头用了一个死循环来实现功能的不断循环。通过exit函数退出程序。 主程序的流程以及各程序模块之间的层次(调用)关系。

Convert1() Break; >switch(n) Default; 三.详细设计 实现概要设计中定义的数据类型和操作。以增加程序的可读性,关键算法部分 画出程序流程图。 主函数的流程图如右图示: Switch() Cin>>n Convert1() Break; Case1: Case2:; Convert2(); Break; Default; Exit(1); While(1) Main() Return 0; Main->jiemina->while(1)- Convert2() Break; Exit()

arm嵌入式课程开发试验设计报告-南京邮电大学钱晨

通信与信息工程学院2015/2016 学年第一学期课程设计实验报告 模专块名称 业 ARM 嵌入式开发 电子信息工程 学生班级学生学号学生姓名

指导教师余雪勇

实验内容 一、基本要求 在基本要求中,需要从11 个测试程序中选做8 个,以下是对8 个程序的实验过程的叙述,包括实验前的硬件连接准备、软件环境配置(串口工具、dnw、ADS、交叉编译环境等)、每个实验的关键代码以及简单分析。 1、硬件连接 用USB 线、串口线把开发板连到电脑相应的端口,再将电源线插好。 2、软件环境配置 设置串口工具SecureCRT 解压在“windows 平台开发工具包\”目录下的“SecureCRT.rar”后,即可使用SeureCRT,双击图标,打开SecureCRT,如下图所示: 点击图中红色方框图标,出现下图的设置窗口:

在 Ptotocol 里面选择 Serial,出现如下图所示的对话框,详细设置 参考下图,超级终端设置部分,不再重复。 注意:Port 选项部分根据您实际使用的端口进行配置,其他选项请一 定配置如下图所示。 配置完毕后,点击上图的“Connect”选项即可连通串口。 DNW 设置 DNW 在这里是我们的.bin 文件下载软件,可实现我们向 flash 或者内存当中烧写程序的功能。 直接双击“Windows 平台工具\DNW”目录下的DNW 软件,出现下图: (1)点击“Configuration”菜单的“Options”,出现“UART\USB

Options”配置 (2)配置如下图: 3、实验前准备 串口工具和开发板连接成功后,将选择开关打到norflash,并按一下重启键,开发板则自动按照选择从norflash 启动。此时,如果 SecureCRT 界面显示如下,则表示串口工具已经工作正常: 一般出厂光盘里面已经有许多bin 文件了,其中包括我们此处所说的 TQ2440_Test 的bin 文件。我们也可以参考以下步骤,使用ADS1.2 生成自己的“*.bin”文件。 (1)、安装ADS1.2(ARM Developer Suite v1.2,一款针对ARM 的开发套件),并使用ADS打开天嵌科技的出厂自带的测试程序。 (2)、点击compile 键进行编译,点击make 键生成我们此处所需要的“*.bin”文件生成自己的 bin 文件之后,就可以使用SecureCRT 配合dnw 来实现对bin 文件的下载了:操作步骤其实和上面烧写出厂程序一样,在此再详细叙述一下:

设计模式上机实验二实验报告

设计模式实验二 实验报告书 专业班级软件0703 学号3901070324 姓名吉亚云 指导老师伟 时间2010年4月24日 中南大学软件学院

实验二设计模式上机实验二 一、实验目的 使用PowerDesigner和任意一种面向对象编程语言实现几种常用的设计模式,加深对这些模式的理解,包括装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式。 二、实验内容 使用PowerDesigner和任意一种面向对象编程语言实现装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式,包括根据实例绘制相应的模式结构图、编写模式实现代码,运行并测试模式实例代码。 三、实验要求 1. 正确无误绘制装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式的模式结构图; 2. 使用任意一种面向对象编程语言实现装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式,代码运行正确无误。 四、实验步骤 1. 使用PowerDesigner绘制装饰模式结构图并用面向对象编程语言实现该模式; 2. 使用PowerDesigner绘制外观模式结构图并用面向对象编程语言实现该模式; 3. 使用PowerDesigner绘制代理模式结构图并用面向对象编程语言实现该模式; 4. 使用PowerDesigner绘制职责链模式结构图并用面向对象编程语言实现该模式; 5. 使用PowerDesigner绘制命令模式结构图并用面向对象编程语言实现该模式; 6. 使用PowerDesigner绘制迭代器模式结构图并用面向对象编程语言实现该模式; 7. 使用PowerDesigner绘制观察者模式结构图并用面向对象编程语言实现该模式; 8. 使用PowerDesigner绘制状态模式结构图并用面向对象编程语言实现该模式; 9. 使用PowerDesigner绘制策略模式结构图并用面向对象编程语言实现该模式; 10. 使用PowerDesigner绘制模板方法模式结构图并用面向对象编程语言实现该模式。 五、实验报告要求 1. 提供装饰模式结构图及实现代码; 2. 提供外观模式结构图及实现代码; 3. 提供代理模式结构图及实现代码; 4. 提供职责链模式结构图及实现代码;

软件工程实验报告

1.1 实验一结构化需求分析 一.实验类型 图书馆管理系统 假定校图书馆需要你设计一个图书馆管理系统,要求包括以下功能: ●图书管理员可以管理馆藏图书,包括每本图书的藏书编号、书名、编著者、 ISBN号、出版社、出版时间、入馆时间、馆藏数量(如果馆藏数量为1,则标明为孤本图书)、在馆数量、学科类别等(或其它你认为有用的信息); ●管理员可以查询、统计所有图书、每一类图书或每一本书的借阅记录; ●图书管理员可以管理所有读者的信息,包括读者类型(学生、教师、社会人 士)、姓名、图书证编号、办证时间、证件状态(正常、挂失、冻结)等信息; ●图书管理员可以查询和统计所有读者、每一类读者或每一个读者的借阅记录; ●读者可以通过本系统查询馆藏图书; ●读者可以通过本系统借阅读书。但对于孤本图书或在馆数量为1的图书则不 准外借; ●管理员可以对超期未归还图书的读者发送电子邮件进行提醒,对于超期一年 不归还图书的读者冻结其图书证; ●读者可以通地本系统归还图书。如果图书超期,则自动计算罚款金额。二.实验目的 1.掌握数据流的分析技术 2.掌握软件需求分析的过程和方法。 3.熟悉项目开发计划和需求规格说明书的制定方法。 三.实验内容和要求 1.用结构化数据流分析技术进行软件系统需求分析,得出系统的数据流图和数据字典。 2.正确运用图表工具进行表示。 3.按规范正确编写软件文档。

四.实验步骤 1.理解所承担项目的业务流程和业务内容。 本软件项目是面向中小型学校、单位机构对于图书管理的基于服务的一款便捷式软件。能满足一系列常用图书管理的功能模块,提供简介、准确的操作性,可以很大程度减少人为因素带来的数据错误,统计错误,系统逻辑错误。并且规模小,很容易进行推广。 ●本项目的参与对象有图书管理员及读者。 ●对于读者,能通过该软件浏览馆藏的所有图书。读者在图书馆找到自己喜欢 的书后,能自行通过该软件操作完成借阅操作。若读者是第一次借书,必须通过图书管理员进行添加读者记录,登记读者信息。读者在登陆后方能完成借阅操作,对于孤本图书(即图书馆中馆藏只有一本的图书)则拒绝进行借阅操作。在规定期限内,读者可以通过该软件完成还书操作,对于超期的图书,应将扣除一定罚款金额,对于超期一年不归还图书的读者冻结其图书证。 并且读者能修改个人信息。 ●对于图书管理员,能管理自己和比自己低一级管理权限的管理员。一级管理 员能完成维护管理员的基本信息和二级管理员的一切操作。二级管理员则能维护自己的信息和添加读者、添加图书的功能。管理员可以对超期未归还图书的读者发送电子邮件进行提醒,对于超期一年不归还图书的读者冻结其图书证; 2.按照系统的功能及性能要求,系统的作业范围等,确定软件系统的开发环境(操作系统、开发工具、程序设计语言等)。 根据软件编程经验,本系统将采用面向对象的设计方法,使用Eclipse开发工具,java窗体应用程序,操作系统使用Win8。 3.绘制数据流图、功能分析图等。

南京邮电大学软件设计VHDL实验报告

南京邮电大学软件设计VHDL实验报告

通信与信息工程学院 / 年第 2 学期 软件设计实验报告 模块名称VHDL 专业通信工程 学生班级 学生学号 学生姓名 指导教师梅中辉

设计题目 基本课题:04. 2对4译码器 综合课题:18. 奇偶校验器 任务要求 1.基本课题:设计一个2对4译码器(输入:A B 输出:Y3 Y2 Y1 Y0),真值表如图2。 2. 奇偶校验器系统的功能是对八位二进制数据及其奇偶校验位的输入进行校验,输出正确的奇、偶校验位。ODD_IN 与EVEN_IN 是控制奇校验和偶校验功能输入,IN0到IN7是七位数据及一位校验位数据输入,IN_READY 表示输入数据已经准备好,能够处理,当OUT_REQ 输入表示要求输出数据,CLK 端口用于接收时钟信号,支持系统的时钟上升沿同步。当输出端口OUT_READY 输出信号有效时,表示输出数据已经准备好,能够为下级电路使用,ODD_OUT 与EVEN_OUT 用来输出正确的奇偶校验位。上述控制端口均为高电平有效。 A B Y3 Y2 Y1 Y0 0 0 0 1 1 0 0 1 1 1 1 0 1 1 0 1 1 0 1 1 0 1 1 1 实验设备 及软件 1. 微型计算机 2. EDA-VHDL 开发软件 同组人员 学号及姓名 11001803 胡雪琪

参考文献 1. 张顺兴 《数字电路与系统设计》东南大学出版社 .8 2. 苗丽华《VHDL 数字电路设计教程》人民邮电出版社 .11 VHDL 课程设计题目及要求(自编资料) 3. VHDL 课程设计题目及要求(自编资料) 4. 杨晓慧 杨永健 《基于FPGA 的EDA/SOPC 技术与VHDL 》 国防工业出版社 .7 5. Peter J. Ashenden 《The VHDL Cookbook 》Dept. Computer Science University of Adelaide South Australia July, 1990 报告内容 一. 实验目的 1.掌握组合逻辑中译码器电路的设计原理。 2.能利用VHDL 语言设计一个2-4译码器。 二. 实验器件 1.微型计算机 2.EDA-VHDL 开发软件 三. 实验名称 2-4译码器 四. 题目要求概述 设计一个2对4译码器(输入:A B 输出:Y3 Y2 Y1 Y0),真值表如图 五. 系统分析 ○ 1.原理图: 分析:EN=1,Z[0]=Z[1]=Z[2]=Z[3]=1; EN=0,Z[0]=!(!A!B ),Z[1]=!(!AB),Z[2]=!(A!B),Z[3]=!AB ○ 2.设计算法: A B Y3 Y2 Y1 Y0 1 0 0 1 1 0 0 1 1 1 1 0 1 1 0 1 1 0 1 1 0 1 1 1

课程设计电工实践报告

新疆大学 实习(实训)报告 实习(实训)名称:电工技能实践 学院:电气工程学院 专业、班级:电气15-3班 指导教师:娄毅力报告人: 学号: 时间:2017年6月19日

1 电机的启动和点动 1.1目的要求 a.通过操作加深对电机启动原理的理解 b.能正确连线,并安全启动 1. 2线路图 电机启动电路图 主电路: (1)隔离开关QS (2)熔断器FU (3)接触器KM1的常开主触点 (4)电动机M 控制电路 (1)开关SB3、SB1和SB2 (2)接触器KM1线圈的常开辅助触点 (3)SB2的常闭触头 1.3启动原理

在定子绕组上通三相交流电,定子绕组内(结合定子铁心)就会产生旋转磁场,当磁力线切割转子绕组时,转子绕组会在电磁感应作用下产生电流,结果就形成自己的磁场。在定子磁场与转子磁场相互作用时,转子就随定子磁场旋转而转动。(电动机就启动了)电能---------磁能------电磁感应------电能------磁能。磁能与磁能相互作用。电能就转变成机械能。 1.4步骤 1)起动电动机合上三相隔离开关QS,合上开关SB3、SB1、SB2常开触点, 接触器KM1吸引线圈得电,3对常开主触点闭合,将电动机M接入电源,电动 机开始起动。 2)停止电动机断开开关SB1,SB2常开触点,接触器KM1的线圈失电,其主触点和辅助触点均断开,电动机脱离电源,停止运转。 1.5实际接线图

电机启动实物图 2 三相异步电动机的正反转 2.1目的要求 a.通过操作加深对电机启动原理的理解; b.能正确连线,并安全启动; 2.2线路图 由两条启动支路构成,且在对方支路中相互串联上彼此的常闭辅助触头,使一个接触器线圈得电吸合后另一个接触器因所串联的常闭辅助触头断开而受到制约无法得电,保证了KM1,KM2不能同时得电,从而可靠地避免了两相电源短路事故的发生,电路安全、可靠。这种在一个接触器得电动作时通过其常闭辅

软件设计模式与软件体系结构实验报告

《软件体系结构》大作业(1) 学院:软件学院 课程名称:软件体系结构 专业班级: 学生姓名:学号: 学生姓名:学号: 指导教师: 完成时间:年月日 评分表 1、叙述各小组成员完成本题目的分工协作情况。 小组中的每个成员都先理解题目要求及涉及的设计模式,并一起完成代码编写。另外,组长负责文档制作。 2、评分表 序号姓名评分是否组长 1 2 作业正文需要包括以下内容: 1、作业题目内容的详细描述。 2、完成本题目所采用的软件设计模式名称及画出相应的类图,或者是所采用的 软件体系结构名称及画出相应的体系结构图。

3、画出完成本题目所设计程序的设计类图;如还有其他图,也一并画出。 4、完成本题目所设计的程序代码。 5、程序运行的典型界面截图

1、作业题目内容的详细描述。 【作业2.1-1】例2.3为使用工厂方法模式设计的汽车保险管理应用程序实例。现在需要 扩展例2.3的设计图,添加一个名为LuxuryCarInsurance的类,并且需要编写此类和其他需要添加的类的代码,详细要求参见光盘的相应作业部分。 【作业2.1-1】在例2.4中,设计并且实现了豪华(Super)和中等(Medium)别墅(House)与公寓(Condo)的查询。要求在该设计的基础上,增加一个新的类SemiDetacher(半独立式楼宇),并且编写代码,实现相应的查询功能,详细要求参见光盘的相应作业部分。 2、完成本题目所采用的软件设计模式名称及画出相应的类图,或者是所采用的软件体系结构名称及画出相应的体系结构图。 【作业2.1-1】采用的是工厂方法模式 【作业2.1-2】采用的是抽象方法模式

软件设计实验报告

通达学院 2017/2018 学年第 1 学期 课程设计实验报告 模块名称综合软件设计 专业通信工程 学生班级141301 学生学号14130118 学生姓名陈启朋 指导教师王诚

目录 第一章在线考试系统 (1) 1.1 实验目的 (1) 1.2 实验内容 (1) 1.3.1考试登录模块设计 (1) 1.3.2管理员模块设计 (7) 1.4 实验结果 (12) 第二章学生成绩管理系统 (13) 2.1 实验目的 (13) 2.2 实验内容 (13) 2.3 实验过程 (13) 2.3.1学生成绩管理模块设计 (13) 2.3.2 公共模块设计 (18) 2.4 实验结果 (20) 总结 (21) 参考文献 (21)

第一章在线考试系统 1.1 实验目的 通过本次软件设计,使学生掌握并能熟练运用Java和mysql语言编写程序,掌握面向对象的概念,采用C/S结构,设计数据库模型,能够了解和数据库连接的方法。 1.2 实验内容 本次实验的内容是编辑生成试题库,随机生成本次考试试题,提供在先评分并保存结果;同时,管理员可以添加、修改、删除考题和考生用户。 1.3 实验过程 1.3.1考试登录模块设计 主要程序如下: package com.Exam.Index; import java.awt.Insets; import javax.swing.*; import javax.swing.GroupLayout; import https://www.doczj.com/doc/104400292.html,youtStyle; import com.Exam.bean.*;

import com.Exam.controller.ControllerFrame; import com.Exam.dao.*; public class MyLand extends javax.swing.JFrame { initComponents(); }@SuppressWarnings("unchecked") private void initComponents() { jTextField3 = new javax.swing.JTextField(); jTextField1 = new javax.swing.JTextField(); jpanel = new MyJPanel(); choicejLabel = new javax.swing.JLabel(); userChoicejComboBox = new javax.swing.JComboBox(); choicejLabel1 = new javax.swing.JLabel(); UserNameTextField = new javax.swing.JTextField(); choicejLabel2 = new javax.swing.JLabel(); PassWordjTextField = new javax.swing.JPasswordField(); enterButton = new javax.swing.JButton(); enterButton.setMargin(new Insets(2, 2, 2, 2)); resButtonjButton = new javax.swing.JButton(); resButtonjButton.setMargin(new Insets(2, 2, 2, 2)); jTextField3.setText("jTextField3"); jTextField1.setText("jTextField1"); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); choicejLabel.setText("选择用户:"); userChoicejComboBox.setModel(newjavax.swing.DefaultComboBoxModel(new String[] { "","考生", "管理员" })); setTitle("考试系统"); choicejLabel1.setText("用户名:"); UserNameTextField.setText(""); choicejLabel2.setText(" 密码:"); PassWordjTextField.setText(""); enterButton.setText("登录"); enterButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { enterButtonActionPerformed(evt); } }); resButtonjButton.setText("重置"); resButtonjButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton2ActionPerformed(evt); } }); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());

相关主题
文本预览
相关文档 最新文档