vb计算器实训 实验报告

vb计算器实训 实验报告
vb计算器实训 实验报告

实训8 实验报告

一、实验目的:制作一个计算器

二、实验进程:完成了十六进制,八进制的代码书写。添加了form3,完成了窗体转化。

三、实验原理与分析:

1、控件属性设置:

指导教师:郝谦

2、界面图:

Form1

指导教师:郝谦

Form2:

Form3:

指导教师:郝谦

3、代码书写:

Form1:

Option Explicit

Dim i As Integer

Dim j As Integer

Dim m As String

Dim x1 As Double

Dim x2 As Double

Dim y As String

Dim op As Integer

Dim lastinput As String

Private Sub About_Click()

Form1.Hide

Form3.Show

End Sub

Private Sub Command1_Click(Index As Integer) 输入数字0-9

If Text1.Text = "0." Or lastinput = "=" Then

Text1.Text = Index

lastinput = "number"

指导教师:郝谦

Else

If Form1.Tag <> "" Then

If Index = 10 Then

Text1.Text = "0."

Else

Text1.Text = Command1(Index).Caption

End If

Form1.Tag = ""

Else

Text1.Text = Text1.Text & Command1(Index).Caption

End If

lastinput = "number"

End If

End Sub

Private Sub Command10_Click()

Text1.Text = Format(Text1.Text / 100, "0.####################")

lastinput = "="

End Sub

Private Sub Command11_Click()

x2 = Val(Text1.Text)

Select Case y

Case "+"

x1 = x1 + x2

Case "-"

x1 = x1 - x2

Case "×"

x1 = x1 * x2

Case "÷"

If x2 = 0 Then

m = MsgBox("除数不能为0", vbExclamation + vbOKOnly, "提示")

Text1.SetFocus

Else

x1 = x1 / x2

End If

End Select

Text1.Text = Format(x1, "0.#####################")

lastinput = "="

Text1.SetFocus

End Sub

Private Sub Command2_Click(Index As Integer)

指导教师:郝谦

x1 = Val(Text1.Text)

op = Index

Select Case op

Case 0

y = "+"

Case 1

y = "-"

Case 2

y = "×"

Case 3

y = "÷"

End Select

Text1.Text = ""

Text1.SetFocus

End Sub

Private Sub Command3_Click() '正负号

Text1.Text = -Val(Text1.Text)

End Sub

Private Sub Command4_Click() '小数点

If InStr(Text1.Text, ".") Then

Exit Sub

Else

Text1.Text = Text1.Text + "."

End If

End Sub

Private Sub Command5_Click()

Dim length As Integer

length = Len(Text1.Text) '数字长度

If length = 1 Then

If Text1.Text <> "0." Then '除非结果为0,否则都要退一位

Text1.Text = "0."

End If

Else

Text1.Text = Left(Text1.Text, length - 1)

End If

End Sub

Private Sub Command6_Click() '清空当前数据

Text1.Text = "0."

End Sub

指导教师:郝谦

Private Sub Command7_Click() '清除所有数据

x1 = 0

x2 = 0

Text1.Text = Format(0, "0.")

End Sub

Private Sub Command8_Click()

If Text1.Text < 0 Then

m = MsgBox("被开方数要大于零", vbExclamation + vbOKOnly, "提示") Else

Text1.Text = Sqr(Val(Text1.Text))

lastinput = "="

End If

End Sub

Private Sub Command9_Click()

If Text1.Text = 0 Then

m = MsgBox("除数不能为0", vbExclamation + vbOKOnly, "提示")

Text1.SetFocus

Else

Text1.Text = Format(1 / Val(Text1.Text), "0.####################")

lastinput = "="

End If

End Sub

Private Sub copy_Click() '复制

Clipboard.Clear

Clipboard.SetText Text1.SelText

End Sub

Private Sub Form_Initialize() '利用控件数组产生0-9的控件

For i = 1 To 9

Load Command1(i)

Select Case i Mod 3

Case 0

With Command1(i)

.Visible = True

.Caption = i

.Left = Command1(0).Left + 1440

.Top = Command1(i - 3).Top + Command1(i).Height - 1095 End With

Case 1

With Command1(i)

.Visible = True

指导教师:郝谦

.Caption = i

.Left = Command1(0).Left

.Top = Command1(i - 1).Top + Command1(i).Height - 1095 End With

Case 2

With Command1(i)

.Visible = True

.Caption = i

.Left = Command1(0).Left + 720

.Top = Command1(i - 2).Top + Command1(i).Height - 1095 End With

End Select

Next i

For j = 1 To 3 '‘生成运算符的控件按钮

Load Command2(j)

With Command2(j)

.Visible = True

.Left = Command2(0).Left

.Top = Command2(j - 1).Top + Command2(j).Height + 100 End With

Command2(j).Caption = Choose(j, "-", "×", "÷")

Next j

End sub

Private Sub Form_Resize()

Me.Width = 4230

Me.Height = 4860

End Sub

Private Sub kexue_Click() ’到科学型界面

Form2.Show

Form1.Hide

End Sub

End Sub

Private Sub paste_Click() '粘贴

Text1.SelText = Clipboard.GetText

End Sub

Form2:

Option Explicit

Dim i As Integer

指导教师:郝谦

Dim j As Integer

Dim k As Integer

Dim n As Integer

Dim x1 As Double

Dim x2 As Double

Dim Y As String

Dim op As Integer

Dim lastinput As String

Dim m As String

Dim B As String

Dim D As String

Private Sub About_Click()

Form2.Hide

Form3.Show

End Sub

Private Sub Command1_Click(Index As Integer) '输入数字0-9

If Text1.Text = "0." Or lastinput = "=" Then

Text1.Text = Index

lastinput = "number"

Else

If Form1.Tag <> "" Then

If Index = 10 Then

Text1.Text = "0"

Else

Text1.Text = Command1(Index).Caption

End If

Form1.Tag = ""

Else

Text1.Text = Text1.Text & Command1(Index).Caption

End If

lastinput = "number"

End If

End Sub

Private Sub Command10_Click()

Text1.Text = Format(Text1.Text / 100, "0.####################")

lastinput = "="

End Sub

Private Sub Command11_Click()

x2 = Val(Text1.Text)

Select Case Y

指导教师:郝谦

Case "+"

x1 = x1 + x2

Case "-"

x1 = x1 - x2

Case "×"

x1 = x1 * x2

Case "÷"

If x2 = 0 Then

m = MsgBox("除数不能为0", vbExclamation + vbOKOnly, "提示")

Text1.SetFocus

Else

x1 = x1 / x2

End If

End Select

Text1.Text = Format(x1, "0.#####################")

lastinput = "="

Text1.SetFocus

End Sub

Private Sub Command12_Click(Index As Integer)

Select Case Index

Case 0

Text1.Text = Format(Sin(Val(Text1.Text)), "0.####################") Case 1

