移动互联网开发-课程设计报告

移动互联网开发-课程设计报告
移动互联网开发-课程设计报告

移动互联网开发

课程设计报告

学生姓名:学号:

专业:计算机科学与技术班级:

设计题目:拼图游戏

学年学期:2016 年秋季学期指导教师:

目录

一、设计题目 (3)

二、设计目的 (3)

三、设计原理及方案 (4)

1Android的系统架构 (4)

2使用的软件工具和环境 (6)

3需求分析与概要设计 (6)

4详细设计和关键问题 (8)

四、实现效果 (16)

五、设计体会 (18)

参考文献 (19)

一、设计题目

拼图游戏

二、设计目的

Android 智能手机功能非常强大,具有很高的性价比,非常深受人们的喜爱,可能正式因为如此,在2016年中,Android 智能手机在全世界占据着81.5%很夸张的市场份额,一举成为使用的人数最多,市场份额占据最大的智能手机系统。而Android 智能手机游戏的出现正是为了娱乐心神,并且随着智能移动终端和全球移动通信网络的不断进步,Android 智能手机游戏也正在经历从简单到复杂的进化过程。从全球来看,智能移动终端的娱乐服务一直被认为是带动移动数据业务加速并快速发展的重要力量。也是作为手机娱乐服务的重要内容之一。近年来,一直伴随着全球移动网络和移动终端性能不断的提高和完善。由于近几年来,Android智能手机游戏的快速发展,游戏的分类也变得越来越丰富,目前手机游戏按内容可分为:角色扮演类(RPG)、冒险类(AVG)、格斗类(FTG)、棋牌类、电影改版类、益智类、体育竞技类、模拟类。手机游戏种类目前已成为人类线上娱乐生活的不可或缺的最主流的载体而存在,现代人对于移动终端的休闲娱乐功能所需求越来越强大,移动终端上的游戏或已以成为了现代人们娱乐生活中不可或缺的一部分了。

基于Android的游戏开发,国内国外的水平差距很大。在市场上成名的手机游戏基本上都是国外游戏公司开发的,而且很容易辨认。因为学习的关系,本人接触了很多Android开发者的游戏,发现国内开发者开发的Android手机游戏,不仅界面粗糙,而且设计简单,同质化严重,相同的创意往往被反复抄袭很多次。而国外开发者开发的游戏不同,大型游戏内容丰富,情节完整;小型游戏而从用户体验和创意上远胜国内的开发者。

智能手机是指像电脑一样可以通过下载、安装软件来拓展基本功能的手机,一般具有智能手机操作系统。相较于非智能手机,它功能更强,处理速度更快。基于Linux的Android手机操作系统,由于具有开源、免费的特性,迅速得到广大爱好者及厂商的支持。目前,移动应用软件中的手机游戏开发是一项非常热门的技术。

Android系统对第三方软件是开放的,这促进了第三方软件的发展。Android系统以Linux 2.6为核心,其安全机制比较完善,增强了手机使用的安全性。Android平台已经形成由 Google 牵头,OHA组织参与,系统支持商和服务供应商完善搭配的运作机制,为Android平台的快速发展提供了坚实的基础。

由于Android构建在开源代码的框架之上,并且提供了强大的SDK库和开放的理念,所以它为广大的没有任何移动应用程序开发经验的新手开辟了一条开发完美移动应用程序的康庄大道。而富有经验的移动开发人员现在也可以方便地扩展到Android平台上来,利用它独特的功能来改进现有产品或者开发其他新颖产品。

Android软件在一两年的时间内已经迅速发展,在各类型应用系统中都有令用户满意的成

果。此次课程设计的初衷就是想设计出一个能够在任何环境任何时间都能够放松心情和娱乐心身的单机游戏,只要通过简单和易操作的Android游戏帮助手机用户来打发他们闲暇的时间,并娱乐心身和放松心情。通过该游戏的设计,将自己学到的Java,Android方面的理论知识应用于实践,提高自己的动手能力。在设计的过程中,不断的修补知识方面的漏洞,加深自己对程序设计的理解,为将来从事软件开发事业打下基础。

三、设计原理及方案

1Android的系统架构

Android的系统架构和其操作系统一样,采用了分层的架构。从图2.1中可以看出,Android 分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和Linux核心层。

图3-1 Android系统架构图

(1)应用程序

Android会同一系列核心应用程序包一起发布,该应用程序包包括Email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA语言编写的。

(2)应用程序框架

开发人员也可以完全访问核心应用程序所使用的API框架。该应用程序的架构设计简化了

组件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。同样,该应用程序重用机制也使用户可以方便的替换程序组件。

隐藏在每个应用后面的是一系列的服务和系统, 其中包括;

丰富而又可扩展的视图(Views):可以用来构建应用程序,它包括列表(lists),网格(grids),文本框(text boxes),按钮(buttons),甚至可嵌入的web浏览器。

内容提供器(Content Providers):使得应用程序可以访问另一个应用程序的数据(如联系人数据库),或者共享它们自己的数据。

资源管理器(Resource Manager):提供非代码资源的访问,如本地字符串,图形,和布局文件(layout files)。

通知管理器(Notification Manager):使得应用程序可以在状态栏中显示自定义的提示信息。

活动管理器(Activity Manager):用来管理应用程序生命周期并提供常用的导航回退功能。

(3)系统运行库

1) 程序库

Android包含一些C/C++库,这些库能被Android系统中不同的组件使用。它们通过 Android 应用程序框架为开发者提供服务。以下是一些核心库:

系统C库:一个从BSD继承来的标准C系统函数库(libc),它是专门为基于embedded linux 的设备定制的。

媒体库:基于PacketVideo OpenCORE,该库支持多种常用的音频、视频格式回放和录制,同时支持静态图像文件。编码格式包括MPEG4,H.264,MP3,AAC,AMR,JPG,PNG。

Surface Manager:对显示子系统的管理,并且为多个应用程序提供了2D和3D图层的无缝融合。

LibWebCore:一个最新web浏览器引擎用,支持Android浏览器和一个可嵌入的web视图。

SGL:底层的2D图形引擎。

3D libraries:基于OpenGL ES 1.0 APIs实现;该库可以使用硬件3D加速(如果可用)或者使用高度优化的3D软加速。

FreeType:位图(bitmap)和矢量(vector)字体显示。

SQLite:一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎。

2)Android 运行库

Android包括了一个核心库,该核心库提供了JAVA编程语言核心库的大多数功能。

每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。Dalvik被设计成一个设备可以同时高效地运行多个虚拟系统。Dalvik虚拟机执行(.dex)的Dalvik可执行文件,该格式文件针对小内存使用做了优化。同时虚拟机是基于寄存器的,所有的类都经由JAVA编译器编译,然后通过SDK的"dx"工具转化成.dex格式由虚拟机执行。

Dalvik虚拟机依赖于Linux内核的一些功能,比如线程机制和底层内存管理机制。

(4)Linux内核

Android的核心系统服务依赖于Linux 2.6内核,如安全性,内存管理,进程管理,网络协议栈和驱动模型。Linux内核也同时作为硬件和软件栈之间的抽象层。

