课程设计报告书
课程设计名称: VB程序设计报告书
系(部):
专业班级:
学生姓名:XXX
学 号:
指导教师:
完成日期: 20##年1月6日
山东科技大学泰山科技学院
Visual Basic是可视化程序设计语言,具有简单易学、功能强大、软件费用支出低、见效快等诸多特点,而且是Windows应用程序最迅速最简洁的开发工具,易于初学者和非专业人员掌握使用。目前,全世界数以百万计的程序设计人员正在用Visual Basic开发各种类型的各种软件。
本课程是一门面向全国高校各个专业大学生的公共必修课,它以microsoft可视化编程工具Visual Basic6.0为例主要介绍高级程序设计方法。Visual Basic6.0由于其具有界面友好,操作方便面等优点,是从事计算机设计的最佳编程工具之一,同时也是学习Windows编程设计的极好语言。通过本课程的学习,使学生掌握用Windows编程解决实际问题的一般办法,包括语句、函数、控件等 概念的掌握,以及从基本控件的使用到高级控件的应用,从图形编程、文件使用到多媒体程序开发,从数据库编程到定制Activex控件等内容,为培养学生结合专业进行软件开发的能力打好基础。
二、课程设计的性质和目的
学生应通过接触客观实际,了解和认识所学的专业知识,掌握所学知识在客观实际中的应用,并能亲自动手完成相关题目设计。把所学的理论知识与实际能力紧密的结合在一起。
三、课程设计的基本内容和要求
本次课程设计要求学生熟练掌握《VB程序设计》课程的基础知识,独立完成设计任务,并完成课程设计报告,主要要求学生掌握以下内容:
理解系统开发的必要步骤,绘制流程图、根据流程图编写程序、并自主进行必要的测试与维护。最后形成规范的设计报告。
随着社会的不断变革和发展,以计算机为依托的信息技术高速发展。因此,人们除掌握自然语言外,还需掌握另一种语言——VB计算机程序设计语言。从这点出发,现代计算机教育应对程序设计语言给与更多的关注,使其充分发挥更多的作用。
Visual Basic 不仅是 Visual Basic 编程语言。Visual Basic 编程系统,MicrosoftExcel 的Applications Edition,Microsoft Access和Windows的许多其他应用程序都使用这一语言。Visual Basic Scripting Edition (VBScript) 是广泛使用的脚本语言,它是 Visual Basic 语言的子集。这样,在学习 Visual Basic 中得到的经验可应用到所有这些领域中。
从开发个人使用或小组使用的小工具,到大型企业应用系统,甚至通过Internet 的遍及全球分布式应用程序,都可在 Visual Basic 提供的工具中各取所需。
Visual Basic作为一门当代大学生学习普遍学习的必修课,我们更有理由去学好Visual Basic。这对我们将来的学习和工作很重要,小到个人,达到工作、社会我们都有可能用到Visual Basic。因此学好这门课的程序设计是非常有必要的。
五 工程概况
一 项目名称
1.设计(四则运算)窗体文件(必做)
2.使用vb制作一个指针式时钟
3.编写一个程序,使得输入一个数字,当点击按钮后转换为中文大写的货币表示。
六 具体过程
一 设计(四则运算)窗体文件(必做)
题目要求:基本设计(必做):按下列运行界面,设计(四则运算)窗体文件。
1要完成此设计,首先我们需要先建立:4个label、3个text、1个组合框、3个command控件。并在建立工程中通过右侧的属性窗口将建立的控件名称改为如图所示。
2编写代码,在打开的代码编写窗口按照如下代码编写
Private Sub Command1_Click()
Da1 = Val(Text1.Text)
da2 = Val(Text2.Text)
Select Case Combo1.ListIndex
Case 0
da3 = Da1 + da2
Case 1
da3 = Da1 - da2
Case 2
da3 = Da1 * da2
Case 3
da3 = Da1 / da2
End Select
Text3.Text = da3
End Sub
Private Sub Command2_Click()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text1.SetFocus
End Sub
Private Sub Command3_Click()
End
End Sub
Private Sub Form_Load()
Combo1.List(0) = "+"
Combo1.List(1) = "-"
Combo1.List(2) = "*"
Combo1.List(3) = "/"
End Sub
3 然后进行程序调试并运行(经验证运行无误)。
二 使用vb制作一个指针式时钟,本课题使用直线控件作为时钟的指针,再使用定时器控件控制直线控件的位置,从而使得直线控件能向时钟中的指针一样顺时针转动。
1要完成此设计,我们需要建立一个timer控件,然后按照如下代码编写:
Const PI = 3.1415926
Private Sub Form_Load()
Scale (-100, 100)-(100, -100)
Timer1.Interval = 1000
Form1.BackColor = &HFFFFFF
Timer1_Timer
Form1.Show
Form1.Refresh
Call Timer1_Timer
End Sub
Private Sub Form_Paint()
Call MyDraw
End Sub
Public Sub MyDraw()
Cls
Scale (-100, 100)-(100, -100)
For i = 0 To 2 * PI Step PI / 30
Form1.DrawWidth = 3
PSet (60 * Cos(-i), 60 * Sin(-i)), vbGreen
Next i
For i = 0 To 2 * PI Step PI / 6
Form1.DrawWidth = 6
PSet (60 * Cos(-i), 60 * Sin(-i)), vbRed
Next i
End Sub
Private Sub Form_Resize()
Form1.Refresh
End Sub
Private Sub Timer1_Timer()
Form1.Refresh
Form1.Caption = Time
s = Second(Time) * PI / 30
DrawWidth = 2
Line (0, 0)-(55 * Cos(-Second(Time) * (PI / 30) + PI / 2), 55 * Sin(-Second(Time) * (PI / 30) + PI / 2)), vbBlue
m = Minute(Time)
m1 = (m + s / 60) * (PI / 30) - PI / 2
DrawWidth = 3
Line (0, 0)-(45 * Cos(-m1), 45 * Sin(-m1)), vbBlack
h = Hour(Time)
h1 = (h + (m * 60 + s) / 3600) * PI / 6 - PI / 2
DrawWidth = 3.5
Line (0, 0)-(25 * Cos(-h1), 35 * Sin(-h1)), vbGreen
End Sub
2运行并调试程序(经验证运行无误)。
三 编写一个程序,使得输入一个数字,当点击按钮后转换为中文大写的货币表示。
1要完成此设计,我们需要建立一个一个文本框和一个命令框并且按如下代码编写:Private Sub Command1_Click()
MsgBox GetChinaMoney(Text1.Text)
End Sub
Private Sub Form_Load()
Text1.MaxLength = 16
Text1.Text = ""
Text1.Text = ""
End Sub
Public Function GetChinaMoney(ByVal strNumber) As String
Dim a() As String
Dim s1 As String, s2 As String
Dim l1 As String
Dim s3 As String
Dim strEng As String
strEng2Ch = "零壹贰叁肆伍陆柒捌玖"
If Not IsNumeric(strNumber) Then
If Trim(strNumber) <> "" Then MsgBox "无效的数字"
GetChinaMoney = ""
Exit Function
End If
l1 = InStr(strNumber, ".")
If l1 <> 0 Then
s1 = Left(strNumber, l1 - 1)
s2 = Mid(strNumber, l1 + 1)
Else
s1 = strNumber
s2 = "0"
End If
s1 = Dig2Chinese_pb(s1)
s3 = ""
If s2 <> 0 Then
For i = 1 To Len(s2)
If i = 1 Then s3 = s3 & Mid(strEng2Ch, Val(Mid(s2, i, 1)) + 1, 1) & "角"
If i = 2 Then s3 = s3 & Mid(strEng2Ch, Val(Mid(s2, i, 1)) + 1, 1) & "分"
If i = 3 Then s3 = s3 & Mid(strEng2Ch, Val(Mid(s2, i, 1)) + 1, 1) & "厘"
If i = 4 Then s3 = s3 & Mid(strEng2Ch, Val(Mid(s2, i, 1)) + 1, 1) & "毫"
Next
End If
GetChinaMoney = s1 & "元" & s3
End Function
Public Function Dig2Chinese_pb(strEng As String) As String
Dim intLen As Integer, intCounter As Integer
Dim strCh As String, strtempCh As String
Dim strSeqCh1 As String, strSeqCh2 As String
Dim strEng2Ch As String
Dim sTemp As String
Dim i As Integer
Dim iWanBit As Integer
Dim iYiBit As Integer
Dim iWanYiBit As Integer
Dim sFoward As String
iWanBit = 0: iYiBit = 0: iWanYiBit = 0
sFoward = StrReverse(strEng)
For i = 1 To Len(sFoward)
Dim val1 As Long
val1 = Val(Mid(sFoward, i, 1))
If i >= 5 And i <= 8 Then
If iWanBit = 0 Then
If val1 <> 0 Then iWanBit = i
End If
End If
If i >= 9 And i <= 12 Then
If iYiBit = 0 Then
If val1 <> 0 Then iYiBit = i
End If
End If
If i >= 13 And i <= 16 Then
If iWanYiBit = 0 Then
If val1 <> 0 Then iWanYiBit = i
End If
End If
Next
If Not IsNumeric(strEng) Then
If Trim(strEng) <> "" Then MsgBox "无效的数字"
Dig2Chinese_pb = ""
Exit Function
End If
If Len(strEng) > 15 Then
MsgBox "数字位数太长"
Dig2Chinese_pb = ""
Exit Function
End If
strEng2Ch = "零壹贰叁肆伍陆柒捌玖"
strSeqCh1 = " 拾佰仟 拾佰仟 拾佰仟 拾佰仟"
strSeqCh2 = " 万亿兆"
'转换为表示数值的字符串
strEng = CStr(CDec(strEng))
'len
intLen = Len(strEng)
'change to chinese
For intCounter = 1 To intLen
strtempCh = Mid(strEng2Ch, Val(Mid(strEng, intCounter, 1)) + 1, 1)
If strtempCh = "零" And intLen <> 1 Then
' If Mid(strEng, intCounter + 1, 1) = "0" Or (intLen - intCounter + 1) Mod 4 = 1 Then
'若之后一个也是零,或在最后,则不显示"零"
If Mid(strEng, intCounter + 1, 1) = "0" Or intCounter = intLen Then
strtempCh = ""
End If
Else
'添加位 拾佰仟
If strtempCh <> "零" Then strtempCh = strtempCh & Trim(Mid(strSeqCh1, intLen - intCounter + 1, 1))
End If
'添加位 "万"(5-8),"亿"(9-12),"万亿"(13-16)
' iWanBit = 0: iYiBit = 0: iWanYiBit = 0
If intCounter = Len(strEng) + 1 - iWanBit Then strtempCh = strtempCh & "万"
If intCounter = Len(strEng) + 1 - iYiBit Then strtempCh = strtempCh & "亿"
If intCounter = Len(strEng) + 1 - iWanYiBit Then strtempCh = strtempCh & "万亿"
'组成汉字
strCh = strCh & Trim(strtempCh)
Next
Dig2Chinese_pb = strCh
End Function
2 运行并调试(经调试运行无误)。
在本次课程设计中,我从指导老师和同学们身上学到了很多东西。老师认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我收益匪浅。他无论在理论上还是在实践中,都给与我很大的帮助,使我得到不少的提高这对于我以后的工作和学习都有一种巨大的帮助,感谢他耐心的辅导。
同学们学习热情高涨,对问题肯钻研,敢挑战,让我受到很大的鼓舞。大家耐心细心的研究学习,最终解决问题,让人很高兴。
Visual Basic6.0程序设计教程 西北工业大学出版社。
龚沛曾,陆慰民,杨志强.Vsual Basic 程序设计教程.高等教育出版社出版。
刘新民,蔡琼,白糠生.Vsual Basic 6.0程序设计.清华大学出版社出版。
赵欣胜,亢慧娟,刘晟宏.Vsual Basic 经典范例50讲.科学出版社出版。
卢毅.Vsual Basic实例教程.科学出版社出版。
唐凯军,汤惠莉.VB6编程80例上手.山东电子音像出版社。
百度知道贴吧
爱问知识人网站
1课程设计目的课程设计是船舶设计原理课程重要的实践性教学环节是培养学生掌握船舶设计基本原理和能力的技术基础主尺度论证与总布置设计是…
一设计目的1强化上机动手能力在理论和实践的基础上进一步巩固数据结构课程学习的内容掌握工程化软件设计的基本方法2掌握图的创建和应用3…
中国计量学院信息工程学院课程设计报告课程设计名称系统设计与仿真课程计二级学院信息工程学院专业班级10电信2班学姓成绩号名10003…
信息科学与工程学院高级语言程序设计课程设计报告学生成绩管理系统学科专业计算机科学与技术班级1301学号指导教师唐郑熠讲师学生二零年…
扬州大学数据结构课程设计报告课题名称姓名学院系科班级指导老师日期自来水管架设问题广陵学院陈宏建1一课程设计的题目自来水管理架设问题…
技术总结报告学院机械工程学院项目名称如履平地爬楼梯小车小组成员张鹏鹏武怀宇邢举学李小龙摘要爬楼梯尤其是在有负荷的情况下爬楼梯是人们…
信息科学与工程学院高级语言程序设计课程设计报告学生成绩管理系统学科专业计算机科学与技术班级1301学号指导教师唐郑熠讲师学生二零年…
江西理工大学应用科学学院微机控制课程设计报告设计题目设计者学号班级指导老师完成时间生产线货物自动计数设备摘要摘要小二号黑体居中上下…
同步发电机准同期并列实验I摘要作发电机运行的同步电机是一种最常用的交流发电机在现代电力工业中它广泛用于水力发电火力发电核能发电以及…
电气信息工程系课程设计报告写作规范吉林建筑大学城建学院20xx年10月20日1课程设计报告撰写的内容与要求11题目题目应简短明确有…
课程设计题目个人收支管理难度:☆☆☆姓名:刘泽禄学号:913103860633随着社会生活步调的不断加快,人们越来越繁忙。也因此各…