Presentation is loading. Please wait.

Presentation is loading. Please wait.

第4章 数据输入输出 郭清溥.

Similar presentations


Presentation on theme: "第4章 数据输入输出 郭清溥."— Presentation transcript:

1 第4章 数据输入输出 郭清溥

2 第4章数据输入输出 【本章要点】 数据输入输出的控件、函数、过程。 课时安排 2学时(理论),2学时(上机)

3 4.1 数据输入输出控件 用标签输出数据 标签主要用于显示静态的文本信息。该功能主要是通过标签的Caption属性实现的。

4 4.1 数据输入输出控件 用文本框输入输出数据 文本框是一个文本编辑区域,在这里可以输入、编辑、显示文本。

5 4.2 数据输出方法 4.2.1 Print方法 格式 [<窗体.>]Print [<输出项表>] 功能
在指定的窗体中显示“输出项表”的值(缺省窗体时指当前窗体)

6 4.2 数据输出方法 4.2.1 Print方法 说明 数值型数据在输出时都是第一位是符号位, 数值最后要带一个字符位的尾空 ;
行完输出后,自动换行 ;最后若有格式 字符,则执行完输出内容后按格式字符的 规定移动输出指针。

7 4.2 数据输出方法 4.2.1 Print方法 格式字符 “,”
格式字符“,”所规定的输出叫标准输出。标准输出是按每一部分占14个字符位计算。 格式字符“,”就是将输出指针移到下一个标准区域。

8 4.2 数据输出方法 4.2.1 Print方法 格式字符 “,”举例
Print " ", "B", "C", "D", "E" Print -1, 2, Print "Microsoft Visual BASIC" Print "河南财经政法大学", "现代教育技术中心"

9 4.2 数据输出方法 4.2.1 Print方法 格式字符 “;” 格式字符“;”所规定的输出叫紧凑输出。紧凑输出就是紧挨着输出。
格式字符“;”就是保持输出指针不动。

10 4.2 数据输出方法 4.2.1 Print方法 格式字符 “;”举例
Print " "; "B"; "C"; "D"; "E" Print -1; 2; Print "Microsoft Visual BASIC" Print "河南财经政法大学"; "现代教育技术中心"

11 4.2 数据输出方法 为了使函数真正起到作用, 函数后必须紧跟“;” 4.2.2 与Print方法有关的函数 Tab(n)
输出移到下一行执行。 Spc(n) 输出n个空格。 为了使函数真正起到作用, 函数后必须紧跟“;”

12 4.2 数据输出方法 4.2.2 与Print方法有关的函数 Print "1234567890";
Print Tab(12); "ABCDE" Print Spc(10); "ABCDE";

13 4.2 数据输出方法 4.2.2 与Print方法有关的函数 Format $(数值表达式,格式字符串)
该函数的功能是:按“格式字符串”指定的格式输出“数值表达式”的值。如果省略“格式字符串”,则Format$函数的功能与Str$函数基本相同,唯一的差别是,当把正数转换成字符串时,Str$函数在字符串前面留有一个空格,而Format $函数则不留空格。

14 4.2 数据输出方法 4.2.2 与Print方法有关的函数 字符 作用 # 数字;不在前面或后面补0 数字;在前面或后面补0 . 小数点
数字;在前面或后面补0 . 小数点 千位分隔逗点 % 百分比符号 $ 美元符号 - + 负、正号 E+ E- 指数符号

15 4.3 数据输入输出函数和过程 4.3.1 InputBox函数
该函数的作用是在一个对话框中显示提示,等待用户输入正文或按下按钮,并返回文本框中的结果。 函数返回值的类型为字符型。 格式 InputBox(<提示>[,<标题>][,<默认>])

16 4.3 数据输入输出函数和过程 4.3.1 InputBox函数 Dim strIDCard$
strIDCard = InputBox("输入完成后单击“确定”按钮","输入卡号")

17 4.3 数据输入输出函数和过程 4.3.1 InputBox函数 产生一个回车换行 提示 标题 默认 Dim strName$
strName = InputBox("输入你的姓名" & Chr(13) & Chr(10) & _ "完成后单击“确定”按钮", "输入", "郭清溥" ) 提示 标题 默认

18 4.3 数据输入输出函数和过程 4.3.2 MsgBox函数 MsgBox函数在对话框中显示信息,等待用户单击按钮,并返回一个整数以说明用户单击了哪个按钮。 格式 MsgBox ( <提示>,<按钮值>,<标题> )

