




已阅读5页,还剩142页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章VisualBasic程序设计结构 4 1概述 顺序结构选择结构循环结构 三种基本程序设计结构 4 2顺序结构 程序由上到下依次执行每一条语句PrivateSubForm Click DimiAsIntegeri i 1PrintiEndSub 4 2顺序结构 赋值语句 赋值语句 将数据保存在变量或对象的属性中执行过程 先计算表达式的值 再将其值赋给变量或指定对象的属性 格式 变量名 表达式DimaAsIntegerDimbAsIntegera 1b 2 aa a 1 对象名 属性名 表达式DimcapAsStringcap 窗体标题 Caption cap Form1 Caption cap 4 2顺序结构 赋值语句 注意事项 1 只能给一个变量或对象的一个属性赋值 2 可以是变量 常量 函数和表达式 3 为赋值符号 如 i i 1 4 赋值符号两端数据类型要一致 否则给出提示 类型不匹配 格式 注释内容或Rem注释内容功能 用来作注释 以便于程序的阅读和理解 说明 1 非执行语句 对程序的执行结果没有任何影响 2 注释语句作为一个独立行 可放在过程 模块的开头作为标题 也可以放在执行语句的后面 4 2顺序结构 注释语句 如 X 9 给变量x赋值为9x x 1 将变量x的值加上1后再赋值 说明 以 开头的注释部分 会自动变成绿色 4 2顺序结构 注释语句 4 2顺序结构 暂停语句 格式 Stop功能 暂时停止程序的运行 说明 1 Stop可以放置在过程中的任何地方 相当于在程序代码中设置断点 当执行Stop语句时 系统将自动打开 立即窗口 方便程序员调试跟踪程序 2 在程序调试通过之后 生成可执行文件 exe文件 之前 应删去代码中的Stop语句 4 2顺序结构 结束语句 格式 End功能 程序运行时 遇到结束语句就终止程序的运行 说明 End语句除用来结束程序外 在不同环境下还有其他一些用途 包括 EndSub 结束一个Sub过程EndFunction 结束一个Function过程EndIf 结束一个If语句块EndType 结束记录类型的定义EndSelect 结束情况语句 4 2顺序结构 函数调用语句 格式1 函数名 实参列表 msgbox 计算完成 格式2 变量 函数名 实参列表 Answer msgbox 确实想退出吗 vbYesNo 格式3 对象 方法Form1 print 计算完成 4 3选择结构 根据某个条件来决定执行哪部分程序 选择结构 if语句 select语句 单行if语句 多行if语句 IfxMod2ThenPrint 奇数 Ifanswer vbYesThenEndEndIf SelectCaseoptCase result a bCase result a bCase result a bEndSelect 4 3选择结构 如果x是偶数 则输出 偶数 如果ageX ageY 则salaryX 1500如果text2内容为空 提示 输入数据 If条件Then语句块EndIf 实验4 3 总结 PrivateSubcmdCompute Click DimaAsInteger bAsInteger cAsIntegerDimdeltAsDoubleDimx1AsDouble x2AsDoublea Val txtA Text b Val txtB Text c Val txtC Text delt Sqr b b 4 a c 实验4 3 总结 Ifdelt 0Thenx1 b delt 2 a x2 b delt 2 a MsgBox x1 x1 x2 x2EndIfEndSub 思考 如果delt 0给出提示 怎么做 实验4 3 总结 选择结构2 Ifdelt 0Thendelt Sqr b b 4 a c x1 0 b delt 2 a x2 0 b delt 2 a MsgBox x1 x1 x2 x2ElseMsgBox 无实根 EndIf 4 3选择结构2 If条件Then语句块1 当条件为真 执行这里Else语句块2 当条件为假 执行这里EndIf 4 3选择结构 salary If条件Then语句块1 当条件为真 执行这里Else语句块2 当条件为假 执行这里EndIf 1000 1500 year 3 year 3 year 3 salary 1000 salary 1500 例1 输入一年号 判断它是否闰年 1 如果此年号能被400整除 2 如果此年号能被4整除 但不能被100整除 满足以上两条件之一 则是闰年 分析 两个标签 一个文本框 一个命令按钮 year Integer DimyearAsIntegeryear Val Text1 Text IfyearMod400 0oryearMod4 0AndyearMod1000ThenLabel2 caption year 是闰年 ElseLabel2 caption year 不是闰年 EndIf 4 3选择结构 例2 掷骰子游戏playerF玩家1的骰子数playerM玩家2的骰子数If条件语句块1Else语句块2EndIf playerM playerF playerM playerF playerM playerF MsgBox 输 了 5555 MsgBox 我又赢了 yeye Then 4 3选择结构 PrivateSublblPlay Click DimplayerMAsInteger 保存玩家1的点数DimplayerFAsInteger 保存玩家2的点数playerM Int 6 Rnd 1 利用随机数产生点数lblMQQ Caption playerMplayerF Int 6 Rnd 1 lblFQQ Caption playerFIfplayerM playerFThenMsgBox 输 了 5555 ElseMsgBox 我又赢了 yeye EndIfEndSub 4 3选择结构3分段函数 y 0If条件1Then语句块1 当条件1为真 执行ElseIf条件2Then语句块2 当条件1为假 条件2为真Else语句块3 当条件1为假 条件2为假EndIf 1 1 x 0 x 0 x 0 y 1 y 1 x 0 x 0 y 0 4 3选择结构3 If条件1Then语句块1 当条件1为真 执行ElseIf条件2Then语句块2 当条件1为假 条件2为真 执行Else语句块3 当条件1为假 条件2为假 执行EndIf 4 3选择结构4 If条件1Then语句块1 当条件1成立ElseIf条件2Then语句块2 当条件1不成里 条件2成立 ElseIf条件nThen语句块n 当前面n 1个条件不成立 条件n成立Else语句块n 1 当前面n个条件都不成立EndIf 计算分段等级 1 分析问题所用的数学公式同上 选用变量 CJ代表成绩 PrivateSubCommand1 Click CJ Val Text1 Text IfCJ 90ThenText2 Text 优 IfCJ 80ANDCJ 70ANDCJ 60ANDCJ 70THENText2 Text 及格 IfCJ 60THENText2 Text 不及格 EndSub 方法一 分别处理1 若成绩 90 显示 优 2 若80 成绩 90 显示 良 方法二 PrivateSubCommand1 Click CJ Val Text1 Text IfCJ 90ThenText2 Text 优 ElseIfCJ 80ThenText2 Text 良 ElseIfCJ 70ThenText2 Text 中 ElseIfCJ 60ThenText2 Text 及格 ElseText2 Text 不及格 EndIfEndSub 方法三 PrivateSubCommand1 Click CJ Val Text1 Text IfCJ 60ThenText2 Text 不及格 ElseIfCJ 70ThenText2 Text 及格 ElseIfCJ 80ThenText2 Text 中 ElseIfCJ 90ThenText2 Text 良 ElseText2 Text 优 EndIfEndSub 4 3选择结构 使用什么格式的if语句 4 3选择结构分段 如果x 15 则a 15 否则a 150 x 0 x 10 x 1y 2x1 x 2x 12 x 31x 3 ifx 0theny 0elseifx 1theny x 1elseifx 2theny 2 xelseifx 3theny x 1elsey 1endif 例4 分段函数 练习 在窗体上画一个名称为Command1的命令按钮 然后编写如下事件过程 PrivateSubCommand1 Click x 5 IfSgn x Then y Sgn x 2 Else y Sgn x EndIf PrintyEndSub 作业 完成第四章课后思考练习完成实验4下讲内容选择结构 2 复习赋值语句 将文本框txtSource的内容复制到txtCopy中 PrivateSubcmdRun Click txtCopy Text txtSource TextEndSub cmdRun 复习选择结构 txtNum1 txtNum2 txtResult cmdAdd 单击 计算 当 数1 或 数2 为空 则提示用户输入数据当 数1 或 数2 都不为空将计算结果显示出来 复习选择结构 PrivateSubcmdAdd Click DimaAsInteger bAsIntegerDimresultAsIntegera Val txtNum1 Text b Val txtNum2 Text result a btxtResult Text resultEndSub 复习选择结构 PrivateSubcmdAdd Click DimaAsInteger bAsIntegerDimresultAsIntegerIftxtNum1 Text AndtxtNum2 Text Thena Val txtNum1 Text b Val txtNum2 Text result a btxtResult Text resultElseMsgBox 请输入数据 EndIfEndSub 这种格式的缺点 If结构太长 复习选择结构 PrivateSubcmdAdd Click DimaAsInteger bAsIntegerDimresultAsIntegerIftxtNum1 Text OrtxtNum2 Text ThenMsgBox 请输入数据 ExitSubEndIfa Val txtNum1 Text b Val txtNum2 Text result a btxtResult Text resultEndSub 缩短If结构使用ExitSub退出当前sub过程 编程实现数字和英文单词的对应在文本框1中输入0到6之间的整数 在文本框2中显示对应的星期英文单词 DimaAsIntegera Val Text1 Text Ifa 0ThenText2 Text sunday ElseIfa 1ThenText2 Text monday ElseIfa 2ThenText2 Text tuesday ElseIfa 3ThenText2 Text wednesday ElseIfa 4ThenText2 Text thursday ElseIfa 5ThenText2 Text friday ElseIfa 6ThenText2 Text saturday EndIf 复习选择结构 4 3选择结构5 格式 SelectCase测试表达式Case表达式列表1语句块1Case表达式列表2语句块2 CaseElse 可以省略语句块n 1EndSelect功能 根据 测试表达式 的值 从多个语句块中选择符合条件的一个语句块执行 情况语句说明 1 测试表达式 可以是数值表达式或字符串表达式 通常为变量或常量 2 表达式列表 与 测试表达式 类型必须相同 3 表达式列表 为下列四种形式 普通表达式如 A 一组枚举表达式 用逗号分隔 如 2 4 6 8 表达式1To表达式2如 60To100 Is关系运算符表达式如 Is 60 4 3选择结构5 SelectCaseopt 根据运算符不同 进行运算不同Case result opt1 opt2Case result opt1 opt2Case result opt1 opt2Case result opt1 opt2EndSelect IfCJ 0ThenC CJ 10SelectCaseCCase9 10Text2 Text 优 Case8Text2 Text 良 Case7Text2 Text 中 Case6Text2 Text 及格 Case0 1 2 3 4 5Text2 Text 不及格 EndSelectEndIfEndSub IIf函数与Choose函数 一 IIf函数格式 IIf 条件 True部分的值 False部分的值 功能 当 条件 为真时 True部分的值为函数值 而当 条件 为假时 False部分的值为函数值 举例 Ifx yThenz xElsez y等价 z IIf x y x y IIf函数实现成绩转换 PrivateSubCommand4 Click CJ Val Text1 Text Text2 Text IIf CJ 90 优 IIf CJ 80 良 IIf CJ 70 中 IIf CJ 60 及格 不及格 EndSub 二 Choose函数 格式 Choose 整型表达式 选项列表 功能 根据整型表达式的值 决定返回选项列表中的某个值 当表达式的值为1时 函数值为第1项的值 当表达式的值为n时 函数值为第n项的值 举例 n 2st Choose n red green blue 等价 st green 例1 求三个数中的最大数 PrivateSubCommand1 Click DimAAsInteger BAsInteger CAsIntegerDIMMAXAsIntegerA Text1 TextB Text2 TextC Text3 TextIf A BAndA C ThenMAX AIf B AAndB C ThenMAX BIf C AAndC B ThenMAX CText4 Text MAXEndSub 方法一 分别处理如果其中的一个数大于其它两个数 则这个数是最大数 PrivateSubCommand2 Click DimAAsInteger BAsInteger CAsIntegerDimMAXAsIntegerA Text1 TextB Text2 TextC Text3 TextIfA BThenMAX AElseMAX BEndIfIfC MAXThenMAX CText4 Text MAXEndSub 方法二 1 找出前两个数中的最大数MAX 2 如果第三个数大于MAX 则第三个数是MAX PrivateSubCommand2 Click DimA B C DimMAXAsIntegerA Text1 TextB Text2 TextC Text3 TextMAX AIfB MAXThenMAX BIfC MAXThenMAX CText4 Text MAXEndSub 方法三 1 设第一个数是最大数MAX 2 如果第二个数大于MAX 则第二个数是MAX 3 如果第三个数大于MAX 则第二个数是MAX 求三个数中的最小数 作业 思考与练习4 2 DimuserAsStringDimpwdAsStringuser txtUser TextSelectCaseuserCase LiMing WangHong pwd 111 Case ZhaoDan pwd 222 EndSelect Ifpwd txtPwd TextThenMsgBox 登陆成功 EndIf txtPwd txtUser 复习 嵌套是一个控制结构内又包含另一个控制结构 选择结构的嵌套就是在一个选择结构中又包含另一个选择结构 可以由两层或多层嵌套 选择结构的嵌套 例1 当输入正确的密码时 会进入form2的欢迎界面 否则会给出提示 密码错误 请重新输入 系统登陆的简单程序 一 IfText1 Text 123456 ThenForm1 HideForm2 Showendif 演示 系统登陆的简单程序 二 IfText1 Text 123456 ThenForm1 HideForm2 ShowElseMsgBox 密码错误 请重新输入 Text1 SetFocusText1 SelStart 0Text1 SelLength Len Text1 Text EndIf 演示 系统登陆的简单程序 三 IfText2 Text zqf ThenIfText1 Text 123456 ThenForm1 Hide Form2 ShowElseMsgBox 密码错误 请重新输入 Text1 SetFocus Text1 SelStart 0Text1 SelLength Len Text1 Text EndIfElseMsgBox 该用户不存在 请重新输入 Text2 SetFocus Text2 SelStart 0Text2 SelLength Len Text2 Text EndIf 演示 例2 编程判断从键盘上输入的某个字符为哪类字符 大写字母 小写字母 数字字符或其他字符 分析 字符输入在一个文本框中 字符类别信息显示在标签上 将文本框的maxlength属性设置为1 则一次只能输入一个字符 DimaAsStringa Text1 TextSelectCaseaCase a To z Label1 Caption 它是小写字母 Case A To Z Label1 Caption 它是大写字母 Case 0 To 9 Label1 Caption 它是数字字符 CaseElseLabel1 Caption 其他字符 EndSelect 下讲主要内容 循环结构程序设计 1 4 5循环结构程序设计 循环 按条件连续地重复执行一段特定功能的程序 循环三要素 1 初始化 决定循环的初始状态 即与循环相关的变量的初始值 2 循环体 循环中反复执行的部分 3 循环的条件 决定循环结束的条件 4 5循环结构程序设计 三种循环结构 while wenddo loopfor next 4 5 1WHILE wend语句 格式 While条件循环体Wend功能 当为True时 执行内的语句 遇到Wend语句后 再次返回 继续测试是否为True 直到为False 执行Wend语句的下一条语句 While语句的流程 计算S 1 2 100 1 分析问题 方法一1 2 3 3 3 66 4 10 100 5050 先将前两个数相加 再将其后的每一个数加入之前的和中 计算S 1 2 100 1 分析问题 方法二 1 100 2 99 3 98 48 53 49 52 50 51 5050 计算S 1 2 100 1 分析问题 方法三 1 99 2 98 3 97 48 52 49 51 50 100 5050 计算S 1 2 100 采用不同的算法 其运算效率不同 实践证明 方法2 方法3更适合人们计算 但对计算机来说 方法1的算法效率更高 对于一般的数值计算不必考虑用什么速算法 请相信CPU中运算器的能力 0 1 1 1 2 3 3 3 6 100 5050 方法一 变形 0 1 1 1 2 3 3 3 6 100 5050 0 代表空盒子第1次 往盒子中存入1第2次 往盒子中存入2第3次 往盒子中存入3第4次 往盒子中存入4 结论 每一次将一个数加入 盒子中放的数用SUM表示 其初值为0第1次 往盒子中存入1SUM 1 SUM第2次 往盒子中存入2SUM 2 SUM第3次 往盒子中存入3SUM 3 SUM第4次 往盒子中存入4SUM 4 SUM 用i表示每一次加入盒子的数 初值为1公式 SUM I SUM表达式 SUM SUM I 使用两个变量 SUM表示累加和 初值为0 I表示被累加的数 初值为1 用自然语言描述算法如下 1 设sum 0I 1 2 当I100时 算法停止 注 I同时表示累加次数 初值为1 SUM 0I 1 SUM SUM II I 1 I 100 T F 输出SUM 计算S 1 2 100 PrivateSubCommand1 Click DimSUM I SUM 0I 1WhileI 100SUM SUM II I 1WendPrintSUMEndSub 循环结构流程图 SUM 0I 1 SUM SUM II I 1 I 100 T F 输出SUM 4 5 2DO loop语句 格式1 前测型或当型 DoWhile Until条件循环体 ExitDo Loop 格式2 后测型或直到型 Do循环体 ExitDo LoopWhile Until条件 功能 当循环 条件 为真 While条件 或直到指定的循环结束 条件 为真之前 Until条件 重复执行循环体 当型循环和直到型循环流程图 计算S 1 2 100 PrivateSubCommand1 Click DimSUM I SUM 0I 1DoSUM SUM II I 1LoopWhileI 100PrintSUMEndSub 循环结构流程图 SUM 0I 1 SUM SUM II I 1 I 100 T F 输出SUM 计算S 1 2 100 ForI 1To100STEP1SUM SUM INextI PrivateSubCommand1 Click DimSUMAsSingle IAsIntegerSUM 0I 1DoWhileI 100SUM SUM II I 1LoopPrintSUMEndSub 4 5 3FOR next语句 格式 For循环变量 初值To终值Step步长循环体 ExitFor Next循环变量功能 按循环变量的初值 终值和步长所确定的次数执行循环体 用于特殊情况下退出循环 For循环语句的流程 FOR循环说明 1 循环变量 是一个数值变量 2 初值 终值和步长 均是数值表达式 其值若是实数 则自动取整 0初值终值 0死循环 循环次数 步长 3 ExitFor 可选项 用于某些特殊情况下退出循环 FOR循环说明 4 循环变量在循环体内可以引用 但不应改变其值 否则将导致循环无法正常执行 如 fori 1to10step1s s iNexti循环次数为10次 fori 1to10step1i i 1NextI由于在循环体内改变了循环变量的值 导致循环无法按既定的次数进行 循环将达不到10次 2 算法流程图 循环结构流程图 3 编程 调试 运行 PrivateSubCommand1 Click DimSUM I SUM 0ForI 1To100SUM SUM INextIPrintSUMEndSub SUM 0I 1 SUM SUM II I 1 I 100 T F 输出SUM 程序举例 1 计算S 1 2 100 PrivateSubCommand3 Click DimSAsDouble IAsIntegerS 1I 1WhileI 100S S II I 1WendPrintSEndSub S 1 0I 1 S S II I 1 I 100 T F 输出S 程序举例 2 计算S 1 2 100 PrivateSubCommand4 Click DimSAsDouble DimTAsDoubleDimIAsIntegerS 0T 1ForI 1To100T T IS S TNextIPrintSEndSub S 1 0T 1 0I 1 T T IS S TI I 1 I 100 T F 输出S i 1Whilei 4print i i 1Wend 1 i 1 1 i 2 2 i 2 2 i 3 3 i 3 3 i 4 4 i 4 4 i 5 5 i 5 循环执行结束 3 在窗体上打印输出4个 4 程序功能是什么 执行结果是什么 sum 0 i 1Whilei 3sum sum ii i 1WendPrintsum i 1 4所有整数的和 1 sum 0i 1 1 sum 1i 1 1 sum 1i 2 2 sum 1i 2 2 sum 1 2i 2 2 sum 1 2i 3 3 sum 1 2i 3 3 sum 1 2 3i 3 3 sum 1 2 3i 4 4 sum 1 2 3i 4 64 练习 求100之内偶数的总和用for语句实现100 求1 2 100 练习 求100之内所有偶数的和 方法1 While Wend sum 0 i 2 i 100 sum sum i i i 2 求100之内偶数的总和 方法2 DimIAsInteger SumAsIntegerSum 0ForI 2To100Step2Sum Sum INextI 求100 DimIAsInteger SAsS ForToNext I 1 100 S S I I 1 Double 求100 DimIAsInteger SAsDoubleS 1ForI 1To100S S INextI 求1 2 100 DimIAsInteger SAsDouble SumAsDoubleS Sum ForI 1To100NextI 1 0 S S I Sum Sum S 小结 While WendFor NextDo loop 作业 1 思考与练习4选择题 填空题 2 完成实验作业7 下一讲概要 循环结构的灵活选择循环结构的应用实例 回顾 1 三个循环语句WHLIE DO FOR DoWhile Until条件循环体 ExitDo LoopDo循环体 ExitDo LoopWhile Until条件 For循环变量 初值To终值Step步长循环体 ExitFor Next循环变量 While条件循环体Wend 回顾 2 算法 累加 乘 使用两个变量 SUM表示累加和 初值为0 I表示被累加的数 初值为1 用自然语言描述算法如下 1 设sum 0I 1 2 当I100时 算法停止 DimxAsInteger yAsIntegerx 12 y 0DoWhilex 0IfxMod4 0Theny y xElsey y xEndIfx x 3Printx yLoop 阅读程序 分析程序的输出结果 123 30 6 cmdCompute txtInput txtOutput 在txtInput中输入整数单击cmdCompute将1 输入数据间所有奇数的和计算出来结果显示在txtOutput中 循环结构的应用 1 PrivateSubcmdCompute Click Dimi sum n n Val txtInput Text sum 0 i 1Whilei nsum sum ii i 2WendtxtOutput Text sumEndSub 循环结构的应用 1 单击命令按钮cmdCompute 计算1 1 1 2 1 3 1 4 直到最后一项 10 4结果显示在标签lblResult表面 cmdCompute lblResult 实例2 PrivateSubcmdCompute Click DimiAsSingleDimsumAsSinglesum 0 i 1WhileWendEndSub 1 i 0 0001 sum sum 1 i i i 1 lblResult Caption sum 循环结构的应用 2 循环语句的灵活选择 用循环结构编程 需要问几个问题 反复执行哪些操作 循环次数已知 循环变量 初值 终值 步长 循环体 能否使用循环变量 For Next循环While Wend循环不知道循环次数 宜用while wend循环知道循环次数 宜用For Next循环当循环条件很容易写出时 宜用while wend do loop循环 循环语句的灵活选择 输入5个学生成绩 计算平均分循环体 5次 输入成绩score Val InputBox 输入成绩 累加sum sum score求平均分avg sum 5 用什么循环 循环语句的灵活选择 PrivateSubForm Click DimiAsInteger scoreAsIntegerDimsumAsSingleDimavgAsSingleFori 1To5score Val InputBox 输入成绩 sum sum scoreNextiavg sum 5EndSub 循环语句的灵活选择 输入若干学生成绩 计算平均分 直到某次输入 0 累加sum sum score输入成绩score Val InputBox 输入成绩 求平均分avg sum 5 循环语句的灵活选择 PrivateSubForm Click DimiAsInteger scoreAsIntegerDimsumAsSingleDimavgAsSinglescore Val InputBox 输入成绩 Whilescore 0sum sum scorescore Val InputBox 输入成绩 Wendavg sum 5EndSub 循环语句的灵活选择 常见问题1 开机界面不需要鼠标输入用户名tab密码 常见错误1 text2是不存在的对象在属性窗口中看 名称 属性 常见错误2 属性的引用方式不对对象名 属性名 常见错误3 对象名正确属性名或方法名不正确 常见错误4 程序运行没反应事件过程是否正确单击command1代码编写在command2 Click 中输出结果的语句是否正确在text2中显示result变量值text2 text result 常见错误5 结果运行不正确 单击设置断点 F8单步执行Whilescore 0score Val InputBox 输入成绩 sum sum scorei i 1Wendavg sum i score 0 score 90 sum 90 sum 90 score 90 score 1 sum 90 1 找出100 999之间的所有 水仙花数 打印水仙花总数目 水仙花数 1 分析问题测试100 999之间的每一个数是 水仙花数 吗 一个一个测 海选 分离三位数各位上的数字如 153百位 153 100十位 153Mod100 10个位 153MOD10 水仙花数 PrivateSubCommand1 Click DimI A B C K ForI 100To999A I 100B IMod100 10C IMod10IfI A 3 B 3 C 3ThenK K 1PrintIEndIfNextIPrint 共有 K 个 EndSub 求Fibonacci数列 FibonacciSeries是这样一个数列 1 1 2 3 5 8 13 21 这个数列从第三项开始 每一项都等于前两项之和 我们来打印它的前30个数 求Fibonacci数列 F3 F1 F2 F1 F2F2 F3 打印裴波那契数列 FibonacciSeries PrivateSubCommand1 Click DimF1AsSingle F2AsSingle F3AsSingle IAsIntegerF1 1F2 1Print 第1个数为 F1Print 第2个数为 F2ForI 3To30F3 F1 F2Print 第 I 个数为 F3F1 F2F2 F3NextIEndSub 设计学生成绩管理系统 输入多名学生的计算机课成绩 至少10名以上 1 求所有学生的平均成绩 2 求最大值 最小值 3 统计各分数段人数 优 良 中 及格 不及格的人数 分析问题 1 输入数据多个成绩值2 处理平均值 最大和最小 统计各等级人数3 输出输出以上结果 批量数据处理方法 1 多个数据共享同一内存单元使用简单变量实现 2000 2001 x 90 80 70 60 50 输入1个成绩 DIMX x VAL InputBox 请输入成绩 输入成绩 输入5个成绩 DIMX I FORI 1TO5x VAL InputBox 请输入成绩 输入成绩 NEXTI 89 批量数据处理方法 2 多个数据存贮于内存一个连续区域 使用数组实现 数组 4个单元 通过对数组A的定义和赋值 或输入 来实现在内存中存贮 DIMI A 1to5 assingleFORI 1TO5A I VAL InputBox 请输入成绩 输入成绩 NEXTIPrint 第5个数为 A 5 设计模块 使用变量 只能输入一个成绩 处理一个成绩 即 求和 求最大 小 统计各等级人数 程序大结构如下 处理10个成绩FORI 1TO10输入一个成绩求和求最大 最小 统计各等级人数NEXTI 使用变量 成绩 X和 SUM最大 最小 MAXMIN各等级人数 ABCDE循环变量 I 设计界面 PrivateSubCommand1 Click Dima b c d e i sum x max min Fori 1To10 x Val InputBox 请输入成绩 输入成绩 Print 成绩为 x 输入成绩 为方便输入输出和增强通用性 PrivateSubCommand1 Click Dima b c d e i sum x max min Dims n n Val InputBox 请输入人数 输入人数 Fori 1Tons 请输入第 x PrivateSubCommand1 Click Dima b c d e i Dimsum x max min s n n Val InputBox 请输入人数 输入人数 Fori 1Tons 请输入第 xsum sum x 求平均成绩 PrivateSubCommand1 Click Dima b c d e i Dimsum x max min s n n Val InputBox 请输入人数 输入人数 min 100 max 0Fori 1Tons 请输入第 xsum sum xifx maxthenmax xifx minthenmin x 求最大最小 PrivateSubCommand1 Click 定义各变量 输入人数Fori 1Ton 输入显示成绩 求和 求最大最小值Ifx 90Thena a 1ElseIfx 80Thenb b 1ElseIfx 70Thenc c 1ElseIfx 60Thend d 1Elsee e 1EndIfNexti 统计各等级人数 PrivateSubCommand1 Click 定义各变量 输入人数Fori 1Ton 输入显示成绩 求和 求最大最小值 统计各等级人数NextIText2 Text a Text3 Text b Text4 Text cText5 Text d Text6 Text e 显示等级人数Text7 Text sum n 显示平均成绩Text8 Text MinText1 Text Max 显示最大最小值EndSub 显示处理结果 对数据进行有效性检查 PrivateSubCommand1 Click 定义各变量 输入人数For
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年5月山东济南市济阳国资投资控股集团有限公司招聘4人考试历年参考题附答案详解
- 彭州安全生产法制培训课件
- 2025浙江嘉兴市平湖市市属国有企业招聘拟录用人员(二)笔试参考题库附带答案详解
- 2025江苏海晟控股集团有限公司下属子公司人员招聘考试历年参考题附答案详解
- 2025广西柳州市柳江区投资集团有限公司招聘27人考试历年参考题附答案详解
- 2025广西北部湾国际港务集团有限公司秋季招聘501人笔试参考题库附带答案详解
- 工信局安全生产培训课件
- 2025年河北唐山市芦台经济开发区公开招聘区属国有企业工作人员考试历年参考题附答案详解
- 2025年度黄河勘测规划设计研究院有限公司公开招聘高校毕业生90人笔试参考题库附带答案详解
- 2025年大学铁路警务专业题库- 铁路警务的专业学习
- 2025浙江嘉兴市海宁经济开发区、海昌街道网格员招聘1人考试参考题库及答案解析
- 动物防疫法解读
- (正式版)DB32∕T 5160-2025 《传媒行业数据分类分级指南》
- 辽沈战役精简课件
- 河道工程基础井点降水方案
- 2025重庆忠县机关事业单位临聘4人备考考试题库附答案解析
- 国庆节安全培训会议内容课件
- 2025年机械伤害事故救援与现场急救培训试题及答案
- 2025年职业技能医疗救护员理论知识-理论知识参考题库含答案解析(5卷)
- 零碳工厂培训课件
- 2025年高考全国一卷数学真题(原卷版)
评论
0/150
提交评论