Text1.Text = Format(Cos(Val(Text1.Text)), "0.####################") Case 2

Text1.Text = Format(Tan(Val(Text1.Text)), "0.####################") Case 3

For i = 1 To Val(Text1.Text) - 1

Text1.Text = Format(i * Text1.Text, "0.####################") Next i

End Select

lastinput = "="

End Sub

Private Sub Command13_Click(Index As Integer)

If Text1.Text = "0." Or lastinput = "=" Then

Text1.Text = Command13(Index).Caption

指导教师:郝谦

lastinput = "number"

Else

If Form1.Tag <> "" Then

If Index = 10 Then

Text1.Text = "0"

Else

Text1.Text = Command13(Index).Caption

End If

Form1.Tag = ""

Else

Text1.Text = Text1.Text & Command13(Index).Caption

End If

lastinput = "number"

End If

Select Case Command13(Index).Caption

Case "A": D = D & "10"

Case "B": D = D & "11"

Case "C": D = D & "12"

Case "D": D = D & "13"

Case "E": D = D & "14"

Case "F": D = D & "15"

End Select

End Sub

Private Sub Command2_Click(Index As Integer)

x1 = Val(Text1.Text)

op = Index

Select Case op

Case 0

Y = "+"

Case 1

Y = "-"

Case 2

Y = "×"

Case 3

Y = "÷"

End Select

Text1.Text = ""

Text1.SetFocus

End Sub

Private Sub Command3_Click() '正负号

指导教师:郝谦

Text1.Text = -Val(Text1.Text)

End Sub

Private Sub Command4_Click() '小数点

If InStr(Text1.Text, ".") Then

Exit Sub

Else

Text1.Text = Text1.Text + "."

End If

End Sub

Private Sub Command5_Click()

Dim length As Integer

length = Len(Text1.Text) '数字的长度

If length = 1 Then

If Text1.Text <> "0." Then '除非结果为零,否则都要减一位

Text1.Text = "0."

End If

Else

Text1.Text = Left(Text1.Text, length - 1)

End If

End Sub

Private Sub Command6_Click() '清空当前数据

Text1.Text = "0."

End Sub

Private Sub Command7_Click() '清除所有数据

x1 = 0

x2 = 0

Text1.Text = Format(0, "0.")

End Sub

Private Sub Command8_Click()

If Text1.Text < 0 Then

m = MsgBox("被开方的数要大于零", vbExclamation + vbOKOnly, "提示") Else

Text1.Text = Sqr(Val(Text1.Text))

lastinput = "="

End If

End Sub

Private Sub Command9_Click()

If Text1.Text = 0 Then

m = MsgBox("除数不能为0", vbExclamation + vbOKOnly, "提示")

Text1.SetFocus

指导教师:郝谦

Else

Text1.Text = Format(1 / Val(Text1.Text), "0.####################")

lastinput = "="

End If

End Sub

Private Sub copy_Click() '复制

Clipboard.Clear

Clipboard.SetText Text1.SelText

End Sub

Private Sub Form_Initialize() '利用控件数组产生0-9的控件

For i = 1 To 9

Load Command1(i)

Select Case i Mod 3

Case 0

With Command1(i)

.Visible = True

.Caption = i

.Left = Command1(0).Left + 1440

.Top = Command1(i - 3).Top + Command1(i).Height - 1095 End With

Case 1

With Command1(i)

.Visible = True

.Caption = i

.Left = Command1(0).Left

.Top = Command1(i - 1).Top + Command1(i).Height - 1095 End With

Case 2

With Command1(i)

.Visible = True

.Caption = i

.Left = Command1(0).Left + 720

.Top = Command1(i - 2).Top + Command1(i).Height - 1095 End With

End Select

Next i

For j = 1 To 3 '生成运算符的控件按钮

Load Command2(j)

With Command2(j)

指导教师:郝谦

.Visible = True

.Left = Command2(0).Left

.Top = Command2(j - 1).Top + Command2(j).Height + 100 End With

Command2(j).Caption = Choose(j, "-", "×", "÷")

Next j

For k = 1 To 3

Load Command12(k)

With Command12(k)

.Visible = True

.Left = Command12(0).Left

.Top = Command12(k - 1).Top + Command12(k).Height + 100 End With

Command12(k).Caption = Choose(k, "cos", "tan", "n!")

Next k

For n = 1 To 5

Load Command13(n)

With Command13(n)

.Visible = True

.Top = Command13(0).Top

.Left = Command13(n - 1).Left + Command13(n).Width + 100 End With

Command13(n).Caption = Choose(n, "B", "C", "D", "E", "F")

Next n

End Sub

Private Sub Form_Load() '初始化

x1 = 0

x2 = 0

Text1.Text = "0."

End Sub

Private Sub kexue_Click()

Form2.Show

Form1.Hide

End Sub

Private Sub Form_Resize()

Me.Height = 5820

Me.Width = 5130

End Sub

指导教师:郝谦

Private Sub Hexadecimal_Click()

Text1.Text = Hex(Val(Text1.Text))

End Sub

Private Sub Normal_Click()

Form1.Show

Form2.Hide

End Sub

Private Sub Octonary_Click()

Text1.Text = Oct(Val(Text1.Text))

End Sub

Private Sub Option1_Click()

Text1.Text = Hex(Val(Text1.Text))

For n = 0 To 5

Command13(n).Enabled = True

Next n

For j = 2 To 9

Command1(j).Enabled = True

Next j

Command1(8).Enabled = True

Command1(9).Enabled = True

lastinput = "="

End Sub

Private Sub Option2_Click()

Text1.Text = Oct(Val(Text1.Text))

Command1(8).Enabled = False

Command1(9).Enabled = False

For n = 0 To 5

Command13(n).Enabled = False

Next n

For j = 2 To 9

Command1(j).Enabled = True

Next j

lastinput = "="

指导教师:郝谦

End Sub

Private Sub Option3_Click()

For n = 0 To 5

Command13(n).Enabled = False

Next n

Command1(8).Enabled = True

Command1(9).Enabled = True

For j = 2 To 9

Command1(j).Enabled = True

Next j

For i = 1 To Len(Text1.Text)

Select Case Mid(Text1.Text, i, 1)

Case "0": D = D & "0"

Case "1": D = D & "1"

Case "2": D = D & "2"

Case "3": D = D & "3"

Case "4": D = D & "4"

Case "5": D = D & "5"

Case "6": D = D & "6"

Case "7": D = D & "7"

Case "8": D = D & "8"

Case "9": D = D & "9"

Case "A": D = D & "10"

Case "B": D = D & "11"

Case "C": D = D & "12"

Case "D": D = D & "13"

Case "E": D = D & "14"

Case "F": D = D & "15"

End Select

Next i

Text1.Text = D

lastinput = "="

End Sub

Private Sub Option4_Click()

For n = 0 To 5