19 4.3 数据输入输出函数和过程 4.3.2 MsgBox函数 (按钮值)的意义1—显示的按钮

20 4.3 数据输入输出函数和过程 4.3.2 MsgBox函数 (按钮值)的意义2—对话框中的图标

21 4.3 数据输入输出函数和过程 4.3.2 MsgBox函数 (按钮值)的意义3—默认按钮的设置

22 vbOKCancel + vbInformation + vbDefaultButton1
4.3 数据输入输出函数和过程 “0”表示第一个按钮是默认值 4.3.2 MsgBox函数 “1”表示显示“确定”、“取消”按钮 “64”表示显示图标 YN = MsgBox("请确认你的输入!", , "确认") 65 65 vbOKCancel + vbInformation + vbDefaultButton1 YN = MsgBox("你的输入有误!", , "确认")

23 4.3 数据输入输出函数和过程 4.3.2 MsgBox函数 MsgBox函数的返回值

24 4.3 数据输入输出函数和过程 4.3.3 MsgBox语句 语句要求的参数不使用括号! MsgBox还可以写成语句的格式。 格式

25 4.3 数据输入输出函数和过程 例4.4 Visual Basic期终成绩由三部分组成:期终考试、作业和测试成绩,它们分别占70%,10%,20%。现有一个学生的成绩依次为 89,90,78,编写程序,求其总评成绩。 分析: 假设程序中我们分别用KS,ZY,CS表示考试成绩、作业成绩和平时测试成绩,则总评成绩ZP为: ZP = KS×70%+ ZY×10%+ CS×20%

26 4.3 数据输入输出函数和过程 例4.4 Visual Basic期终成绩由三部分组成:期终考试、作业和测试成绩,它们分别占70%,10%,20%。现有一个学生的成绩依次为 89,90,78,编写程序,求其总评成绩。 分析: 怎么给 KS,ZY,CS 输入数据呢? 1.可以用文本框; 2.可以使用InputBox语句输入。

27 4.3 数据输入输出函数和过程 例4.4 Visual Basic期终成绩由三部分组成:期终考试、作业和测试成绩,它们分别占70%,10%,20%。现有一个学生的成绩依次为 89,90,78,编写程序,求其总评成绩。 分析: 假定我们 用InputBox输入数据。 那么输入的数据怎么显示在窗体上呢? 1.可以用文本框; 2.可以使用标签。

28 4.3 数据输入输出函数和过程 例4.4 Visual Basic期终成绩由三部分组成:期终考试、作业和测试成绩,它们分别占70%,10%,20%。现有一个学生的成绩依次为 89,90,78,编写程序,求其总评成绩。 分析: 假定我们 用InputBox输入数据,用文本框显示它们; 运算结果用标签显示。 执行程序的代码写在命令按钮下。

29 4.3 数据输入输出函数和过程 例4.4 Visual Basic期终成绩由三部分组成:期终考试、作业和测试成绩,它们分别占70%,10%,20%。现有一个学生的成绩依次为 89,90,78,编写程序,求其总评成绩。 用InputBox输入,显示在文本框中。 按钮名称 :cmdJS 按钮名称 :cmdGB 计算结果用标签显示。

30 4.3 数据输入输出函数和过程 例4.4 Visual Basic期终成绩由三部分组成:期终考试、作业和测试成绩,它们分别占70%,10%,20%。现有一个学生的成绩依次为 89,90,78,编写程序,求其总评成绩。

31 4.3 数据输入输出函数和过程 例4.4 Visual Basic期终成绩由三部分组成:期终考试、作业和测试成绩,它们分别占70%,10%,20%。现有一个学生的成绩依次为 89,90,78,编写程序,求其总评成绩。

32 4.3 数据输入输出函数和过程 例4.4 Visual Basic期终成绩由三部分组成:期终考试、作业和测试成绩,它们分别占70%,10%,20%。现有一个学生的成绩依次为 89,90,78,编写程序,求其总评成绩。 “计算”命令按钮(cmdJS)的程序源代码如下: Private Sub cmdJS_Click() Dim KS%, ZY%, CS%, ZP! KS = Val(InputBox("", "输入“考试成绩”")): txtKS.Text = KS ZY = Val(InputBox("", "输入“作业成绩”")): txtZY.Text = ZY CS = Val(InputBox("", "输入“测试成绩”")): txtCS.Text = CS ZP = KS * ZY * CS * 0.2 lblZP.Caption = "总评成绩:" & Str(ZP) End Sub KS * 70% + ZY * 10% + CS * 20%