2使用的软件工具和环境

Android是Google公司开发的基于Linux内核的开源操作系统。它包括:操作系统、用户界面和应用程序,而且不存在任何以往阻碍移动产业创新的专有权障碍。

Android 系统提供了四大基本组件,包括:Activity、Contentprovide、Service、Intentreceiver,每个组件都是一个视图(view)。但上述四大组件对于一个Android应用程序来说,却并不是必须的,可能只需要其中的几种酒可以满足设计需求。Manifext.xml配置文件时Android应用程序不可或缺的一个XML配置文件,其中定义了程序所用到的组件、组件功能以及一些必要条件和权限。

Android的上层应用程序一般是由java语言开发,所以首先应该有由SUN公司提供的Java SDK(其中包括JRE:Java Runtime Environment)以及开发环境Android Studio。此外,还需要Android开发专用Google提供的Android SDK。

3需求分析与概要设计

(1)功能需求

1)将1-15的数字无序的显示到游戏界面,右下角为空格

2)实现重新开始功能

3)实现使用帮助功能

4)实现点击按钮的监听器,调用action()函数,实现点击按钮与空格的交换

5)实现判断是否赢得游戏的功能(check()函数)

6)实现向上、向下、向左、向右滑动事件的处理

(2)流程图

图3-2 onCreate()函数功能

图3-3 onFling()函数功能

(3)目录结构

由于本程序由小组完成,固目录结构中还有另外的代码,实现的是2048游戏的功能,拼图游戏的主要代码在ShifGame中。

图3-4 目录结构图

4详细设计和关键问题

onCreate函数的实现:

1)打乱nums数组中的数字,用bns[i].setText函数显示到游戏界面,完成游戏的初始化

工作。

super.onCreate(savedInstanceState);

setContentView(https://www.360docs.net/doc/9c4532184.html,yout.activity_shift_game);

final Random rand = new Random();

detector = new GestureDetector(ShiftGame.this, this);

for (int i = 0; i < 15; i++) {//num[i]与随机产生的nums[j]交换,打乱nums数组保存的数字,nums[15]的值不参与交换,任然为0

int j = rand.nextInt(15);

int temp = nums[i];

nums[i] = nums[j];

nums[j] = temp;

}

bns[0] = (Button) findViewById(R.id.bn0);

bns[1] = (Button) findViewById(R.id.bn1);

bns[2] = (Button) findViewById(R.id.bn2);

bns[3] = (Button) findViewById(R.id.bn3);

bns[4] = (Button) findViewById(R.id.bn4);

bns[5] = (Button) findViewById(R.id.bn5);

bns[6] = (Button) findViewById(R.id.bn6);

bns[7] = (Button) findViewById(R.id.bn7);

bns[8] = (Button) findViewById(R.id.bn8);

bns[9] = (Button) findViewById(R.id.bn9);

bns[10] = (Button) findViewById(R.id.bn10);

bns[11] = (Button) findViewById(R.id.bn11);

bns[12] = (Button) findViewById(R.id.bn12);

bns[13] = (Button) findViewById(R.id.bn13);

bns[14] = (Button) findViewById(R.id.bn14);

bns[15] = (Button) findViewById(R.id.bn15);

freshData = (Button) findViewById(R.id.refresh);

askhelp = (Button) findViewById(R.id.askhelp);

for (int i = 0; i < 15; i++)//将打乱后的数字显示到界面上,nums[15]值为0,所以

bns无需设置

bns[i].setText(String.valueOf(nums[i]));

2)设置点击事件监听器:

bns[0].setOnClickListener(new OnClickListener() {

@Override

public void onClick(View arg0) {//调用action()函数和check()函数

action(0, 1, 4);

check();

}

});

3)重新开始功能的实现代码:

freshData.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {//点击重新开始

for (int i = 0; i < 15; i++) {

if (nums[i] == 0)//将原来为0的地方的背景设为blank_7

bns[i].setBackgroundResource(R.drawable.blank_7);

nums[i] = i + 1;

}

/*1 2 3 4

5 6 7 8

9 10(原来为0,设置blank_7) 11 12

13 14 15 14(循环到上一个位置即nums[14],此处值未被重新设置)*/

nums[15] = 0;//重新设置nums[15]为0

for (int i = 0; i < 15; i++) {//num[i]与随机产生的nums[j]交换,打乱nums 数组保存的数字

int j = rand.nextInt(15);

int temp = nums[i];

nums[i] = nums[j];

nums[j] = temp;

}

for (int i = 0; i < 15; i++)//显示到界面,nums[15]a为0,bns[15]不能不设置,应为此时bns[15]经过游戏运行,可能不在为空

bns[i].setText(String.valueOf(nums[i]));

bns[15].setText("");//设置bns[15]为空

bns[15].setBackgroundResource(R.drawable.blank_1);//设置背景,并没有什么用

helpTimes = 0;//重新开始后,使用帮助的次数清零

}

});

4)帮助功能的实现代码:

askhelp.setOnClickListener(new OnClickListener() {//点击使用帮助,实现交换任意两个数字的功能

@Override

public void onClick(View arg0) {

if (helpTimes == 0) {//为0,表示未使用过帮助

LayoutInflater inflater = LayoutInflater

.from(ShiftGame.this);

final View askHelpView = inflater.inflate(https://www.360docs.net/doc/9c4532184.html,yout.askhelp,

null);

new AlertDialog.Builder(ShiftGame.this)

.setTitle("交换数字")

.setView(askHelpView)

.setPositiveButton("交换",

new DialogInterface.OnClickListener() {

@Override

public void onClick(

DialogInterface dialog,

int which) {//获得输入的两个数字

int num1 = Integer

.valueOf(((EditText) (askHelpView

.findViewById(R.id.helpnum1)))

.getText()

.toString());

int num2 = Integer

.valueOf(((EditText) (askHelpView

.findViewById(R.id.helpnum2)))

.getText()

.toString());

if ((num1 > 0 && num1 < 16)

&& (num2 > 0 && num2 < 16)) {//两个数字应该都在1-15之内

int swap1 = 0, swap2 = 0;

for (int i = 0; i < 16; i++) {//找到要交换的数字在nums数组中的位置

if (nums[i] == num1)

swap1 = i;

if (nums[i] == num2)

swap2 = i;

}

//设置bns,使界面数字发生交换

bns[swap1].setText(String

.valueOf(num2));

bns[swap2].setText(String

.valueOf(num1));

//nums数组交换,使nums与bns对应

int temp = nums[swap1];

nums[swap1] = nums[swap2];

nums[swap2] = temp;

helpTimes++;//使用帮组次数加一,使本次游戏不能再使用帮助

}

}

}).setNegativeButton("取消", null).show();

} else {//提示本次游戏已使用过帮助

new AlertDialog.Builder(ShiftGame.this).setTitle("提示")

.setMessage("您已使用过一次帮助,不能再使用帮助")

.setPositiveButton("确定", null).show();

}

}

});

滑动事件处理实现代码:

// 向上滑动