Command13(n).Enabled = False

Next n

For j = 2 To 9

Command1(j).Enabled = False

指导教师:郝谦

Next j

For i = 1 To Len(Text1.Text)

Select Case Mid(Text1.Text, i, 1)

Case "0": B = B & "0000"

Case "1": B = B & "0001"

Case "2": B = B & "0010"

Case "3": B = B & "0011"

Case "4": B = B & "0100"

Case "5": B = B & "0101"

Case "6": B = B & "0110"

Case "7": B = B & "0111"

Case "8": B = B & "1000"

Case "9": B = B & "1001"

Case "A": B = B & "1010"

Case "B": B = B & "1011"

Case "C": B = B & "1100"

Case "D": B = B & "1101"

Case "E": B = B & "1110"

Case "F": B = B & "1111"

End Select

Next i

Text1.Text = B

lastinput = "="

End Sub

Private Sub paste_Click() '粘贴

Text1.SelText = Clipboard.GetText

End Sub

Form3:

Private Sub Command1_Click()

Form3.Hide

Form1.Show

End Sub

Private Sub Form_Resize()

Me.Width = 6360

Me.Height = 6645

End Sub

四、实验心得:

此次实训完成了所有的计算器修改。此次实训完成了,计算器也出来了。

回想以前的实训,每次实训都有很深的体会,曾经为了独立一个完整的程序而高兴,为了

指导教师:郝谦

编程而苦苦思索,在其中的酸甜苦辣只有自己知道,成功是属于为之努力的人。

通过这几次实验实训对VB的学习,我发觉它具有广阔的发展前景,类似计算器只是其中一个小小的程序,它是面向对象的一门算机语言,易学易懂,可能它比C语言更为让人接受,简单明了的界面,清晰的语句,我决定把它学好,学精。不段的钻研,直道能够熟练的应用它去编写每一个心中构思的程序。所以vb方面还有我们更多,更深,更广的学习与研究。最重要的是让我体会到了团队精神的力量,一起研究,一起思索,这对我们将来vb 的学习会有很大的帮助以及提高。

指导教师:郝谦

简单计算器c++课程设计

简单计算器 1 基本功能描述 简单计算器包括双目运算符和单目运算符。双目运算符包含基本的四则运算及乘幂功能,单目运算符包含正余弦、阶乘、对数、开方、倒数等运算。可对输入任意操作数包含小数和整数及正数和负数进行以上的所有运算并能连续运算。出现错误会给出提示,同时包含清除、退格、退出功能以及有与所有按钮相对应的菜单项。 2 设计思路 如图1,是输入数据子函数的流程图。打开计算器程序,输入数据,判断此次输入之前是否有数字输入,如果有,则在之前输入的数字字符后加上现有的数字字符;如果没有,则直接使编辑框显示所输入的数字字符。判断是否继续键入数字,如果是,则继续进行前面的判断,如果否,则用UpdateData(FALSE)刷新显示。 如图2,是整个计算器的流程图。对于输入的算式,判断运算符是双目运算符还是单目运算符。如果是双目运算符,则把操作数存入数组a[z+2]中,把运算符存入b[z+1]中;如果是单目运算符,则把字符串转化为可计算的数字,再进行计算。下面判断运算符是否合法,如果合法,则将结果存入a[0],不合法,则弹出对话框,提示错误。结束程序。

输入一个数字 在之前输入的数字字符后面加上现在的数字字符。 Eg :m_str+=”9”。 直接使编辑框显示所输入的数字字符。 Eg :m_str=”9”。 pass3=1表示已有数字输入 开始 之前是否有数字输入? pass3==1? 继续键入数字? 用UpdateData(FALSE)刷新显示 图1 输入数据子函数流程图 Y N Y N

输入开始 双目运算符 是否每一个操作数都存入a[]数组? 把操作数存入a[z+2],把运算符存入b[z+1]。 单目运算符 将字符串转换 为可计算的数进行运算 运算是否合法? 将结果存入a[0] 弹出对话框提示错误 结束Y Y N N 图2 简单计算器总流程图

VB程序设计实验报告

《VB程序设计》实验单元二 实验报告 专业班级:新闻班姓名: ________________ 学号:—指导教师:完成时间:2013.5 一、实验题目 数组和自定义类型 二、实验环境 Visual Basic6.0 程序软件 三、实验目的 1.掌握数组的声明、数组元素的引用。 2.掌握固定长度数组和动态数组的使用差别。 3.掌握数组常用的操作和常用算法。 4.掌握列表框和组合框的使用。 5.掌握自定义类型及数组的使用。 四、实验内容 1.随机产生30—100 (包括30、100)的10个正整数,求最大值、最小值、平均值,并显示整个数组的只和结果。 2.随机产生20个学生成绩,统计各分数段人数。即0~59、 60~69、 70~79、80~89、90~100,并显示结果。

五、实验步骤 1.打开VB界面,建立工程 2.在窗体窗口设置界面 3?属性窗口控件对象属性设置 4.编写程序代码 5?运行程序及调试 6?程序建立,保存工程文件六、实验结果 第1题:

70 53 57 28 30 77 1 76 81 70最大值81 最小值1 平均值54.3 4 41 86 79 37 96 87 5 94 36 最大值96 最小值4 平均值56.5 52 76 5 59 46 29 62 64 26 27 :最大值76 最小值5 平均值44.6 82 82 58 98 91 22 69 98 24 53最大值98 最小值22 平均值67.7 10 99 67 1 57 10 10 79 28 4 最大值99 最小值1 平均值36. 5 29 38 30 94 97 40 27 16 16 64实验 r Q Forml 回

计算机题库VB25

试卷编号:25 所属语言:Visual Basic 试卷方案:VB程序设计 试卷总分:100分 共有题型:4种 一、单选共15题(共计30分) 第1题(2.0分)题号:2299 难度:中第1章 将调试通过的工程经"文件"菜单的"生成.exe文件"编译成.exe后,将该可执行文件转到其他机器上不能运行的主要原因是(). A:运行的机器上无VB系统所需的动态连接库 B:缺少.frm窗体文件 C:该可执行文件有病毒 D:以上原因都不对 答案:A 第2题(2.0分)题号:2344 难度:中第2章 下列字符串常量中,最大的是(). A:"北京" B:"上海" C:"天津" D:"广州" 答案:C 第3题(2.0分)题号:2436 难度:中第2章 能正确表达a≤1或a≥5的逻辑表达式是(). A:a<=1或a>=5 B:a<=1,a>=5 C:a<=10 Or a>=5 D:a<=l And a>=5 答案:C 第4题(2.0分)题号:2539 难度:中第2章 用一个程序段对一个对象被单击(或双击)做出响应,从而实现指定的操作,称为(). A:可视化程序设计 B:事件驱动编程机制 C:过程化程序实际方法