33 将文本框的Enabled属性修改为True后可以用文本框输入三个成绩。
4.3 数据输入输出函数和过程 例4.4 将文本框的Enabled属性修改为True后可以用文本框输入三个成绩。 “计算”命令按钮(cmdJS)的程序源代码如下: Private Sub cmdJS_Click() Dim KS%, ZY%, CS%, ZP! KS = Val(InputBox("", "输入“考试成绩”")): txtKS.Text = KS ZY = Val(InputBox("", "输入“作业成绩”")): txtZY.Text = ZY CS = Val(InputBox("", "输入“测试成绩”")): txtCS.Text = CS ZP = KS * ZY * CS * 0.2 lblZP.Caption = "总评成绩:" & Str(ZP) End Sub KS = Val(txtKS.Text) ZY = Val(txtZY.Text) CS = Val(txtCS.Text)

34 如果将输入的信息放在标签中显示,应该如何修改程序?
4.3 数据输入输出函数和过程 例4.4 如果将输入的信息放在标签中显示,应该如何修改程序?

35 4.3 数据输入输出函数和过程 例4.5 鸡兔同笼问题:鸡和兔子被放在同一个笼中,现在已知鸡兔的总头数和总脚数。编写程序,求笼中鸡和兔子各多少只? 分析: 假如用 Head 表示总头数,Foot 表示总脚数 用 Cock 表示鸡的个数,Rabbit表示兔子的个数 则有: Cock + Rabbit = Head ① 2Cock + 4Rabbit =Foot ② Rabbit =(Foot - 2Head)/2   ③ Cock = Head –Rabbit ④

36 用InputBox输入Foot 和Head。用标签显示。
4.3 数据输入输出函数和过程 例4.5 鸡兔同笼问题:鸡和兔子被放在同一个笼中,现在已知鸡兔的总头数和总脚数。编写程序,求笼中鸡和兔子各多少只? 用InputBox输入Foot 和Head。用标签显示。 文本框名称 :txtC 文本框名称 :txtR 按钮名称 :cmdStart

37 4.3 数据输入输出函数和过程 例4.5 鸡兔同笼问题:鸡和兔子被放在同一个笼中,现在已知鸡兔的总头数和总脚数。编写程序,求笼中鸡和兔子各多少只?

38 4.3 数据输入输出函数和过程 例4.5 鸡兔同笼问题:鸡和兔子被放在同一个笼中,现在已知鸡兔的总头数和总脚数。编写程序,求笼中鸡和兔子各多少只? “计算”命令按钮(cmdStart)的程序源代码如下: Private Sub cmdStart_Click() Dim Head%, Foot%, Rabbit%, Cock% Head = Val(InputBox("", "输入总头数")) Foot = Val(InputBox("", "输入总脚数")) lblResult.Caption = "总头数:" & Head & " 总脚数:" & Foot Rabbit = (Foot - 2 * Head) / 2 : Cock = Head - Rabbit txtC.Text = Cock : txtR.Text = Rabbit End Sub

39 4.3 数据输入输出函数和过程 例4.6 编写程序,在实数范围内求解一元二次方程:aX2+bX+c=0
分析: 因为要求在实数范围内求解一元二次方程,所以我们应该假设该方程的根的判别式 b2-4ac≥0,因此我们可以利用一元二次方程的求根公式来求解方程。

40 4.3 数据输入输出函数和过程 例4.6 编写程序,在实数范围内求解一元二次方程:aX2+bX+c=0 由InputBox输入方程的系数
计算结果用标签显示。

41 4.3 数据输入输出函数和过程 例4.6 编写程序,在实数范围内求解一元二次方程:aX2+bX+c=0

42 4.3 数据输入输出函数和过程 例4.6 编写程序,在实数范围内求解一元二次方程:aX2+bX+c=0
Private Sub cmdStart_Click() Dim A%, B%, C%, X1!, X2! A = Val(InputBox("", "输入方程的系数A")) B = Val(InputBox("", "输入方程的系数B")) C = Val(InputBox("", "输入方程的系数C")) lblShow.Caption = "一元二次方程的系数是:" & A & "," & B & "," & C X1 = (-B + Sqr(B * B - 4 * A * C)) / (2 * A) X2 = (-B - Sqr(B * B - 4 * A * C)) / (2 * A) lblX1.Caption = "X1=" & X1 lblX2.Caption = "X2=" & X2 End Sub

