C#打字游戏课程设计报告.docx

上传人:b****8 文档编号:10931831 上传时间:2023-02-23 格式:DOCX 页数:9 大小:90.30KB
下载 相关 举报
C#打字游戏课程设计报告.docx_第1页
第1页 / 共9页
C#打字游戏课程设计报告.docx_第2页
第2页 / 共9页
C#打字游戏课程设计报告.docx_第3页
第3页 / 共9页
C#打字游戏课程设计报告.docx_第4页
第4页 / 共9页
C#打字游戏课程设计报告.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

C#打字游戏课程设计报告.docx

《C#打字游戏课程设计报告.docx》由会员分享,可在线阅读,更多相关《C#打字游戏课程设计报告.docx(9页珍藏版)》请在冰豆网上搜索。

C#打字游戏课程设计报告.docx

C#打字游戏课程设计报告

课 程 设 计

课程设计名称:

   小小打字游戏     

专业班级:

计算机科学与技术11级01班 

指导教师:

              

姓名学号:

              

课程设计时间:

  2013.1.5-2013.1.11   

课题名:

C#程序设计

题目:

打字游戏

2013年 1月 10日

一、需求分析

软件名称:

小小打字游戏

(1)描述:

使用VS2010开发环境,用C#语言编写一个打字游戏,游戏界面随机出现下落的A到Z的26个字母,当用户按下相应的键,游戏屏幕上正在下落的字母就会被消除,游戏分数将相应增加。

(2)系统功能:

1、游戏显示:

游戏窗口,随机下落颜色不定的65个字符,并根据游戏得分实时增加字母下落的速度。

2、游戏操作:

按下键盘上对应字符键,游戏窗口上正在下落的对应字母被消除,并使游戏分数增加1。

3、实时显示用户的正确个数、错误个数和正确率!

4、通过用户自己调整游戏的困难程度(包括高手,平民,菜鸟)。

5用户自己可以控制游戏的开始,暂停,结束。

2、系统设计(图表方式,要有说明部分)

(1)新建程序项目:

在VS2010上建立game项目。

(2)设计界面:

①、如图1-1、游戏窗口界面:

有六个控件(4个Label控件,1个timer控件,1个menustrip控件),界面背景图片由系统函数生成黑色。

(3)功能模块设计

1、系统模块

2、操作流程图

三、系统实现

核心代码

创建线程:

privatevoidtimer1_Tick(objectsender,EventArgse)

{

Randomrandom=newRandom();

Labellabel=newLabel();

label.Height=40;

label.Width=40;

label.Left=random.Next(this.Width);

this.Controls.Add(label);

letterletter=newletter(label,random,this);

thread=newThread(newThreadStart(letter.uptodown));

thread.Start();

}

窗体键盘事件以及统计正确与错误:

privatevoidForm1_KeyPress(objectsender,KeyPressEventArgse)

{

bo=true;//建立一个布儿类型

foreach(objectlabelinthis.Controls)

{

if(labelisLabel)

{          

Labelb=(Label)label;

if(b.Text[0]==e.KeyChar)

{

Controls.Remove(b);

label1.Text="正确:

"+Convert.ToString(++i);

label3.Text="正确率:

"+Convert.ToString(i*1.0/(i+j));

bo=false;

}

}

}

if(bo)

{

label2.Text="错误:

"+Convert.ToString(++j);

label3.Text="正确率:

"+Convert.ToString(i*1.0/(i+j));

}

}

其他功能函数(开始,暂停,结束):

privatevoid开始ToolStripMenuItem_Click(objectsender,EventArgse)

{

Controls.Remove(label4);

timer1.Start();

}

privatevoid暂停ToolStripMenuItem_Click(objectsender,EventArgse)

{

timer1.Stop();

}

privatevoid退出ToolStripMenuItem_Click(objectsender,EventArgse)

{

this.Close();

}

难度调节代码:

privatevoid普通ToolStripMenuItem_Click(objectsender,EventArgse)

{

timer1.Interval=1000;

}

privatevoid困难ToolStripMenuItem_Click(objectsender,EventArgse)

{

timer1.Interval=100;

}

privatevoid菜鸟ToolStripMenuItem_Click(objectsender,EventArgse)

{

timer1.Interval=2000;

}

字母飘动下落函数部分代码:

try

{

while(label.Top

{

if(label==null)

{

Thread.CurrentThread.Abort();

}

label.Top+=1;

Thread.Sleep(10);

}

if(Thread.CurrentThread.IsAlive)

{

Thread.CurrentThread.Abort();

}          

}

创建字母函数部分代码:

speed=radom.Next(5)+1;

switch(speed)

{

case1:

label.ForeColor=System.Drawing.Color.Pink;

break;

case2:

label.ForeColor=System.Drawing.Color.Aqua;

break;

case3:

label.ForeColor=System.Drawing.Color.Orange;

break;

case4:

label.ForeColor=System.Drawing.Color.White;

break;

case5:

label.ForeColor=System.Drawing.Color.Yellow;

break;

}

四、游戏窗体截图

运行图:

五、所用的知识点

Winform基础(包括简单控件的使用)、多线程的操作等等知识点。

首先安排学生学习winform基础包括本项目涉及到的控件的使用方法;之后学习多线程的操作,安排一些简单的多线程例子来说明问题;

六、总结

通过一周的企业实习,在老师的带领下,我们了解了企业内部运行的基本流程,同时分析了本专业的运用领域和发展前景,经过老师的介绍,我们深刻认识到现阶段自己所学的专业知识是远远不够的,所学的c是最基本的编程语言.运用的领域比较窄,而相比较而言C#具有更好的发展前景.

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 经济学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1