课程设计报告

发布 2022-10-01 04:46:28 阅读 4174

0503130116 蒋珍超。

课题题目:彩票选号小助手,电子书。

一)彩票选号小助手(03)

课题要求:

本课题要求设计一个供彩民买彩票时投注选号的程序。目前我国发行的彩票分两大类,即体育彩票和福利彩票,每一类彩票都有多种投注方法。本课题要求用多窗体程序设计、控件数组、定时器控件、随机数生成等知识点为传统型体育彩票和35选7福利彩票设计选号程序。

承担的任务:

(1)程序的启动窗口为form1。

2)在启动窗口form1中单击“体育彩票”按钮后,进入体彩传统型电脑彩票的选号窗口form2。在该窗口中,每一注可单独投注,也可一次产生5注号码。单击“开始”按钮,则单选框所对应的那一注的各个号码开始滚动,当单击“停止”按钮后,左边窗口中的号码从左到右依次停止滚动,产生一注号码。

每注号码由6位数号码(自中选出)和一个特别号码(自中选出)。如果单击“自动”按钮,则从上到下依次产生五注号码。也可单击每个数字方格来改变此格内的数字。

单击“返回”按钮,则程序返回启动窗口form1。

3)单击启动窗口form1上的“福利彩票”按钮后,进入35选7电脑福利彩票的选号窗口form3。使用单选框指定注数,然后单击“开始”按钮,则在“幸运号码”区域显示随机产生的号码,要求程序中每注产生的七个投注号码中没有重复的数,显示从小到大排列,若一次投注超过一注,则相互之间不能重复。单击右边的单选框选择注数时,左边的“幸运号码”区也会相应的做出调整。

如选择三注,则只显示三行空格。单击“清除”按钮,则清除显示内容,以便进行下一次投注。单击“返回”按钮,则程序返回启动窗口form1。

部分关键**:

1. 多窗体程序设计。

private sub cmdep_click()

unload form1

end sub

privatesub cmdexit_click()

unload me

end sub

private sub cmdfl_click()

unload form1

end sub

2.控件数组(以label1为例)

private sub timer3_timer()

j = kk mod 7

if j >=0 and j <=5 then

label1(kk).caption = int(rnd * 10)

end if

if j = 6 then label1(kk).caption = int(rnd * 5)

end sub

3.定时器控件及随机数生成。

private sub timer1_timer(index as integer)

for i = 0 to 4

if option1(i).value = true then

for j = 0 to 5

k = 7 * i + j

if timer1(j).enabled = true then

label1(k).caption = int(rnd * 10)

end if

nextif timer1(6).enabled = true then

label1(7 * i + 6).caption = int(rnd * 5)

end if

end if

nextend sub

4.冒泡比较法及goto语句。

l1: m = 0l1为行标号。

for k = 0 to 6

fuli(k) =int(1 + rnd * 35)

temp(m) =fuli(k)

m = m + 1

nextfor int1 = 6 to 1 step -1冒泡比较法。

for int2 = 0 to int1 - 1

if temp(int2) >temp(int2 + 1) then

int3 = temp(int2)

temp(int2) =temp(int2 + 1)

temp(int2 + 1) =int3

end if

nextnext

for int4 = 0 to 6每注产生的七个投注号码中没有重复的数。

if int4 = 6 then exit for

if temp(int4) =temp(int4 + 1) then goto l1

next二)电子书(12)

课题要求:本课题要求编写一个“电子书”应用程序,该程序可以打开指定格式的文件,显示文件中保存的文本内容,并以一种方便的形式供读者阅读。本课题要求用到读文本文件、字符串处理、公共对话框的使用、动态数组的使用等知识点。

承担的任务:

(1)程序启动后,“目录”、“内容”和“注释与题解”中均为空,除了“打开”按钮,其他按钮均无效。单击“打开”按钮,显示“打开”对话框,此对话框只显示扩展名为“.cnt”的电子书目录文件名。

从“打开”对话框中选择一个目录文件,单击“打开”按钮后,程序打开此目录文件和与其同名但扩展名为“.txt”的正文文件,显示电子书的目录和内容。

(2)打开诗词文件后,“目录”列表中显示电子书中内容的目录,单击其中一条,“内容”框和“注释与题解框”中分别显示此篇文章的正文和注释、点评等内容。

