重点难点和错误分析-项目二四则运算.ppt
重点难点和错误分析 项目二 四则运算,主 讲:浙江广播电视大学 陈小冬,重点难点讲解,程序控制结构变量与数组,程序控制结构,顺序结构,Private Sub Command1_Click()Dim a As IntegerDim b As Integera=Val(Text1)b=Val(Text2)Label1.Caption=a+bLabel2.Caption=a-bEnd Sub,选择结构,程序控制结构,If ThenEnd If,单分支,交换两个数If op1 op2 Then temp=op1op1=op2op2=temp End If,If Then Else End If,双分支,If op1 op2 Thenmax=op2 Elsemax=op1End If,程序控制结构,多分支,程序控制结构,If Then ElseIf Then Else End If,Select Case Case Case Case ElseEnd Select,程序控制结构,循环结构,程序控制结构,For循环语句,For intX=1 To 10 Print*;Next intX,DoLoop循环语句,intX=1 Do While(intX=10)Print*;intX=intX+1 Loop,程序控制结构,变量与数组,数组不是一种数据类型,而是一组相同类型数据的集合,用数组名加上下标可以表示数组中的各个元素。,Dim question(1 To 10)As String,Dim question As String,Dim score(1 To 100)As Integer,变量,Dim score As Integer,数组,score(1)score(2)score(100),Dim score(1 To 100)As Integer Dim i As Integer For i=1 To 100 score(i)=Val(InputBox(请输入第&i&个整数,录入)Next i,变量与数组,Dim score1 As Integer Dim score2 As Integer Dim score100 As Integer score1=Val(InputBox(请输入第1个整数,录入)score2=Val(InputBox(请输入第2个整数,录入)score100=Val(InputBox(请输入第100个整数,录入),不使用数组输入100个数,使用数组输入100个数,常见错误分析,If语句的书写问题 数组的界限 Select Case语句的使用,“块If没有End If”错误,交换两个数If op1 op2 Then temp=op1:op1=op2:op2=temp,原因:单行式的If语句中,必须在一行上书写,若要分行,要用续行符。对多行式的If块语句中,应有配对的End If语句结束。,解决方法:,交换两个数If op1 op2 Then temp=op1:op1=op2:op2=temp End If,交换两个数If op1 op2 Then temp=op1:op1=op2:op2=temp,“块If没有End If”错误,数组“下标越界”错误,原因:引用了不存在的数组元素。,1,Dim intArray(1 To 10)As Integer Dim i As Integer For i=0 To 10 intArray(i)=Val(InputBox(请输入第&i&个整数,录入)Next i,Select Case intScore Case intScore=90 LblResult.Caption=优秀 Case intScore=80 LblResult.Caption=良好 Case intScore=70 LblResult.Caption=中等 Case intScore=60 LblResult.Caption=及格 Case Else LblResult.Caption=不及格 End Select,原因:“表达式列表i”中不能使用“变量或表达式”中出现的变量。,始终执行Case Else子句,运行结果不正确,Select Case intScore Case Is=90 LblResult.Caption=优秀 Case Is=80 LblResult.Caption=良好 Case Is=70 LblResult.Caption=中等 Case Is=60 LblResult.Caption=及格 Case Else LblResult.Caption=不及格 End Select,解决方法:,始终执行Case Else子句,运行结果不正确,谢谢!,