D:非过程化程序设计语言 答案:B 第5题(2.0分)题号:2601 难度:中第3章 在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程: Option Base 1 Private Sub Command1_Click() K = 3 If X < 3 Then Print X + 3; If X < 4 Then Print X + 4; If X < 5 Then Print X + 5; If X< 6 Then Print K + 6; Print End Sub 程序运行后,单击命令按钮,则窗体上显示的内容是(). A:6 7 8 9 B:7 8 9 C:8 9 D:9 答案:B 第6题(2.0分)题号:2662 难度:中第3章 运行下面程序后,在窗体中显示的是(). Private Sub Form_Click() a$="*": b$="$" For k=1 To 3 x$=String$(Len(a$)+k,b$) Print x$; Next k Print End Sub A:*** ** **** B:*$*$*$ C:1*$2*$3*$ D:$$$$$$$$$ 答案:D

VB实验报告

VB实验报告 实验一、VB控制结构 [实验目的] 1.掌握选择语句的使用 2.掌握循环语句的使用 [实验内容] 一、VB编程基础 练习:在应用程序的代码窗口中分别输入以下四段代码,当程序运行 时在窗体上单击,分别会发生什么情况,为什么? ①Private Sub Form_Click() I = 10 Print I End Sub ②Private Sub Form_Click() Dim I% I = 10 Print I End Sub ③Option Explicit Private Sub Form_Click() I = 10 Print I End Sub ④Option Explicit Private Sub Form_Click() Dim I% I = 10 Print I

End Sub 第一个程序运行的结果是: 点击一次窗体便会出现一个“10” 第二个程序的运行结果是: 也是点击一次窗体出现一个“10” 第三个程序运行的结果是:无法运行,显示变量未定义第四个程序运行的结果是:

在应用程序的代码窗口中分别输入以下两段代码,当程序运行时在窗体上反复单击,分别会发生什么情况,为什么? Private Sub Form_Click() Dim n As Integer n = n + 1 Print n End Sub Private Sub Form_Click() Static n As Integer n = n + 1 Print n End Sub 第一个程序运行结果是: 第二个程序运行的结果是:

二、选择语句 程序1:创建应用程序。要求:单击窗体可弹出输入框,任意输入三个数,然后按从小到大的顺序输出到窗体上。 Private Sub Text1_Change() Dim X1 As Single, X2 As Single, X3 As Single, Temp As Single '定义x1,x2,x3,temp X1 = CSng(InputBox("请输入第1个数:", "输入数据")) '弹出请求输入数据x1的文本框 X2 = CSng(InputBox("请输入第2个数:", "输入数据")) '弹出请求输入数据x2的文本框 X3 = CSng(InputBox("请输入第3个数:", "输入数据")) '弹出请求输入数据x3的文本框 If X1 > X2 Then Temp = X1: X1 = X2: X2 = Temp '比较x1,x2,若x1大于x2将两值交换 End If If X1 > X3 Then Temp = X1: X1 = X3: X3 = Temp '比较x1,x3,若x1大于x3将两值交换 End If If X2 > X3 Then Temp = X3: X3 = X2: X2 = Temp '比较x2,x3,若x2大于x3将两值交换 End If Print: Print Print "输出结果:" ’在屏幕上输出“输出结果:” Print Print x1,x2,x3 ’在屏幕上输出x1,x2,x3 End Sub

简易计算器的设计与实现

沈阳航空航天大学 课程设计报告 课程设计名称:单片机系统综合课程设计课程设计题目:简易计算器的设计与实现 院(系): 专业: 班级: 学号: 姓名: 指导教师: 完成日期:

沈阳航空航天大学课程设计报告 目录 第1章总体设计方案 (1) 1.1设计内容 (1) 1.2设计原理 (1) 1.3设计思路 (2) 1.4实验环境 (2) 第2章详细设计方案 (3) 2.1硬件电路设计 (3) 2.2主程序设计 (7) 2.2功能模块的设计与实现 (8) 第3章结果测试及分析 (11) 3.1结果测试 (11) 3.2结果分析 (11) 参考文献 (12) 附录1 元件清单 (13) 附录2 总电路图 (14) 附录3 程序代码 (15)

第1章总体设计方案 1.1 设计内容 本设计是基于51系列的单片机进行的十进制计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除1位无符号数字的简单四则运算,并在6位8段数码管上显示相应的结果。 设计过程在硬件与软件方面进行同步设计。硬件方面从功能考虑,首先选择内部存储资源丰富的8751单片机,输入采用4×4矩阵键盘。显示采用6位8段共阳极数码管动态显示。软件方面从分析计算器功能、流程图设计,再到程序的编写进行系统设计。编程语言方面从程序总体设计以及高效性和功能性对C语言和汇编语言进行比较分析,最终选用汇编语言进行编程,并用protel99se涉及硬件电路。 1.2 设计原理 在该课程设计中,主要用到一个8751芯片和串接的共阳数码管,和一组阵列式键盘。作为该设计的主要部分,下面将对它们的原理及功能做详细介绍和说明。 1)提出方案 以8751为核心,和数码管以及键盘用实验箱上已有的器件实现计算器的功能。 2) 总体方案实现 (1)要解决键值得读入。先向键盘的全部列线送低电平,在检测键盘的行线,如果有一行为低电平,说明可能有按键按下,则程序转入抖动检测---就是延时10ms再读键盘的行线,如读得的数据与第一次的相同,说明真的有按键按下,程序转入确认哪一键按下的程序,该程序是依次向键盘的列线送低电平,然后读键盘的行线,如果读的值与第一次相同就停止读,此时就会的到键盘的行码与列码

VB课程实验报告

山西财经大学《程序设计(VB+Acces)》实验报告 ****年*月**日实验题目1选择结构程序设计 选课课号2015-2016-2-N081002S00-08034- 学院 ***** 学院 班 级 ******* 姓名*** 学 号 ********* 理论课教师李平珍 上机指 导教师 李平珍 实验目的及要求: 1.掌握条件表达式和分支语句 2.正确使用If...Then...Else和If...Then...ElseIf等语句3.使用选择性控件实现程序应用 编写以下程序段: 求一元二次方程ax2+bx+c=0的根 设计一个四则运算计算器 实验的详细操作步骤、程序代码及运行截图: 一. Private Sub Command1_Click() Dim A As Single, B As Single, C As Single Dim R1 As Single, R2 As Single A = Val B = Val

If B ^ 2 - 4 * A * C < 0 Then MsgBox "该方程无解." ElseIf B ^ 2 - 4 * A * C = 0 Then R1 = -B / 2 / A MsgBox "该方程仅有一个根为" & R1 & "." Else R1 = (-B + Sqr(B ^ 2 - 4 * A * C)) / (2 * A) R2 = (-B - Sqr(B ^ 2 - 4 * A * C)) / (2 * A) MsgBox "该方程有两个根分别为" & R1 & "和" & R2 & "." End If End Sub 二. Private Sub cmdCal-Click() Dim x1 As Single,sign As String,x2 As Single X1=Val(txtA):sign=txtB:x2=Val(txtC)