boolean upCase(int where) {

if (where == 0 || where == 1 || where == 2 || where == 3)

return false;

else if (nums[where - 4] == 0) {//是空格,则交换数字

swap(where, where - 4);

return true;

} else

return false;

}

// 向下滑动

boolean downCase(int where) {

if (where == 12 || where == 13 || where == 14 || where == 15) return false;

else if (nums[where + 4] == 0) {

swap(where, where + 4);

return true;

} else

return false;

}

// 向左滑动

boolean leftCase(int where) {

if (where % 4 == 0)

return false;

else if (nums[where - 1] == 0) {

swap(where, where - 1);

return true;

} else

return false;

}

// 向右滑动

boolean rightCase(int where) {

if (where % 4 == 3)

return false;

else if (nums[where + 1] == 0) {

swap(where, where + 1);

return true;

} else

return false;

}

位置a的数字与位置b的空格交换

private void swap(int a, int b) {//数字与空格交换

//原数字变为空格

bns[a].setText("");

bns[a].setBackgroundResource(R.drawable.photo2048);

//空格变为数字

bns[b].setText(String.valueOf(nums[a]));

bns[b].setBackgroundResource(R.drawable.photo4096);

//保持nums与bns一致

int temp = nums[a];

nums[a] = nums[b];

nums[b] = temp;

}

点击事件监听器掉用的action()函数的实现代码,点击按钮的位置的不同要调用不同的action()函数

//点击按钮有两个相邻按钮时调用此函数

private void action(int a0, int a1, int a2) {

if (nums[a1] != 0 && nums[a2] != 0)

return;

else if (nums[a1] == 0)

swap(a0, a1);

else if (nums[a2] == 0)

swap(a0, a2);

}

//点击按钮有三个相邻按钮时调用此函数

private void action(int a0, int a1, int a2, int a3) {

if (nums[a1] != 0 && nums[a2] != 0 && nums[a3] != 0)

return;

else if (nums[a1] == 0)

swap(a0, a1);

else if (nums[a2] == 0)

swap(a0, a2);

else if (nums[a3] == 0)

swap(a0, a3);

}

//点击按钮有四个相邻按钮时调用此函数

private void action(int a0, int a1, int a2, int a3, int a4) {

if (nums[a1] != 0 && nums[a2] != 0 && nums[a3] != 0 && nums[a4] != 0) return;

else if (nums[a1] == 0)

swap(a0, a1);

else if (nums[a2] == 0)

swap(a0, a2);

else if (nums[a3] == 0)

swap(a0, a3);

else if (nums[a4] == 0)

swap(a0, a4);

}

除此之外,进行左滑、右滑、上滑、下滑等手势操作的时候,要用到onFling(MotionEvent e1, MotionEvent e2, float velocityX,float velocityY)函数,此函数是计算手势移动的速度和移动的范围大小,计算速度沿x和y轴提供像素每秒。

值得注意的是:

由于人的手指在滑动方向会有偏差,一般不会精准的向四个方向滑动,肯定会有偏差,所以要判断手指滑过方向的是水平方向还是垂直方向的意图,当水平方向的偏移量大于垂直方向的偏移量时,表明用户是水平滑动意图,当垂直方向的偏移量大于水平方向的偏移量,表明用户是垂直方向滑动的意图。

人的手指只有滑动一段距离才能表明用户的意图,不可能点一下屏幕或者稍微动一下就表示滑动意图,这显然不太符合现实情况,所以要定义偏移一定的距离才能判断用户的真正意图。

函数为:

public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float

velocityY) {

// 滑动响应

if (e1.getX() - e2.getX() > flipLength) {

for (int i = 0; i < 16; i++) {

if (leftCase(i))

return true;

}

} else if (e2.getX() - e1.getX() > flipLength) {

for (int i = 0; i < 16; i++) {

if (rightCase(i))

return true;

}

} else if (e1.getY() - e2.getY() > flipLength - 25) {

for (int i = 0; i < 16; i++) {

if (upCase(i))

return true;

}

} else if (e2.getY() - e1.getY() > flipLength - 25) {

for (int i = 0; i < 16; i++) {

if (downCase(i))

return true;

}

} else

return false;

return false;

}

当游戏界面上的数字按照1-15顺序排列,且空格在右下角的时候,游戏结束,检查游戏是否结束的代码如下:

private void check() {

result = ((nums[0] == 1) && (nums[1] == 2) && nums[2] == 3 && (nums[3] == 4));

if (result)

result = (result && (nums[4] == 5) && (nums[5] == 6)

&& nums[6] == 7 && (nums[7] == 8));

else

return;

if (result)

result = (result && (nums[8] == 9) && (nums[9] == 10)

&& nums[10] == 11 && (nums[11] == 12));

else

return;

if (result)

result = (result && (nums[12] == 13) && (nums[13] == 14) && nums[14] == 15);

if (result) {

new AlertDialog.Builder(ShiftGame.this).setTitle("恭喜")

.setMessage("You Win!!!\n").setPositiveButton("确定", null)

.setIcon(getResources().getDrawable(R.drawable.bomb))

.show();

}

}

四、实现效果

图4-1 开始游戏

图4-2 点击重新开始

图4-3 点击使用帮助

图4-4 交换2和4

五、设计体会

经过了几个星期的研究终于把拼图游戏完成了,这个游戏的完成使我明白了,看似很简单的事情要真的动手实践起来确实有一定的难度,还好经过我不断的耐心学习和钻研,才把这个游戏的基本功能实现了。

俗话说,不积跬步无以至千里,不积小流无以成江海,程序中的很多方法我都是在书中和网上找了又找,试了又试,一遍又一遍,最终才把需要的方法融入到程序当中,实现了必要的功能模块。

我先在网上找到该游戏,了解游戏的玩法,自己熟悉之后才开始慢慢琢磨如何布局,如何分析,如何设计,如何实现默写模块功能,就用户在屏幕上滑动,获取用户意图这一模块来说,以前感觉很不可思议的事情,经过我不断耐心的学习,实验,最终也实现了,感觉挺棒的,通过这一点使我了解到我现在需要学习的内容还很多,今后我一定积极去学习需要学习的知识,做到融会贯通,多做项目使自己在实践中学习,为将来打好铺垫。最终因为本人能力有限,时间仓促,该游戏只是实现了基本功能,具体的美化、优化等等还没来得及做,虽然只做了这么一小部分,但是我还是学到了很多平时没有掌握到的知识,虽然不太完美,但是总体来看我还是比较满意,相信只要有实践就会有收获,只要肯努力就会有回报。成功的大门永远为那些追

逐目标而奋发图强的人而开。

参考文献

1 埃克尔,陈号鹏.Java编程思想中文.第4版.北京:机械工业出版社机械,2007

2 蔡翠平.Java程序设计.北京:北方交通大学出版社,清华大学出版社,2004

3 候国峰.面向对象程序设计导论. 北京:电子工业出版社,2002

4 叶核亚,陈立.Java2程序设计实用教程.北京:电子工业出版社, 2005

5 陈天河.Java数据库高级编程宝典.北京:电子工业出版社,2005