(3)只要有电子书打开,所有的按钮就都可以用了。单击“前一首”或“后一首”按钮,程序显示目录中的前一篇或后一篇文章的内容。如果当前显示的是第一篇文章的内容,则“前一篇”按钮无效;如果显示的是最后一篇文章的内容,则“后一篇”按钮无效。

(4)打开新的电子书文件后,旧的文件自动关闭。也可以单击“关闭”按钮关闭当前电子书,这样可以回到启动状态。

(5)在打开电子书时,如果程序在目录文件的同一文件夹中找不到相应的正文文件,则显示消息框。

部分关键**:

1.读文本文件及公共对话框的使用。

open for input as 1

dim str1 as string

n = 0do while not eof(1)

line input #1, str1

= str1

n = n + 1

loopclose 1

2.字符串处理。

dim str2 as string

str2 =

int1 = instr(str2, "1

= mid(str2, 1, int1)

dim str2 as string ‘打开与目录文件同名的文本文件。

dim str3 as string

dim int1 as integer

str2 =

int1 = instr(str2, "

str3 = mid(str2, 1, int1) +txt"

open str3 for input as 2

3.动态数组的使用。

dim num as integer

dim temp() as string

i = instr(2, str4, "

j = 2do while i > 0

redim preserve temp(num)

temp(num) =mid(str4, j, i - j)

num = num + 1

j = i + 1

i = instr(j, str4, "

loop调试中的所得与分析结果:

在此次的vb课程设计中,有一个步骤显然已成为了我成功与失败的仲裁者,这便是“调试”。成功了固然高兴,失败了不免有些失落。但失败只是暂时的,只要有足够的耐心、永不言弃的决心,失败终将转变为成功,这也是“调试”告诉我的。

在编写**时,我犯的最多的错误是“下标越界”,在认真检查完**之后,我便会一边修改**一边调试,直到不出错为止。在实在找不出错在哪儿或达不到预期的效果时,我还会使用msdn帮助软件寻求帮助。通过msdn,我意识到了我忘在使用动态数组前加上redim preserve语句,这帮我解决了“下标越界”的问题。

此外,通过msdn,我还学到了不少东西,如doevents语句和timer函数,这些给我在编程中提供了不少帮助。在“彩票选号小帮手”中,要求单击“自动”按钮,第一注号码开始滚动,在很短的时间间隔后,第一注号码产生,第二注号码开始滚动,这样依次直到第五注号码产生。但我在调试我编写的**时,却发现结果是每过很短的时间间隔,第一注号码到第五注号码的单选框依次被选中,但却没有数字滚动。

**如下:

for i = 0 to 4

option1(i).value = true

dim pausetime1, start

pausetime1 = 1

start = timer

do until timer >=start + pausetime1

= true

loop= false

next在仔细的思考之后,我发现我编的do…loop语句的意思是,如果时间没超过1秒则timer2重新有效,这样在这一秒钟之内,timer2的enabled属性已经被重新设置了无限次,而且每次间的时间间隔是远小于它的interval值,也就是说timer2的timer事件还未引发就开始了重新计时。在弄清楚错误之后,我把 = true移到了do语句之上,并在它原来的位置处添了一句doevents语句,这样“自动”按钮便具备了它应有的功能。

课程设计报告格式 课程设计

洛阳理工学院。课程设计说明书。课程名称。设计课题。专业。班级。学号。姓名。完成日期2014年12月26日。问题描述 小四宋体,行间距单倍行距,每段缩进两个字符。叙述一下设计的内容要求。基本要求 小四宋体,行间距单倍行距,每段缩进两个字符。叙述一下设计的基本要求。测试数据 小四宋体,行间距单倍行距,每...

课程设计总结,课程设计报告

课程设计总结,课程设计报告。3.尝试应用项目管理软件进行项目进程的规划管理 绘制甘特图,不作硬性要求 二 选题说明。人事管理是企业信息管理的重要部分,面对大量的人事工资信息,财务部门采用人力处理将浪费大量的时间 人力和物力,且数据的准确性低。因此,开发一个界面友好,易于操作的人事工资管理软件进行自动...

课程设计 课程设计报告格式

学校名。课程设计报告。课程名称 c语言程序设计 系别 专业班级 学号。姓名。课程题目 企业人事管理系统 完成日期 指导老师 年月日。附件。课程设计的内容。企业人事管理系统 本项目的目标是开发一个功能实用,操作简便,简单明了的人事管理系统。能够录入人事的基本资料,在操作上能够完成诸如添加 修改 删除 ...