2012年全国计算机等级考试二级VB上机考试试题题库

2012二级VB上机考试试题题库 VB考试上机试题 1) .新建一个工程,实现单击Command1将text1中的内容复制(或者剪切)到Text2中。(要求使用Clipboard对象)保存。 窗体上一个text文本框,两个command按钮,caption分别为“剪切”,“恢复”,运行后要求在text1中输入文本,点“剪切”,把text1中的内容剪切掉,点”恢复“,把text1中的内容恢复出来。提示:定义一个变量用来存放text1中的内容。 2) .新建一个工程,文本框text1,使用户输入字母一律转换为大写显示(焦点在最右端)保存。 3) .新建一个工程,实现功能:在窗体中实现由下向上滚动显示“您好!网络之家”这几个字。保存。 4) .新建一个工程,在Form1界面创建Form2,Form3两个子菜单的Forms菜单,选择Form2子菜单,以无模式显示Form2,选择Form3子菜单,以有模式显示Form3.保存。5) .新建一个工程,在界面上放置一个工具条Toobar1,在工具条上有三个按纽,按下第一个按钮时用MsgBox显示:“第一个按纽被按下”;按下第二个按纽时用MsgBox显示:“第二个按纽被按下”;按下第三个按纽时用MsgBox显示:“第三个按钮被按下”。保存。

6) 。新建一个工程,包含两个窗体Form1,Form2。实现功能制作---欢迎界面,时间为三秒,三秒后,Form1消失,Form2出现。保存。 7) 。新建一个工程,实现功能限制:在Text1中只能输入10个字母,超过的在Text2中显示。保存。 8) 。新建一个工程,实现功能单击Text1框时,Text1中的内容被全选。保存。 9) 。新建一个工程,实现功能点击Command1按钮,读取系统的汉字字型,在ComBox列表框中显示。保存。 10) 。新建一个工程,实现单击Commmand1将Text1的内容剪切到Text2中。(上次的那道题目是复制)保存。 11) 。新建一个工程,其中含五个单选按钮,两个面板StratusBar1. 第一面板题“欢迎探讨”,点击单选按钮时,第二个面板标题为选中的标题号。保存。 12) 。新建一个工程,使用打开对话框找到某一文件(硬盘上任意一文本文件),带全路径的文件名,显示在一文本框内。保存。

VB实验报告一

本科实验报告 课程名称:人机界面程序设计基础 实验项目:一、VB环境和可视化编程基础实验地点: 专业班级:学号: 学生姓名: 指导教师:李何 年月日

一、实验目的和要求 1、掌握启动与退出Visual Basic的方法。 2、掌握建立、编辑和运行一个简单的Visual Basic应用程序的全过程。 3、掌握定义变量、常量的方法;了解运算符和表达式的使用;熟悉内部函数。 4、掌握基本控件的应用。 二、实验内容和原理 1、编写一程序,在文本框中统计在该窗口上鼠标单击的次数。 提示:使用Form_Click事件;文本框计数Text1=Val(Text1)+1。 2、使用Print方法,掌握“,”和“;”的区别;以及Spc(n)函数、Tab(n)函数、属性Current X和Current Y的定位输出。 3、编写一程序,在标签上实时显示系统时间,系统时间要求00:00:00AM/PM格式 提示:使用Timer控件、Format函数和Now函数。 4、对教材上例4-13进行改动,用输入框函数完成输入,用消息框函数显示结果。 5、使用Len()函数、LenB()函数、Rnd函数和Randomize语句、Shell函数,并对运行结果进行分析。 三、主要仪器设备 计算机

四、实验步骤 1、编写一程序,在文本框中统计在该窗口上鼠标单击的次数。 提示:使用Form_Click事件;文本框计数Text1=Val(Text1)+1。 打开VB软件,建立标准exe,在窗体设计器中添加Command1,更名为“按钮” 添加text1,删掉名称。 双击按钮,编写程序如图

单片机简易计算器课程设计

课程设计 题目名称简易计算器设计 课程名称单片机原理及应用 学生姓名 班级学号 2018年6 月20日

目录 一设计目的 本设计是基于51系列单片机来进行的简单数字计算器设计,可以完成计算器的键盘输入,进行加、减、乘、除六位整数数范围内的基本四则运算,并在LED上显示相应的结果。软件方面使用C语言编程,并用PROTUES仿真。 二总体设计及功能介绍 根据功能和指标要求,本系统选用MCS-51系列单片机为主控机,实现对计算器的设计。具体设计及功能如下: 由于要设计的是简单的计算器,可以进行四则运算,为了得到较好的显示效果,采用LED显示数据和结果; 另外键盘包括数字键(0~9)、符号键(+、-、×、÷)、清除键和等号键,故只需要16个按键即可,设计中采用集成的计算键盘; 执行过程:开机显示零,等待键入数值,当键入数字,通过LED显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LED上输出运算结果。

三硬件仿真图 硬件部分比较简单,当键盘按键按下时它的那一行、那一列的端口为低电平。因此,只要扫描行、列端口是否都为低电平就可以确定是哪个键被按下。 四主程序流程图 程序的主要思想是:将按键抽象为字符,然后就是对字符的处理。将操作数分别转化为字符串存储,操作符存储为字符形式。然后调用compute()函数进行计算并返回结果。具体程序及看注释还有流程图 五程序源代码 #include #include #include/* isdigit()函数*/ #include/* atoi()函数*/ #define uchar unsigned char #define uint unsigned int

VB实验一 实验报告

实验报告一 课程VB程序设计实验项目Visual Basic环境 顺序选择程序设计(4学时) 成绩 专业班级 姓名学号实验日期 实验目的 (1)熟悉Visual Basic6.0集成开发环境 (2)掌握Visual Basic程序的开发过程,能够运行一个完整的Visual Basic程序(3)掌握选择控制结构(If、Select case)语句实现程序分支 (4)掌握控制结构相关控件(单选按钮、复选框) (5)能综合运用选择及循环控制结构解决较复杂的问题 实验内容 一、VB环境和顺序结构 【实验1】设计一个简单VB程序(10分) 它由一个窗体、一个文本框和3个命令按钮组成。窗体的标题为"Visual Basic 程序设计示例",当用户单击命令按钮“显示”时,文本框中出现“欢迎使用Visual Basic 6.0”,窗体上显示“你好”,单击命令按钮“清除”时,清除文本框中显示的内容和窗体上的内容,单击命令按钮“结束”时,结束程序。 实验结果: 【实验1 代码】 【实验1 典型结果】 【实验2】编写程序,其功能为输入三角形的三边,求三角形的面积。计算公式为:

S=(a+b+c)/2,面积=sqr(s*(s-a)*(s-b)*(s-c)) (20分) 程序界面如下所示 实验结果: 【实验2 代码】 【实验2 典型结果】 【选做1】单击窗体时,随机产生一个三位正整数,然后逆序输出该数,产生的数与逆序数同时显示,结果如下所示,要求用两种方法实现(使用数字的逆序和字符串的逆序)(15分) 实验结果: 【方法1 代码】 【方法1 典型结果】 【方法2 代码】 【方法2 典型结果】

全国计算机二级VB考试真题和答案

2007年春 江苏省高等学校非计算机专业学生 计算机基础知识和应用能力等级考试 二级试卷 试卷语种:Visual Basic 第一部分计算机基础知识 1.微电子技术是信息技术领域的关键技术,它以集成电路(IC)为核心。在下列有关叙述中,错误的是。 A.A.目前IC芯片(如CPU芯片)的集成度可达数千万个电子元件 B.B.Moore定律指出,单块IC的集成度平均每半年翻一番 C.C.从原料熔练到最终产品包装,IC的制造工序繁多,工艺复杂,技术难度非常高 D.D.非接触式IC卡采用电磁感应方式无线传输数据,所以又称为射频卡或感应卡 2.在下列有关通信中使用的传输介质的叙述中,错误的是。 A.A.计算机局域网中大多使用无屏蔽双绞线,其无中继有效传输距离大约100m B.B.同轴电缆可用于传输电视信号 C.C.光纤价格高,一般不在校园网和企业网中使用 D.D.微波的波长很短,适合于长距离、大容量无线通信 3.二进制数(1010) 2与十六进制数(B2) 16 相加,结果为。 A.(273) 8B.(274) 8 C.(314) 8 D.(313) 8 4.设有一段文本由基本ASCII字符和GB2312字符集中的汉字组成,其代码为B0 A1 57 69 6E D6 D0 CE C4 B0 E6,则在这段文本中含有。 A.1个汉字和9个西文字符 C.3个汉字和5个西文字符 B.2个汉字和7个西文字符 D.4个汉字和3个西文字符 5.在下列有关CPU的叙述中,错误的是 . A. A.CPU的主要组成部分有运算器、控制器和寄存器组 B. B.CPU的主要功能是执行指令,不同类型CPU的指令系统通常有所 不同 C. C.为了加快运算速度,CPU中可包含多个算术逻辑部件(ALU) D. D.目前PC机所有的CPU芯片均为Intel公司的产品 6.PC机在加电启动过程中会运行POST程序、引导程序、系统自举程序等。若在启动过程中,用户按某一热键(通常是Del键)则可以启动CMOS设置程序。这些程序运行的顺序是。 A.A.POST程序->CMOS设置程序->系统自举程序->引导程序 B.B.POST程序->引导程序->系统自举程序->CMOS设置程序 C.C.CMOS设置程序->系统自举程序->引导程序->POST程序 D.D.POST程序->CMOS设置程序->引导程序->系统自举程序 7.目前PC机一般都有USB和FirWire接口,用于连接各种外部设备.在下列关于这两种接口的叙述中,错误的是 . A. https://www.360docs.net/doc/4716799863.html,B是一种串行接口,可以连接键盘、鼠标器、优盘、数码相机等 多种设备

VB实习心得体会

篇一:vb实习体会 vb实习体会 我对于visualbasic的学习,是从初中开始的。当时舟山市的中考政策有考级加分制度,考出全国二级能加10分。在此诱惑下报名参加培训班,考了两次,第一次笔试未通过,第二次才全通过。虽然考了两次,但是那时候已经能够编出几个没有什么逻辑性可言的小小游戏了。所以这次认识实习,对我来说难度并不大。然而由于选课上面的原因,认识实习和电子实习冲突,导致我没有上过一节认识实习课。所以我的vb水平基本没有什么进步,这个五子棋,也是建立在初中的经验上的。 vb本身也不是很难。尤其在gui编程上能够体现出来。我接触过几种gui的编程,桌面应用里面有swing、qt库的编程,另外还有android和j2me的编程。这些程序在gui开发上面虽然不能说难,但代码量也是很大的(qt和android有可视化辅助设计,稍微好一点)。而微软确实对程序员比较照顾,出了很多的编程方式都比较简易,比如windowsform式的编程,这在vb和c#上体现的非常到位,大大降低了程序员的门槛。值得一提的是,我初中的学校,超过三分之一的人通过了全国计算机等级考试二级vb,可见vb的简单程度。 虽然vb很简单,但说实话我不太喜欢vb。一方面是长期接触类c语法,让我对于类c语法的语言比较偏爱(java、c++、php等)。另一方面是vb是一种windowsonly的语言,可移植性比较差。 而从业界发展的视角来看,随着苹果焕发第二春以及google的崛起,微软的势力开始萎缩。在终端方面,高端智能手机以及平板电脑正悄悄取代个人pc机的地位。而互联网云计算的概念更加使得这些终端设备能够替代传统pc。而微软在这方面几乎可以被称作是惨败的。所以,开发windows桌面应用渐渐显得不入时,况且是用可移植性非常差的vb6来开发。 如果要我选择桌面应用程序开发工具的话,我恐怕会选择c#。它既有 windowsform的编程方式,拥有https://www.360docs.net/doc/4716799863.html,的几乎所有的便利特性,而且是类java语法,使得程序员能够非常快的适应。另外,.net的可移植性比较强。c#运行在.net平台上,理论上可以像java那样易于移植,而且在linux上也出现了mono这样的开源版本。而vb6则不行。当然,语言的问题总是微乎其微的。这一次实习最大的收获应该是大致了解了五子棋程序的原理。比如说怎么判断五子连珠等等。虽然没有更上一层楼编出ai,但是总的来说,这是我第一次用vb开发出一个像样点的游戏了。篇二:vb实训个人总结 vb实训个人总结 在这一周的实习中,使我学到了好多书本上没有的知识,更让我对vb有了更深一步的掌握,同时也发现了许多自己在学习方面的不足,取长补短,互相学习,共同进步,我们不但学习了知识,更好的证明了实践是检验真理的唯一标准。培养和提高我们的实际操作和应用能力,在学习vb后,具体的是使我们熟悉并使用各种类和各种vb控件的应用,在编写程序的过程中我们还专门编写了注释以便于修改程序!这些内容使我们更加熟练的应用这门语言,给自己以后能够走上工作岗位打下良好的基础! 实训的第一天接到任务时我们都觉得有点难度,很有挑战性,毕竟学籍信息管理系统是一个比较系统、完善、功能相对较齐全的管理系统,即使是用户模块也可以完成各种操作,如对用户的查询、添加.删除以及修改等。因此程序编写也十分复杂,工作量较大,编写一定要认真。一个小小的失误都可能使程序出现大的漏洞。而我们只是学了点简单的vb程序编写,没有尝试过这种相对来说比较系统完善的系统。所以在做项目的时候我们倍感压力、更加的团结协作,可即使如此我们还是出现了错误,我们的程序在编写上存在一些漏洞,导致调试时不能正常运行,后经过老师的指导、我们的调整,终于可以完美的运行, 我做的是学籍信息管理系统,但是在编写程序的时候也遇到了很多难懂的问题,有的是实践能力差,有的是对书本上的内容太过于模糊,有的是什么也不知道,当中有说不出口的味道。