6 程峰,黄若波,章恒翀.Java 2核心技术.第6版.北京:机械工业出版社,2003

7 Vikram Vaswani,许小青译.MySQL完全手册.北京:电子工业出版社,2004

8 杜波依斯,杨涛.MySQL权威指南.第2版.北京:机械工业出版社,2004

9 王珊,萨师煊.数据库系统概论.第4版.北京:机械工业出版社,2006

10 郑人杰,殷人昆,陶永雷.实用软件工程.北京:清华大学出版社,1997

课程设计报告模板)

课程设计报告模板()

————————————————————————————————作者: ————————————————————————————————日期: ?

课程设计(论文)任务书 软件学院软件+电商专业09级(2)班 一、课程设计(论文)题目基本模型机设计与实现 二、课程设计(论文)工作自2011年6月 20 日起至2011年 6月 24日止。 三、课程设计(论文) 地点:计算机组成原理实验室(5#301) 四、课程设计(论文)内容要求: 1.课程设计的目的 通过课程设计的综合训练,在掌握部件单元电路实验的基础上,进一步掌握整机 概念。培养学生实际分析问题、解决问题和动手能力,最终目标是想通过课程设计的形式,帮助学生系统掌握该门课程的主要内容,更好地完成教学任务。 2.课程设计的任务及要求 1)基本要求? (1)课程设计前必须根据课程设计题目认真查阅资料; (2)实验前准备好实验程序及调试时所需的输入数据; (3)实验独立认真完成; (4)对实验结果认真记录,并进行总结和讨论。 2)课程设计论文编写要求 (1)按照书稿的规格撰写打印课设论文 (2)论文包括目录、绪论、正文、小结、参考文献、附录等 (3)正文中要有问题描述、实验原理、设计思路、实验步骤、调试过程与遇到问题的解决方法、总结和讨论等 (4)课设论文装订按学校的统一要求完成 3)课设考核 从以下几方面来考查:

(1)出勤情况和课设态度; (2)设计思路; (3)代码实现; (4)动手调试能力; (5)论文的层次性、条理性、格式的规范性。 4)参考文献 [1]王爱英.计算机组成与结构[M]. 北京:清华大学出版社, 2007. [2] 王爱英. 计算机组成与结构习题详解与实验指导[M]. 北京:清华大学出版社, 2007. 5)课程设计进度安排 内容天数地点 构思及收集资料1图书馆 实验与调试 3 实验室 撰写论文 1 图书馆 6)任务及具体要求 设计实现一个简单的模型机,该模型机包含若干条简单的计算机指令,其中至少包括输入、输出指令,存储器读写指令,寄存器访问指令,运算指令,程序控制指令。学生须根据要求自行设计出这些机器指令对应的微指令代码,并将其存放于控制存储器,并利用机器指令设计一段简单机器指令程序。将实验设备通过串口连接计算机,通过联机软件将机器指令程序和编写的微指令程序存入主存中,并运行此段程序,通过联机软件显示和观察该段程序的运行,验证编写的指令和微指令的执行情况是否符 合设计要求,并对程序运行结果的正、误分析其原因。 学生签名: 亲笔签名 2011年6月20 日 课程设计(论文)评审意见 (1)设计思路:优( )、良()、中( )、一般()、差( ); (2)代码实现:优()、良()、中()、一般()、差();

课程设计报告【模板】

模拟电子技术课程设计报告设计题目:直流稳压电源设计 专业电子信息科学与技术 班级电信092 学号 200916022230 学生姓名夏惜 指导教师王瑞 设计时间2010-2011学年上学期 教师评分 2010年月日

昆明理工大学津桥学院模拟电子技术课程设计 目录 1.概述 (2) 1.1直流稳压电源设计目的 (2) 1.2课程设计的组成部分 (2) 2.直流稳压电源设计的内容 (4) 2.1变压电路设计 (4) 2.2整流电路设计 (4) 2.3滤波电路设计 (8) 2.4稳压电路设计 (9) 2.5总电路设计 (10) 3.总结 (12) 3.1所遇到的问题,你是怎样解决这些问题的12 3.3体会收获及建议 (12) 3.4参考资料(书、论文、网络资料) (13) 4.教师评语 (13) 5.成绩 (13)

昆明理工大学津桥学院模拟电子技术课程设计 1.概述 电源是各种电子、电器设备工作的动力,是自动化不可或缺的组成部分,直流稳压电源是应用极为广泛的一种电源。直流稳压电源是常用的电子设备,它能保证在电网电压波动或负载发生变化时,输出稳定的电压。一个低纹波、高精度的稳压源在仪器仪表、工业控制及测量领域中有着重要的实际应用价值。 直流稳压电源通常由变压器、整流电路、滤波电路、稳压控制电路所组成,具有体积小,重量轻,性能稳定可等优点,电压从零起连续可调,可串联或关联使用,直流输出纹波小,稳定度高,稳压稳流自动转换、限流式过短路保护和自动恢复功能,是大专院校、工业企业、科研单位及电子维修人员理想的直流稳压电源。适用于电子仪器设备、电器维修、实验室、电解电镀、测试、测量设备、工厂电器设备配套使用。几乎所有的电子设备都需要有稳压的电压供给,才能使其处于良好的工作状态。家用电器中的电视机、音响、电脑尤其是这样。电网电压时高时低,电子设备本身耗供电造成不稳定因家。解决这个不稳定因素的办法是在电子设备的前端进行稳压。 直流稳压电源广泛应用于国防、科研、大专院校、实验室、工矿企业、电解、电镀、充电设备等的直流供电。 1.1直流稳压电源设计目的 (1)、学习直流稳压电源的设计方法; (2)、研究直流稳压电源的设计方案; (3)、掌握直流稳压电源的稳压系数和内阻测试方法。 1.2课程设计的组成部分 1.2.1 设计原理

控制系统仿真课程设计报告.

控制系统仿真课程设计 (2011级) 题目控制系统仿真课程设计学院自动化 专业自动化 班级 学号 学生姓名 指导教师王永忠/刘伟峰 完成日期2014年6月

控制系统仿真课程设计一 ———交流异步电机动态仿真 一 设计目的 1.了解交流异步电机的原理,组成及各主要单元部件的原理。 2. 设计交流异步电机动态结构系统; 3.掌握交流异步电机调速系统的调试步骤,方法及参数的整定。 二 设计及Matlab 仿真过程 异步电机工作在额定电压和额定频率下,仿真异步电机在空载启动和加载过程中的转速和电流变化过程。仿真电动机参数如下: 1.85, 2.658,0.2941,0.2898,0.2838s r s r m R R L H L H L H =Ω=Ω===, 20.1284Nm s ,2,380,50Hz p N N J n U V f =?===,此外,中间需要计算的参数如下: 21m s r L L L σ=-,r r r L T R =,22 2 s r r m t r R L R L R L +=,10N m TL =?。αβ坐标系状态方程: 其中,状态变量: 输入变量: 电磁转矩: 2p m p s r s L r d ()d n L n i i T t JL J βααωψψβ=--r m r r s r r d 1d L i t T T ααβαψψωψ=--+r m r r s r r d 1d L i t T T ββαβψψωψ=-++22s s r r m m m s r r s s 2r r r r d d i R L R L L L L i u t L T L L ααβαα σψωψ+=+-+22 s s r r m m m s r r s s 2 r r r r d d i R L R L L L L i u t L T L L ββαββ σψωψ+=--+[ ] T r r s s X i i αβαβωψψ=[ ] T s s L U u u T αβ=()p m e s s s s r n L T i i L βααβ ψψ=-

