欢迎来到天天文库
浏览记录
ID:37952287
大小:67.00 KB
页数:6页
时间:2019-06-03
《3. VB常见错误和难点分析》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、江苏省VB等级考试复习要点1999年~2009年春VB常见错误和难点分析1.在选择结构中缺少配对的结束语句对多行式的If块语句中,应有配对的EndIf语句结束。否则,在运行时系统会显示"块If没有EndIf"的编译错误。同样对SelectCase语句也应有与其相对应的EndSelect语句。2.多边选择ElseIf关键字的书写和条件表达式的表示多边选择ElseIf子句的关键字ElseIf之间不能写有空格,即不能写成ElseIf。在多个条件表达式的表示时,应从最小或最大的条件依次表示,以避免条件的过滤。例如,已知输入某课程的百分制成绩mark,要求显示对应五级制的评定,评定条件如下:有以下几
2、种表示方式,语法上都没有错,但执行后结果有所不同,请分析哪些正确?哪些错误?下面给出的答案中,方法一、二、五正确,其余错误,请分析各自的原因。方法一:Ifmark>=90ThenPrint"优"ElseIfmark>=80ThenPrint"良"ElseIfmark>=70ThenPrint"中"ElseIfmark>-60ThenPrint"及格"ElsePrint"及格"EndIf方法二:Ifmark<60ThenPrint"不及格"ElseIfmark<70ThenPrint"及格"ElseIfmark<80ThenPrint"中"ElseIfmark<90ThenPrint"良"E
3、lsePrint"优"EndIf方法三:Ifmark>=60ThenPrint"及格"ElseIfmark>=70ThenPrint"中"Elselfmark>=80ThenPrint"良"Elselfmark>=90ThenPrint"优"ElsePrint"不及格"EndIf6江苏省VB等级考试复习要点1999年~2009年春方法四:Ifmark>=90ThenPrint"优"ElseIf80<=mark<90ThenPrint"良"ElseIf70<=mark<80ThenPrint"中"ElseIf60<=mark<70ThenPrint"及格"ElsePrint"不及格"EndI
4、f方法五:Ifmark>=90ThenPrint"优"ElseIf80<=markAndmark<90ThenPrint"良"ElseIf70<=markAndmark<80ThenPrint"中"ElseIf60<=markAndmark<70ThenPrint"及格"ElsePrint"不及格"EndIf3.SelectCase语句的使用(1)"表达式列表i"中不能使用"变量或表达式"中出现的变量。例如,上述多边选择的例子改为SelectCase语句实现,方法一Case子句中出现变量mark,运行时不管mark的值多少,始终执行CaseElse子句,运行结果不正确;方法二、方法三正确。
5、方法一:SelectCasemarkCasemark>=90Print"优"Casemark>=80Print"良"Casemark>=70Print"中"Casemark>=60Print"及格"CaseElsePrint"不及格"EndSelect方法二:SelectCasemarkCaseIs>=90Print"优"CaseIs>=80Print"良"CaseIs>=706江苏省VB等级考试复习要点1999年~2009年春Print"中"CaseIs>=60Prim"及格"CaseElsePrint"不及格"EndSelect方法三:SelectCasemarkCaseIs>=90P
6、rint"优"Case80To89Print"良"Case70To79Print"中"Case60TO69Print"及格"CaseElsePrint"不及格"EndSelect(2)在"变量或表达式"中不能出现多个变量。实验三第5题对三门课程奖学金的判断,只能用If语句的多边选择,而不能用SelectCase语句实现。例如,有人用如下语句表示:SelectCasemarkl,mark2,mark3Case(markl+mark2+mark3)/3>=95Print"一等奖"EndSelect这样就会在"SelectCasemarkl,mark2,mark3"语句行出现编辑错误,同时Cas
7、e(markl+mark2+mark3)/3>=95书写也错误。第四章常见错误和难点分析1.不循环或死循环的问题主要是循环条件、循环初值、循环终值、循环步长的设置有问题。例如,以下循环语句不执行循环体:Fori=10To20Step-1'步长为负,初值必须大于等于终值,才能循环Fori=20To10'步长为正,初值必须小于等于终值,才能循环DoWhileFalse'循环条件永远不满足,不循环例如,以下循环语句死循环:Fo
此文档下载收益归作者所有