简易计算器课程设计

评阅教师评语:课程设计成绩 考勤成绩 实做成绩 报告成绩 总评成绩指导教师签名: 课程设计报告 论文题目基于ARM的简易计算器设计 学院(系):电子信息与自动化学院 班级:测控技术与仪器 学生姓名:同组同学: 学号:学号: 指导教师:杨泽林王先全杨继森鲁进时间:从2013年 6 月10 日到2013年 6 月28 日 1

目录 1、封面—————————————————————P1 2、目录—————————————————————P2 3、前言—————————————————————P3 4、关键字————————————————————P3 5、原理与总体方案————————————————P3 6、硬件设计———————————————————P6 7、调试—————————————————————P10 8、测试与分析——————————————————P11 9、总结—————————————————————P13

10、附件—————————————————————P14 前言 近几年,随着大规模集成电路的发展,各种便携式嵌入式设备,具有十分广阔的市场前景。嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是是由单个程序实现整个控制逻辑。在嵌入式系统中,数据和命令通过网络接口或串行口经过ARM程序处理后,或显示在LCD上,或传输到远端PC上。 本文通过周立功的LPC2106芯片完成的简易计算器,正是对嵌入式应用的学习和探索。 一、摘要: 计算器一般是指“电子计算器”,是能进行数学运算的手持机器,拥有集成电路芯片。对于嵌入式系统,以其占用资源少、专用性强,在汽车电子、航空和工控领域得到了广泛地应用。本设计就是先通过C语言进行相应程序的编写然后在ADS中进行运行最后导入PROTUES进行仿真。最后利用ARM中的LPC2106芯片来控制液晶显示器和4X4矩阵式键盘,从而实现简单的加、减、乘、除等四则运算功能。 关键字:中断,扫描,仿真,计算 二、原理与总体方案: 主程序在初始化后调用键盘程序,再判断返回的值。若为数字0—9,则根据按键的次数进行保存和显示处理。若为功能键,则先判断上次的功能键,根据代号执行不同功能,并将按键次数清零。程序中键盘部分使用行列式扫描原理,若无键按下则调用动态显示程序,并继续检测键盘;若有键按下则得其键值,并通过查表转换为数字0—9和功能键与清零键的代号。最后将计算结果拆分成个、十、百位,再返回主程序继续检测键盘并显示;若为清零键,则返回主程序的最开始。 电路设计与原理:通过LPC2106芯片进行相应的设置来控制LCD显示器。 而通过对键盘上的值进行扫描,把相应的键值通过MM74C922芯片进行运算从而

《VB程序设计》实验报告

台州学院 《VB程序设计》实验报告 实验1.1设计一个程序,程序运行的初始界面如图1-1所示。当单击“显示”按钮时,在文本框中显示“欢迎使用VB!”(图1-1);当单击“清除”按钮时,清除文本框内的文本;当单击“退出”按钮时,结束程序运行。Private Sub Command1_Click() Text1.Text = "欢迎使用VB!" End Sub Private Sub Command2_Click() Text1.Text = "" End Sub Private Sub Command3_Click() End End Sub 实验1.2 设计一个程序,程序运行的初始界面如图1-3所示,其中“显示”按钮为不可用。同时要求: (1)当单击“改变文字”按钮时,在左边标签文字内容改为“你好,张三!”,同时“改变文字”按钮变为不可用(图1-4); (2)当单击“隐藏”按钮时,将左边标签设为不可见,同时“隐藏”按钮变为不可用,“显示”按钮变为可用(图1-5); (3)当单击“显示”按钮时,重新显示左边标签,同时“隐藏”按钮变为可用,“显示” Private Sub Command1_Click() Label1.Caption = "你好,张三!" Command1.Enabled = False End Sub Private Sub Command2_Click() Label1.Visible = False Command3.Enabled = True Command2.Enabled = False End Sub Private Sub Command3_Click() Label1.Visible = True Command2.Enabled = True Command3.Enabled = False End Sub 实验2.1 设计一个程序,运行时界面如图2-1所示。当单击“左”、 “右”、“上”、“下”按钮时,标签分别向左、右、上、下移动。 Private Sub Command1_Click() Label1.Left = Label1.Left - 100 End Sub Private Sub Command2_Click() Label1.Left = Label1.Left + 100 End Sub Private Sub Command3_Click() Label1.Top = Label1.Top - 100 End Sub Private Sub Command4_Click() Label1.Top = Label1.Top + 100 End Sub

VB实验报告 (2500字)

交通与汽车工程学院实验报告 课程名称: 程序设计基础课程代码: 学院(直属系): 年级/专业/班: 学生姓名:学号: 实验总成绩: 任课教师: 开课学院: 实验中心名称: 西华大学实验报告(理工类) 开课学院及实验室:交通与汽车工程学院计算机实验室实验时间:年月日 1、实验目的 a) 理解vb中对象的概念。 b) 理解事件驱动的基本概念。 c) 熟悉vb编程的基本步骤:界面设计、属性设置、编写代码、运行、调试、 保存文件。 d) 掌握常用控件的创建方法以及如何用控件建立用户界面。 e) 掌握在属性窗口中设置 对象属性的基本操作。掌握在代码窗口中编辑程序代码的基本操作。了解在代码中改变对 象属性的基本方法 2、实验设备、仪器及材料 操作系统:windows98/2000/2003/xp 编程工具:visual basic 6.0 3、实验内容 3.1实验方案设计与选择(设计性、创新性实验需写该项内容) 3.2实验原理及实验步骤 (实验工作原理或实验的主要操作过程) 原理: vb中对象的操作与应用。步骤: 1.建立界面和对象,更改各个对象的属性; 2.编写程序代码,运行程序; 3.调试程序,改 程序,得正确程序。 3.3实验记录(核心代码及调试过程) 1、界面设计 2、程序代码设计 dim chname as string chname = text1.text label1.visible = false text1.move 360, 1440, 4500 text1.forecolor = vbblue text1.text = 这是 & chname & 的第一个vb程序!end sub end sub private sub form_load() showcls form1.fillcolor = vbred print print tab(3); 欢迎使用 visual basic!! end sub 3、运行/调试程序 4、保存工程 用相关命令在用户文件夹中保存窗体核工程文件,要求文件名分别 是;firpro.frm,firpro.vbp 4、实验总结4.1实验结果分析及问题讨论 1若将form_load事件改成form_click事件过程,而其中的程序代码不变,运行程序后窗体上的显示有什么不同? 答: form_click事件需单击窗体才能触发,而form_load事件由vb系统自动触发,如 果改变,则需单击窗体才能显示结果。