43 4.3 数据输入输出函数和过程 例4.7 A、B、C三人上街买糖果。三人买好后,A对B、C说:“我可以按你们现有的数量再送你们每人一份。”之后,B对A、C ;C对A、B也说了同样的话。互相赠送后,每人各有64块糖果。编写程序,计算A、B、C原来各买了多少块糖果? 分析: 我们用A、B、C表示三人原来各买的糖果数。 C 送给A、B前 A←A/2 B←B/2 C←A+B+C B 送给A、C前 A←A/2 C←C/2 B←A+B+C A 送给B、C前 B←B/2 C←C/2 A←A+B+C

44 4.3 数据输入输出函数和过程 例4.7 A、B、C三人上街买糖果。三人买好后,A对B、C说:“我可以按你们现有的数量再送你们每人一份。”之后,B对A、C ;C对A、B也说了同样的话。互相赠送后,每人各有64块糖果。编写程序,计算A、B、C原来各买了多少块糖果?

45 4.3 数据输入输出函数和过程 例4.7 A、B、C三人上街买糖果。三人买好后,A对B、C说:“我可以按你们现有的数量再送你们每人一份。”之后,B对A、C ;C对A、B也说了同样的话。互相赠送后,每人各有64块糖果。编写程序,计算A、B、C原来各买了多少块糖果?

46 4.3 数据输入输出函数和过程 例4.7 A、B、C三人上街买糖果。三人买好后,A对B、C说:“我可以按你们现有的数量再送你们每人一份。”之后,B对A、C ;C对A、B也说了同样的话。互相赠送后,每人各有64块糖果。编写程序,计算A、B、C原来各买了多少块糖果? Private Sub cmdStart_Click() Dim A%, B%, C% A = 64: B = 64: C = 64 A = A / 2: B = B / 2: C = A + B + C C = C / 2: A = A / 2: B = A + B + C B = B / 2: C = C / 2: A = A + B + C lblResult.Caption = "A、B、C三人的糖果数为: " & " " & A & " " & B & " " & C End Sub

47 4.3 数据输入输出函数和过程 4.1.4 With语句 格式: With <对象>
.<属性>=<表达式> End With 功能: With语句可以对某个对象执行一系列的操作,而不用重复指出对象的名称。

48 4.3 数据输入输出函数和过程 补充例题1 编写程序,分别显示角度和弧度的正弦值。 程序运行后显示“例B1 计算正弦” 计算角度的正弦值
计算弧度的正弦值 输入原始数据X 输出计算结果Y

49 4.3 数据输入输出函数和过程 补充例题1 编写程序,分别显示角度和弧度的正弦值。

50 4.3 数据输入输出函数和过程 补充例题1 编写程序,分别显示角度和弧度的正弦值。 程序运行后,窗体中各个控件的标题要明确显示:
Private Sub Form_Load() Form1.Caption = "例B1 计算正弦" cmdJD.Caption = "按角度计算" cmdHD.Caption = "按弧度计算" txtSR.Text = "" lblSC.Caption = "" End Sub

51 4.3 数据输入输出函数和过程 补充例题1 编写程序,分别显示角度和弧度的正弦值。 Private Sub cmdJD_Click()
Dim X!, Y! X = Val(txtSR.Text) Y = Sin(X * 3.14 / 180) lblSC.Caption = "Sin(" & X & "度)=" & Y End Sub

52 4.3 数据输入输出函数和过程 补充例题1 编写程序,分别显示角度和弧度的正弦值。 Private Sub cmdHD_Click()
Dim X!, Y! X = Val(txtSR.Text) Y = Sin(X) lblSC.Caption ="Sin(" & X & "弧度)=" & Y End Sub

53 第4章 作业 P86 习题:一、二 P86 习题:三 修改例4.4:如果将输入的信息放在标签中显示,应该如何修改程序?
第4章 作业 P86 习题:一、二 P86 习题:三 修改例4.4:如果将输入的信息放在标签中显示,应该如何修改程序? 修改例4.4:如果将计算结果用MsgBox输出,又应该如何修改程序?


Download ppt "第4章 数据输入输出 郭清溥."

Similar presentations


Ads by Google