城市轨道交通课程设计报告很齐全很完整的课程设计

城市轨道交通课程设计报告很齐全很完整的课 程设计 文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]

轨道交通课程设计报告指导老师:江苏大学武晓辉老师 一、项目背景及镇江市轨道交通建设必要性 镇江市位于北纬31°37′~32°19′,东经118°58′~119°58′,地处长江三角洲地区的东端,江苏省的西南部,北临长江,与扬州市、泰州市隔江相望;东、南与常州市相接;西邻南京市。镇江市域总面积3847平方公里,总体规划定位城市性质为国家历史文化名城,长江三角洲重要的港口、风景旅游城市和区域中心城市之一。 2005年,镇江城市总体规划进入实施阶段,城市空间布局将极大突破现有形态,“扩充两翼、向南延伸”成为城市新的发展方向。伴随城市化进程加快、镇江跨入特大城市行列,城市空间的拓展对城市交通体系提出了新的要求。镇江市为江苏省辖地级市,现辖京口、润州、丹徒三区,代管句容、丹阳、扬中三市。另有国家级经济技术开发区-镇江新区行使市辖区经济、社会管理权限。镇江全市总面积3848平方公里,人口311万人,市区户籍人口万人市,市区常住人口万人,人民政府驻润州区南徐大道68号。 内部城市空间结构调整:2005年,镇江城市总体规划进入实施阶段,城市空间布局将极大突破现有形态,“扩充两翼、向南延伸”成为城市新的发展方向。伴随城市化进程加快、镇江跨入特大城市行列,城市空间的拓展对城市交通体系提出了新的要求,建设轨道交通是未来城市规划的必然结果。 城市化发展水平规划: 近期(2000-2010):城市化水平达到:55% 城镇人口162万

中期(2010-2020):城市化水平达到:60% 城镇人口184万 远期(2020-2050):城市化水平达到:70% 城镇人口231万 城市等级规模规划: 中期:形成1个大城市,1个中等城市,2个小城市和38个小城镇的等级结构。 远期:形成1个特大城市,2个中等城市,1个小城市和27个小城镇的等级结构。 镇江位于南京都市圈核心层,是一座新兴工业城。镇江拥有2个国家级开发区、6个省级开发区、5个国家级高新技术产业基地,镇江市的经济发展水平居江苏省中等偏上水平。2013年实现国内生产总值亿元,完成公共财政预算收入亿元,城镇居民人均可支配收入32977元,农民人均纯收入16258元,增长%,;人均GDP73947元,居江苏省第5名。“三次产业”分别实现增加值亿元、亿元、亿元,同比分别增长%、%和%。 镇江高新区位于我市主城区的西部,晋升为国家级高新区后,就与东部的镇江国家级经济技术开发区(镇江新区)形成“两翼”,在提升经济体量的基础上,进一步提升经济质量,形成主城区“一体两翼”格局。同时,与苏南现代化示范区建设、国家自主创新示范区创建等重大机遇形成叠加优势。 经济发展规划: 近期:人均GDP达到万元,产业结构为∶∶41,财政总收入完成80亿元以上 中期:人均GDP达到6万元,产业结构为∶∶44,财政总收入150亿元以上。

过程控制系统课程设计报告报告实验报告

成都理工大学工程技术学院《过程控制系统课程设计实验报告》 名称:单容水箱液位过程控制 班级:2011级自动化过程控制方向 姓名: 学号:

目录 前言 一.过程控制概述 (2) 二.THJ-2型高级过程控制实验装置 (3) 三.系统组成与工作原理 (5) (一)外部组成 (5) (二)输入模块ICP-7033和ICP-7024模块 (5) (三)其它模块和功能 (8) 四.调试过程 (9) (一)P调节 (9) (二)PI调节 (10) (三)PID调节 (11) 五.心得体会 (13)

前言 现代高等教育对高校大学生的实际动手能力、创新能力以及专业技能等方面提出了很高的要求,工程实训中心的建设应紧紧围绕这一思想进行。 首先工程实训首先应面向学生主体群,建设一个有较宽适应面的基础训练基地。通过对基础训练设施的 集中投入,面向全校相关专业,形成一定的规模优势,建立科学规范的训练和管理方法,使训练对象获得机械、 电子基本生产过程和生产工艺的认识,并具备一定的实践动手能力。 其次,工程实训的内容应一定程度地体现技术发展的时代特征。为了适应现代化工业技术综合性和多学科交叉的特点,工程实训的内容应充分体现机与电结合、技术与非技术因素结合,贯穿计算机技术应用,以适应科学技术高速发展的要求。应以一定的专项投入,建设多层次的综合训练基地,使不同的训练对象在获得对现代工业生产方式认识的同时,熟悉综合技术内容,初步建立起“大工程”的意识,受到工业工程和环境保护方面的训练,并具备一定的实用技能。 第三,以创新训练计划为主线,依靠必要的软硬件环境,建设创新教育基地。以产品的设计、制造、控制乃至管理为载体,把对学生的创新意识和创新能力的培养,贯穿于问题的观测和判断、创造和评价、建模和设计、仿真和建造的整个过程中。

EDA课程设计说明书参考格式

<>课程设计说明书 题目 院、部: 学生姓名: 指导教师:王晓丽职称助教 专业: 班级: 完成时间:

摘要(三号,黑体,居中,字间空两格字符) (空二行换行) 空4格打印摘要内容(小四号宋体,行距20)。 关键词:(摘要内容后下空一行打印“关键词”三字(小四号黑体),其后为关键词(小四号宋体),每一关键词之间用分号隔开,最后一个关键词后不打标点符号。 ABSTRACT ①居中打印“ABSTRACT”,再下空二行打印英文摘要内容。②摘要内容每段开头留四个空字符。③摘要内容后下空一行打印“Key words”,其后为关键词用小写字母,每一关键词之间用分号隔开,最后一个关键词后不打标点符号。 Key words :aaa;bbb;ccc

目录(3号,黑体,居中) (空1行,以小4号黑体设置字体及大小,行间距22、字间距标准) 1 XXXXXX………………………………………………………………………… 1.1 XXXXXX……………………………………………………………………… 1.2 XXXXXX……………………………………………………………………… ┇ 2 XXXXXX………………………………………………………………………… 2.1 XXXXXX……………………………………………………………………… 2.2 XXXXXX……………………………………………………………………… ┇ 3 4 结束语 参考文献………………………………………………………………………………. 致谢……………………………………………………………………………………附录……………………………………………………………………………………

WEB课程设计报告

Web开发技术课程设计题目:学生信息管理系统 院系:软件工程 班级学号:软件13 -1(21,19) 姓名:唐波 同组成员:史伟良 指导教师:王双利 2014 年12 月12 日

Web开发技术课程设计任务书 一、题目:学生信息管理系统 二、设计要求 (1)史伟良负责设计与实现管理系统登陆界面;唐波负责设计与实现管理系统增删改查界面。 (2)查阅相关资料,自学具体课题中涉及到的新知识。 (3)采用结构化、模块化程序设计方法,功能要完善,具有一定的创新。 (4)所设计的程序有输入、输出。 (5)按要求写出了课程设计报告,于设计结束后2天提交了。其主要内容包括:封皮、课程设计任务书,指导教师评语与成绩、目录、概述、软件总体设计、详细设计、软件的调试、总结、致谢、附录(带中文注释的程序清单)、参考文献。总体设计应配合软件总体模块结构图来说明软件应具有的功能;详细设计应用传统或N-S流程图和屏幕抓图说明;调试的叙述应配合出错场景的抓图来说明出现了哪些错误,如何解决的。 三、课程设计工作量 一般每人的程序量在200行有效程序行左右,不得抄袭。 四、课程设计工作计划 2014年12月8日,指导教师讲解布置题目,学生根据题目准备资料; 2014年12月8日,进行总体方案设计; 2014年12月8日~2014年12月10日,完成程序模块并通过独立编译; 2014年12月10日~2014年12月11日,将各模块集成为一完整的系统, 并录入足够数据进行调试运行; 2014年12月11日~2014年12月12日,验收、撰写课程设计报告。 指导教师签章: 专业主任签章:

Web开发技术课程设计指导教师评语与成绩

自动控制系统课程设计报告说明书

H a r b i n I n s t i t u t e o f T e c h n o l o g y 课程设计说明书(论文) 课程名称:自动控制理论课程设计 设计题目:直线一级倒立摆控制器设计 院系:电气学院电气工程系 班级: 设计者: 学号: 指导教师: 设计时间:2016.6.6-2016.6.19 手机: 工业大学教务处

*注:此任务书由课程设计指导教师填写。

直线一级倒立摆控制器设计 摘要:采用牛顿—欧拉方法建立了直线一级倒立摆系统的数学模型。采用MATLAB 分析了系统开环时倒立摆的不稳定性,运用根轨迹法设计了控制器,增加了系统的零极点以保证系统稳定。采用固高科技所提供的控制器程序在MATLAB中进行仿真分析,将电脑与倒立摆连接进行实时控制。在MATLAB中分析了系统的动态响应与稳态指标,检验了自动控制理论的正确性和实用性。 0.引言 摆是进行控制理论研究的典型实验平台,可以分为倒立摆和顺摆。许多抽象的控制理论概念如系统稳定性、可控性和系统抗干扰能力等,都可以通过倒立摆系统实验直观的表现出来,通过倒立摆系统实验来验证我们所学的控制理论和算法,非常的直观、简便,在轻松的实验中对所学课程加深了理解。由于倒立摆系统本身所具有的高阶次、不稳定、多变量、非线性和强耦合特性,许多现代控制理论的研究人员一直将它视为典型的研究对象,不断从中发掘出新的控制策略和控制方法。 本次课程设计中以一阶倒立摆为被控对象,了解了用古典控制理论设计控制器(如PID控制器)的设计方法和用现代控制理论设计控制器(极点配置)的设计方法,掌握MATLAB仿真软件的使用方法及控制系统的调试方法。 1.系统建模 一级倒立摆系统结构示意图和系统框图如下。其基本的工作过程是光电码盘1采集伺服小车的速度、位移信号并反馈给伺服和运动控制卡,光电码盘2采集摆杆的角度、角速度信号并反馈给运动控制卡,计算机从运动控制卡中读取实时数据,确定控制决策(小车运动方向、移动速度、加速度等),并由运动控制卡来实现该控制决策,产生相应的控制量,使电机转动,通过皮带带动小车运动从而保持摆杆平衡。 图1 一级倒立摆结构示意图

课程设计报告撰写规范

.课程设计报告撰写规范

————————————————————————————————作者:————————————————————————————————日期: 2

江西理工大学应用科学学院信息工程系 课程设计规范 (试行) 信息工程系 二○一○年六月

第1章内容要求 第1章内容要求 课程设计报告由以下几个部分组成组成,依次为: I、统一的封面,封面之后为课设评分表及答辩记录表; II、摘要; III、目录; IV、课程设计总结报告正文; V、总结(本课题核心内容、特点和方案的优缺点、改进方向和意见)VI、按统一格式列出主要参考文献。 1

第2章格式要求 第2章格式要求 课程设计报告每部分从新的一页开始,各部分要求如下: 2.1封面 统一的封面(含课程设计课题名称、专业、班级、姓名、学号、指导教师等,详见第五部分“格式范例”) 2.2摘要 应概括地反映出本课程设计的主要内容,包括工作目的、实验研究方法、研究成果和结论,重点是本论文的主要工作。摘要力求语言精炼准确,建议500字以内。摘要中不要出现图片、图表、表格或其他插图材料。 关键词是为了便于作文献索引和检索工作而从论文中选取出来用以表示全文主题内容信息的单词或术语。 关键词在摘要内容后另起一行标明,一般3~5个,之间用“;”分开。 2.3 目录 目录由标题名称和页码组成,包括:正文(含结论)的一级、二级和三级标题和序号。具体格式见第五部分“格式范例”。 2.4 符号说明 如果课程设计报告中使用了大量的物理量符号、标志、缩略词、专门计量单位、自定义名词和术语等,应将全文中常用的这些符号及意义列出。如果上述符号和缩略词使用数量不多,可以不设专门的主要符号表,但在报告中出现时须加以说明。缩略词应列出中英文全称。 2

城市轨道交通课程设计报告很齐全很完整的课程设计

城市轨道交通课程设计报告很齐全很完整的课程设计

轨道交通课程设计报告 指导老师:江苏大学武晓辉老师 一、项目背景及镇江市轨道交通建设必要性 镇江市位于北纬31°37′~32°19′,东经118°58′~119°58′,地处长江三角洲地区的东端,江苏省的西南部,北临长江,与扬州市、泰州市隔江相望;东、南与常州市相接;西邻南京市。镇江市域总面积3847平方公里,总体规划定位城市性质为国家历史文化名城,长江三角洲重要的港口、风景旅游城市和区域中心城市之一。 ,镇江城市总体规划进入实施阶段,城市空间布局将极大突破现有形态,“扩充两翼、向南延伸”成为城市新的发展方向。伴随城市化进程加快、镇江跨入特大城市行列,城市空间的拓展对城市交通体系提出了新的要求。镇江市为江苏省辖地级市,现辖京口、润州、丹徒三区,代管句容、丹阳、扬中三市。另有国家级经济技术开发区-镇江新区行使市辖区经济、社会管理权限。镇江全市总面积3848平方公里,人口311万人, 市区户籍人口103.3万人市, 市区常住人口122.37万人,人民政府驻润州区南徐大道68号。

内部城市空间结构调整:,镇江城市总体规划进入实施阶段,城市空间布局将极大突破现有形态,“扩充两翼、向南延伸”成为城市新的发展方向。伴随城市化进程加快、镇江跨入特大城市行列,城市空间的拓展对城市交通体系提出了新的要求,建设轨道交通是未来城市规划的必然结果。 城市化发展水平规划: 近期( - ):城市化水平达到:55% 城镇人口162万 中期( -2020):城市化水平达到:60% 城镇人口184万 远期(2020-2050):城市化水平达到:70% 城镇人口231万 城市等级规模规划: 中期:形成1个大城市,1个中等城市,2个小城市和38个小城镇的等级结构。 远期:形成1个特大城市,2个中等城市,1个小城市和27个小城镇的等级结构。 镇江位于南京都市圈核心层,是一座新兴工业城。镇江拥有2个国家级开发区、6个省级开发区、5个国家级高新技术产业基地,镇江市的经济发展水平居江苏省中等偏上水平。实现国内生产总值2927.09亿元,完成公共财政预算收入245.52亿元,城镇居民人均可支配收入32977元,农民人均纯收入16258元,增长18.1%,;人均GDP73947元,居江苏省第5名。“三次产业”分

计算机控制技术课程设计报告

《计算机控制技术》课程设计单闭环直流电机调速系统

1 设计目的 计算机控制技术课程是集微机原理、计算机技术、控制理论、电子电路、自动控制系统、工业控制过程等课程基础知识一体的应用性课程,具有很强的实践性,通过这次课程设计进一步加深对计算机控制技术课程的理解,掌握计算机控制系统硬件和软件的设计思路,以及对相关课程理论知识的理解和融会贯通,提高运用已有的专业理论知识分析实际应用问题的能力和解决实际问题的技能,培养独立自主、综合分析与创新性应用的能力。 2 设计任务 2.1 设计题目 单闭环直流电机调速系统 实现一个单闭环直流电机调压调速控制,用键盘实现对直流电机的起/停、正/反转控制,速度调节要求既可用键盘数字量设定也可用电位器连续调节,需要有速度显示电路。扩展要求能够利用串口通信方式在PC上设置和显示速度曲线并且进行数据保存和查看。 2.2 设计要求 2.2.1 基本设计要求 (1)根据系统控制要求设计控制整体方案;包括微处理芯片选用,系统构成框图,确定参数测围等; (2)选用参数检测元件及变送器;系统硬件电路设计,包括输入接口电路、逻辑电路、操作键盘、输出电路、显示电路; (3)建立数学模型,确定控制算法; (4)设计功率驱动电路; (5)制作电路板,搭建系统,调试。 2.2.2 扩展设计要求 (1)在已能正常运行的微计算机控制系统的基础上,通过串口与PC连接; (2)编写人机界面控制和显示程序;编写微机通信程序;实现人机实时交互。

3方案比较 方案一:采用继电器对电动机的开或关进行控制。这个方案的优点是电路较为简单,缺点是继电器的响应时间慢、机械结构易损坏、寿命较短、可靠性不高。 方案二:采用电阻网络或数字电位器调整电动机的分压,从而达到调速的目的。但是电阻网络只能实现有级调速,而数字电阻的元器件价格比较昂贵。更主要的问题在于一般电动机的电阻很小,但电流很大;分压不仅会降低效率,而且实现很困难。 方案三:采用由电力电子器件组成的H 型PWM 电路。用单片机控制电力电子器件使之工作在占空比可调的开关状态,精确调整电动机转速。这种电路由于工作在电力电子器件的饱和截止模式下,效率非常高;H 型电路保证了可以简单地实现转速和方向的控制;电子开关的速度很快,稳定性也极佳,是一种广泛采用的PWM 调速技术。 兼于方案三调速特性优良、调整平滑、调整围广、过载能力大,因此本设计采用方案三。 4单闭环直流电机调速系统设计 4.1单闭环调速原理 4.1.1 闭环系统框图 4.1.2 调速原理 直流电机转速有: 常数Ke Ka 不变,Ra 比较小。 所以调节Ua 就能调节n 。 n n I K R K U K R I U n d d a e e d ?-=Φ -Φ=-=0φa a a U I U ≈-

CAD课程设计报告

XXX课程标准 盐城工学院 《电子线路CAD》课程设计报告 设计题号:第五题 姓名:邓钟鸣 学院:信息工程学院 专业:电科 班级:141 页脚内容1

学号:33 日期2016年12月26日——2017年1月13日指导教师:曹瑞、朱明 页脚内容2

目录 一、摘要 (1) 二、设计的任务与要求 (1) 三、软件介绍 (1) 四、画图的步骤 (3) 五、设计总结 (20) 六、参考文献 (21) 附录: 附录1.原理图 附录2.PCB图 页脚内容1

页脚内容2

一、摘要 电子线路CAD是从实用角度出发,详细介绍了Altium Designer的实用功能,可以引导读者轻松入门,快速提高。全面介绍了Altium Designer的界面、基本组成及使用环境等,并详细讲解了电路原理图的绘制、元件设计、印制电路板图的基本知识、印制电路板图设计方法及操作步骤等,详细讲解了电路从电路原理图设计到印制电路板图输出的整个过程。 关键词:Altium Designer软件;电路原理图设计;电路板; 二、设计的任务与要求 1.锻炼学生将理论用于实际和动手的能力以及更熟练的使用Altium Designer软件 2.使学生学会绘制电路原理图、电路查错、仿真、PCB(Printed Circuit Board,印刷电路板)设计 3、掌握元件封装的方法 意义:通过这次Altium Designer期末考试以及报告的设计,提高思考能力和实践能力。同时通过本课题设计,巩固已学的理论知识,建立逻辑数字电路的理论和实践的结合,了解各单元电路之间的关系及相互影响,从而能正确设计、计算各个单元电路。而且更加掌握的Altium Designer该软件的使用,对原理图的绘制和PCB的布局以及电路的仿真都有了进一步的理解。 三、软件介绍 页脚内容1

教务管理系统课程设计报告

教务管理系统课程 设计报告

教务综合管理系统设计报告 专业:软件工程 成员:车振军陆建伟 徐蕾杨思倩指导老师:徐明 日期: -6-15

一、引言 1.1 目的 为了保证项目小组能够按时完成小组任务及目标,便于项目小组成员更好地了解项目情况,使项目小组开展的各个过程合理有序,因此确定各个项目模块的开发情况和主要的负责人,供各项目模块的负责人阅读,做到及时协调,按步有序进行项目的开发,减少开发中的不必要损失。 预期的读者是设计人员、开发人员、项目管理人员、测试人员和用户。 1.2 背景 高校教务管理工作是高等教育中的一个极为重要的环节,是整个院校管理的核心和基础。面对种类繁多的数据和报表,手工处理方式已经很难跟上现代化管理的步伐,随着计算机及通讯技术的飞速发展,高等教育对教务管理工作提出了更高的要求。尽快改变传统的管理模式,运用现代化手段进行科学管理,已经成为整个教育系统亟待解决的课题之一。 教务管理系统是一个大型复杂的计算机网络信息系统,满足各类高校现在和将来对信息资源采集、存储、处理、组织、管理和利用的需求,实现信息资源的高度集成与共享,实现信息资源的集中管理和统一调度。为各级决策管理部门提出准确、及时的相关信息和快捷、方便、科学的决策分析处理系统;为信息交流、教务管理提供一个高效快捷的电子化手段;最终达到进一步

提高各级领导科学决策水平,提高各院系、各部门管理人员管理水平与办公效率,减轻工作负担的目的。 教务管理系统面向管理员、教师和全校学生,实现学生管理、教师管理、课程管理、成绩处理。 1.3 定义 1.3.1 MySQL MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,当前属于 Oracle 旗下公司。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 MySQL所使用的 SQL 语言是用于访问数据库的最常见标准化语言。MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,特别是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。1.3.2 MyEclipse MyEclipse,是在eclipse 基础上加上自己的插件开发而成的功能强大的企业级集成开发环境,主要用于Java、Java EE以及移动应用的开发。MyEclipse的功能非常强大,支持也十分广泛,特别是对各种开源产品的支持相当不错。 二、需求分析 2.1 功能需求 2.1.1 系统目标

课程设计报告书正文标准格式

课 程 设 计 报 告 书 专 用 纸 1 引言(或绪论)(可作为正文第1章标题,用小3号黑体,加粗, 并留出上下间距为:段前0.5行,段后0.5行) ×××××××××(小4号宋体,20磅行距)××××××××××××××××××××××××××××××………… 1.1 ××××××(作为正文2级标题,用4号黑体,加粗) ×××××××××(小4号宋体,20磅行距)×××××××××××××××××××××××××××××××………… 1.1.1 ××××(作为正文3级标题,用小4号黑体,不加粗) ×××××××××(小4号宋体,20磅行距)×××××××××××××××××××××××××××………… 2 ×××××××(作为正文第2章标题,用小3号黑体,加粗, 并留出上下间距为:段前0.5行,段后0.5行) ×××××××××(小4号宋体,20磅行距)×××××××××××××××××××××××××××××××××××………… ×××××××××××××××××××………… ………… 注:1.正文中表格与插图的字体一律用5号宋体; 2.正文各页的格式请以此页为标准复制。 请留出一个汉字的空间,下同

报告中的内容仅为参考字体格式,与本次设计无关! 题目 内部排序教学软件。 1需求分析和说明 内部排序教学软件的总体目标:在TURBO C2.0 的开发环境下,利用所学C语言和数据结构的相关知识,开发一个具有良好人机界面的内部排序教学软件,实现各种内部排序,并能使用户通过其显示结果对每种排序方法的性能有一个直观的了解,从而达到教学的目的。 1.1基本要求 (1)界面友好,易与操作。采用菜单或其它人机对话方式进行选择。 (2)实现各种内部排序。包括冒泡排序,直接插入排序,直接选择排序,希尔排序,快速排序,堆排序。 (3)待排序的元素的关键字为整数。可用随机数据和用户输入数据作测试比较。比较的指标为有关键字参加的比较次数和关键字的移动次数(关键字交换以3次计)。 (4)演示程序以人机对话的形式进行。每次测试完毕显示各种比较指标 的列表,以便比较各种排序的优劣。 1.2各功能模块的功能描述: 1.主函数模块 本模块的主要功能是初始化图形界面,调用各模块,实现软件功能。 2.排序功能及输出子模块 本模块的主要功能是根据用户的选择进行数组的创建,并对输入数据或者随机产生的数据使用六种排序方法进行排序并统计每种方法的移动次数和比较次数,然后输出以表格形式输出。 3.封面和结束画面子模块 本模块的主要功能是当用户打开本软件时模拟软件加载,延时数秒后关闭,并进入图形界面,在用户退出软件时显示结束画面,延时数秒后关闭程序。 4.图形界面子模块 本模块的主要功能是根据用户的选择显示不同的画面,引导用户使用软件所提供的各种功能,并在用户提供必要数据,并选择排序功能时调用排序模块,并显示结果画面。 5.输入子模块 本模块的主要功能是进行光标定位,输出提示文字,并对用户输入数据进行处理,创建数组。 6.鼠标实现模块 本模块的主要功能是为用户提供鼠标操作支持,使用户能使用鼠标进行功能的选择。2详细设计

课程设计报告完整电子版模板

武汉东湖学院计算机科学学院课程设计报告 课程名称:数据库原理课程设计 题目: 专业班级: 学号: 学生姓名: 指导教师:谭玲丽 2016 年 5 月 12 日

课程设计任务书 (由指导教师填写) 课程名称:数据库原理课程设计 设计题目: 专业:计算机科学班级: 完成时间:2016.5.12-2016.6.14 指导教师:谭玲丽专业负责人:

课程设计成绩评价表 指导教师:年月日

数据库原理课程设计 目录 1 需求分析............................................................................................................... n 1.1 需求概述 ................................................................................................... n 1.2 功能简介 ................................................................................................... n 2 数据库概念结构设计 .......................................................................................... n 2.1 确定联系集.......................................................................................................... n 2.2 局部E-R图 .......................................................................................................... n 2.3总E-R图 ............................................................................................................... n 3 数据库逻辑结构设计阶段 ......................................................................................... n 3.1关系模式的转换................................................................................................... n 3.2模式求精(规范化过程)................................................................................... n 4 数据库物理设计........................................................................................................... n 4.1数据库物理结构................................................................................................... n 4.2数据表存放位置、系统配置............................................................................... n 5 数据库的实施和维护 .................................................................................................. n 5.1 定义...................................................................................................................... n 5.1.1 数据库的定义 ........................................................................................... n 5.1.2 表的定义 ................................................................................................... n 5.2 数据操作.............................................................................................................. n 5.2.1 单表查询 ................................................................................................... n 5.2.2 连接查询 ................................................................................................... n 5.2.3 操作结果集查询 ....................................................................................... n 5.2.4 嵌套查询 ................................................................................................... n 5.3 数据库更新操作.................................................................................................. n 5.3.1 插入数据 ................................................................................................... n 5.3.2 修改数据 ................................................................................................... n 5.3.3 删除数据 ................................................................................................... n 5.4 为数据库建立索引.............................................................................................. n 5.4.1 索引的建立 ............................................................................................... n 5.4.2 索引的删除 ............................................................................................... n 5.5 数据库的安全性(自主存取控制)........................................................................ n 5.5.1 登录帐户管理 ........................................................................................... n 5.5.2 用户权限管理 ........................................................................................... n 5.6 数据库的完整性.................................................................................................. n 5.6.1 实体完整性定义 ....................................................................................... n 5.6.2 参照完整性定义 ....................................................................................... n 5.6.2 用户自定义完整性定义 ........................................................................... n 5.6.3 触发器定义 .............................................................................................. n 5.7自定义函数.......................................................................................................... n 5.8存储过程的定义.................................................................................................. n 5.9事务的定义.......................................................................................................... n 6 总结................................................................................................................................. n 参考文献 ............................................................................................................................ n

相关文档
最新文档