VB程序设计实验报告

《VB程序设计》实验报告 专业:信息管理与信息系统 班级:1502班 学号: 姓名: 日期:2016年12月20日

一、实验题目:记事本程序的设计 二、实验目的 1、掌握菜单编辑器的使用方法。 2、掌握菜单事件的编程方法。 3、初步掌握多窗体程序设计方法。 三、实验内容与步骤 1、实验内容:设计一个记事本程序。 2、界面设计(贴出对象属性表和界面设计图)。 ①在窗体frmPad上添加一个文本框text1,并根据下表修改窗体及控件属性。 对象窗体属性设置 对象名属性值 FrmPad Caption “记事本” Text1 MultiLine True ScrollBars 2-Vertical Text 清空 ②使用菜单编辑器在窗体上建立菜单:选中窗体frmpad后,单击“工具”菜 单的“菜单编辑器”命令,弹出“菜单编辑器“对话框,如下图所示。 ③根据下表设置菜单。 菜单设置 菜单项标题菜单项名称快捷键其他属性编辑mnuEdit ···剪切mnuCut Ctrl+X ···复制mnuCopy Ctrl+C ···粘贴mnuPaste Ctrl+V

文本风格mnuStyle ···粗体(&B)mnuBold "复选"属性为True ···斜体(&I)mnuItalic "复选"属性为True 弹出菜单popMenu "可见"属性为True ···剪切popCut ···复制popCopy ···粘贴popPaste 设计好程序窗体如下图所示。 菜单编辑器

界面设计 3、编写程序代码。 Private Sub Form_Load() Text1.FontSize = 16 Text1.Text = "Visual Basic程序设计" mnuBold.Checked = False mnuItalic.Checked = False End Sub '剪切 Private Sub mnuCut_Click() Clipboard.Clear Clipboard.SetText Text1.SelText Text1.SelText = "" End Sub '复制

全国计算机VB等级考试历年全真试题(共15套,含答案)

全国计算机VB等级考试历年全真试题 (共15套,含答案) 2005年4月份二级VB真题(附参考答案) (考试时间90分钟,满分100分) 一、选择题((1)~(35)每小题2分,共70分) 下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。 (1)数据的存储结构是指 A) 存储在外存中的数据B) 数据所占的存储空间量 C) 数据在计算机中的顺序存储方式D) 数据的逻辑结构在计算机中的表示 (2)下列关于栈的描述中错误的是 A)栈是先进后出的线性表B) 栈只能顺序存储

C)栈具有记忆作用D) 对栈的插入与删除操作中,不需要改变栈底指针 (3)对于长度为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是 A) 冒泡排序为n/2 B) 冒泡排序为n C) 快速排序为n D) 快速排序为n(n-1)/2 (4)对于长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为 A) log2n B) n/2 C) n D) n+1 (5)下列对于线性链表的描述中正确的是 A)存储空间不一定是连续,且各元素的存储顺序是任意的 B)存储空间不一定是连续,且前件元素一定存储在后件元素的前面 C)存储空间必须连续,且前件元素一定存储在后件元素的前面 D)存储空间必须连续,且各元素的存储顺序是任意的 (6)下列对于软件测试的描述中正确的是 A)软件测试的目的是证明程序是否正确 B)软件测试的目的是使程序运行结果正确 C)软件测试的目的是尽可能多地发现程序中的错误 D)软件测试的目的是使程序符合结构化原则 (7)为了使模块尽可能独立,要求 A)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强 B)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱 C)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱 D)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强 (8)下列描述中正确的是 A) 程序就是软件 B) 软件开发不受计算机系统的限制 C) 软件既是逻辑实体,又是物理实体 D) 软件是程序、数据与相关文档的集合 (9)数据独立性是数据库技术的重要特点之一。所谓数据独立性是指 A) 数据与程序独立存放 B) 不同的数据被存放在不同的文件中 C) 不同的数据只能被对应的应用程序所使用 D) 以上三种说法都不对 (10) 用树形结构表示实体之间联系的模型是

简易计算器课程设计

基于单片机的计算器的设计 摘要:本设计是一个实现加减乘除的计算器,它的硬件主要由四部分构成,一个8051单片机芯片,两个八段共阴极数码管,一个4*4键盘,它可以实现一位数的加减乘除运算。 显示部分:采用LED动态显示。 按键部分:采用4*4键盘。采用软件识别键值,并执行相应的操作。 关键词:LED接口;键盘接口;8255A;汇编语言 一、概述 1.1设计要求及任务: (1)设计4*4的键盘,其中10个数字键0~9,其余六个键“+”、“—”、“*”、“/”、“=”、和“C”键; (2)设计两位LED接口电路; (3)实现1位数的简单运算 1.2设计原理 (1)LED显示器接口技术 LED动态显示接口技术 (2)键盘显示技术 逐行(逐列扫描法) 二、系统总体方案和硬件设计 2.1计算器总体思想 显示部分:采用LED动态显示。 按键部分:采用4*4键盘。采用软件识别键值,并执行相应的操作。 执行过程:开机显示零,等待键入数值,当键入数字,经通过数码管显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在数码管上输出运算结果。 图1 系统设计框图

2.2硬件的选择与连接 图二硬件连接总图 2.2.1硬件选择 (1)由于本设计比较简单,因此选用内部含有4KBE2PROM的89C51单片机作为系统的核心。 (2)扩展输入/输出端口 在扩展输入/输出端口时,要求输入口能够缓冲,,输出口能够锁存。常用小规模集成电路芯片74LS244或74LS245等扩展输入端口,用74LS273、74LS373、 74LS377扩展输出端口。这种扩展方法的特点是电路简单,但功能单一、灵活性差。因而常采用中规模的可编程并行接口芯片8255A扩展输入/输出端口。 (3)锁存电路采用74LS373 2.2.2接口设计 (1)单片机与8255A的接口设计 8255A中的数据总线缓冲器为三态双向数据缓冲存储器,用于将8255A的数据线 D0~D7和单片机的数据总线(P0口)连接,实现单片机和接口间的数据传送。 读写控制部件的接口设计 1、/CS为片选信号,接成低电平表示8255A 被选中。/CS与P2.7相连,用P2口的最高位控制8255A是否工作。即将P2.7控制为低电平。 2、RESET-复位信号,高电平有效,接在单片机的RST端。 3、/RD和/WR为读写控制信号,低电平有效。分别将两个端口接单片机的/RD和/WR 4、A1和A0-端口选择信号,分别与单片机的低两位地址线P1.1和P1.0相连。用于选择不同端口。采用74LS373三态锁存器,用于分离P0口第八位地址线,将它的Q0和Q1口接至8255A的地址输入端A0和A1。

相关文档
最新文档