2

Size: px
Start display at page:

Download "2"

Transcription

1 Visual Basic 程序设计实验与实训指导 1

2 2

3 3

4 淮阴工学院 Visual Basic 程序设计实验与实训指导 信息技术教学部 2010 年 7 月 1 日 4

5 前 言 VB 程序设计语言具有功能强大 易学易用等特点, 因此大多数高校把 VB 作为非计算机专业学生首选的计算机程序设计语言课程 通过该课程的学习, 不仅要求学生掌握计算机程序设计语言的基本知识 编程技术和基本算法, 更重要的是要求学生掌握程序设计的思想和方法, 具备利用计算机求解实际问题的基本能力, 能灵活应用高级语言进行程序设计 本书共设置了 18 个实验, 主要包括 VB 集成开发环境介绍 程序界面设计 程序流程控制结构, 数组 过程 文件 图形处理与数据库编程几大部分 每个实验分为五个部分 : 实验目的 实验内容 实验记录 实训与思考 实验小结 实验目的部分指明了每个实验的实验目的和意义 ; 实验内容部分给出了若干个相对独立且功能较为简单的实验题目 ; 实验记录部分要求学生能根据提供的代码和分析, 对实验进行验证性完成 ; 实训与思考部分给出了若干个题目难度较大, 功能较复杂的具有一定综合性的题目 实验小结部分要求学生填写包括实验收获 实验中未解决问题和教学建议等内容 书中的每个实验和案例都是编者精心设计和选择的, 所构思的对实验内容的分析和思考, 能引导学生从不同的角度去分析和理解实验内容, 从而达到培养学生编程能力和提高学生综合素质的目的 本书将实验指导 实验报告和实训提高三部分内容融为一体, 有机结合, 层次明显, 实验内容在安排上体现了由浅入深 逐步提高的学习过程 本书既适合学生自学使用, 也可以作为教师课堂的重要参考书 由于编者水平有限, 加之时间仓促, 书中难免有一些错误或不当之处, 恳请广大读者批评指正 编者 5

6 目 录 实验一 VB 集成开发环境与应用程序创建初步...1 实验二窗体及常用控件的使用 ( 一 )...5 实验三窗体及常用控件的使用 ( 二 )...13 实验四菜单及多窗体程序设计 实验五程序设计基础...24 实验六选择结构程序设计 实验七循环结构程序设计 实验八静态数组...45 实验九动态数组...55 实验十数组的综合应用...65 实验十一 Sub 过程...81 实验十二 Function 过程...87 实验十三递归调用...93 实验十四过程调用综合应用 实验十五文件基本操作 实验十六文件系统管理 实验十七图形处理 实验十八数据库编程

7 实验一 VB 集成开发环境与应用程序创建初步 实验地点 : 实验日期 : 年 月 日成绩 : 一 实验目的 1. 熟悉 VB6.0 的集成开发环境 2. 掌握工程建立 保存 装入 运行与可执行文件 (*.EXE) 的生成 3. 学习向窗体中放置控件的方法 4. 掌握在属性窗口设置控件属性的方法 5. 学会建立简单的 VB 应用程序的方法 二 实验内容 1. 浏览 VB6.0 的集成开发环境 2. 设计用户登录界面 ( 其中包括用户名和密码两部分以及确定 取消按钮 ) 3. 编制四则运算器简单程序, 实现两个数的加减乘除运算 4. 保存第 3 题设计的窗体与工程, 将窗体命名为 frm 运算器.frm, 工程命名为 运 算器.vbp, 并编译成 运算器.EXE 放在桌面上 5. 实训练习与思考 三 实验记录 1. 写出实验 1 中 VB6.0 的集成开发环境中主要窗口 2. 写出实验 2 中各控件的 name 属性和 caption 属性 程序运行界面如图 1-1 所示 图 1-1 Name Caption 3. 写出实验 3 四则运算器中所有程序 程序运行界面如图 1-2 所示 1

8 提示 : 使用 Val() 函数将字符文本转换成数值 图 1-2 Private Sub Cmd 加 _Click() Private Sub Cmd 减 _Click() Private Sub Cmd 乘 _Click() Private Sub Cmd 除 _Click() Private Sub Cmd 清空 _Click() 4. 写出实验 4 保存工程的步骤 2

9 5. 实训练习与思考 (1) 建立如图 1-3 所示的应用程序界面, 编程实现两个文本框中输入的内容互换 要求单击 交换 按钮, 两个文本框中输入的内容进行互换, 单击 清除 按钮, 清空两个文本框中的内容, 单击 退出 按钮, 结束工程 窗体保存为 exchange.frm, 工程保存为 exchange.vbp 提示 : 采用中间变量法实现 : 若 t 为中间变 量,a,b 变量内容互换, 使用三条语句 :t=a: 图 1-3 a=b:b=t 或 t=b:b=a:a=t (2) 在名称为 Form1 的窗体上画一个标签, 名称为 Label1, 将其 Borderstyle 属性设置为 1, 编写适当的事件过程, 程序运行后, 单击窗体, 可使标签移到窗体的右上角 ( 只允许在程序中修改适当属性来实现 ) 窗体保存为 move.frm, 工程保存为 move.vbp 程序运行界面如图 1-4 所示 提示 : 标签靠右上角, 其 Top 属性值为 0,Left 属性值为窗体的 Width 属性值与标签的 Width 属性值之差 图 1-4 (3) 建立如图 1-5 所示的应用程序界面, 编程实现已知圆半径, 求圆周长和圆周长的值 图 1-5 3

10 四 实训部分关键代码 ( 可另附页 ) 五 实验小结 ( 包括实验收获 未解决问题和教学建议等 ) 4

11 实验二窗体及常用控件的使用 ( 一 ) 实验地点 : 实验日期 : 年 月 日成绩 : 一 实验目的 1. 掌握标签 文本框控件的常用属性和事件 2. 掌握命令按钮控件的常用属性和事件 3. 掌握滚动条控件的常用属性和事件 4. 掌握图片框 图像框控件的常用属性和方法 5. 掌握形状控件的属性和方法 6. 掌握计时器的属性与事件 二 实验内容 1. 用标签控件实现超链接效果的文本 2. 在窗体上画三个文本框 text1 text2 text3, 再画两个命令按钮, 标题为复制 删除, 请设置适当的控件属性并编写适当的事件过程, 使得在运行时, 如果在 text1 中每输入一个 字符, 则显示一个 *, 同时在 text2 中显示输入的内容, 在 text2 中用鼠标拖拽的方法选择 几个字符, 单击 复制 按钮, 则选中的字符被复制到 text3 中, 若单击 删除 按钮, 则 被选择字符从 text2 中被删除 3. 编写程序, 要求图片框和图像框中的图片可实现互换和删除 4. 用滚动条设计如下 调色板 ( 颜色用 RGB() 函数得到 ),3 个滚动条取值范围 为 0~255, 程序运行后, 单击滚动条两端的箭头时, 滚动框移动的增量值为 2, 单击滚动框 前面或后面部位时, 滚动框移动的增量值为 10, 滚动框的初始位置为 在名称为 Form1 的窗体上画一个名称为 shape1 的形状控件, 位置大约在窗体的中 间, 在属性窗口将其设置为红色的实心圆, 用计时器控件 Timer1 实现 shape1 控件在屏幕上 每隔 0.5 秒钟向右移动 100, 当 shape1 控件移出屏幕后, 会从另一边出现 6. 实训练习与思考 三 实验记录 1. 完善实验题 1 的程序代码 提示 : 本实验使用 MouseMove 事件实现鼠标在标签上, 标签文本为红色, 并且文本带下 划线 ; 鼠标移离标签时, 标签文本为蓝色 Private Sub Label1_MouseMove(Button As Integer,Shift As Integer, X As Single, Y As Single) 5

12 Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) 2. 完善实验题 2 的程序代码 提示 : 文本框的 Passwordchar 属性如果设置为某个字符 ( 例如 *), 则用户输入文本框的内容将被替换为设定的字符, 但系统仍然可以正确地获取用户实际输入的字符 程序运行界面如图 2-1 所示 Private Private Sub Text1_Change() Private Sub Command1_Click() 图 2-1 Private Sub Command2_Click() 3. 完善实验题 3 的程序代码 提示 : 在名称为 form1 的窗体中画一个图片框 一个图像框, 名称分别为 P1 P2, 高度均为 1700, 在属性窗口通过 Picture 属性为图片框和图像框中各添加一幅图片, 再画两个命令按钮, 名称为 C1 C2, 标题为 转换 删除 程序运行时用 Loadpicture() 函数装载图片和删除图片, 假设两个图片文件名分别为 Phone.ico face01.ico 程序运行界面如图 2-2 所示 图 2-2 6

13 Private Sub C1_Click() Private Sub C2_Click() 4. 完善实验题 4 的程序代码 提示 : 三个滚动条名称分别为 hsbred hsbgreen hsbblue, 显示颜色的控件为名称为 lblcolor, Max 属性是滚动块处于最右边时返回的值即最大值 ; Min 属性是滚动块处于最左边返回的值即最小值 ; Value 属性的值表示当期滚动条内滑块当前所处位置的值 ; 当用户单击滚动条左右边上的箭头时, 滚动条控件 Value 值的改变量就是 SmallChange ; 单击滚动条中滚动框前面或后面的部位时, 引发 Value 值按 LargeChange 设定的数值进行改变 与滚动条控件相关的事件主要是 Scroll 与 Change, 当在滚动条内拖动滚动框时会触发 Scroll 事件 ( 但要注意, 单击滚动箭头或滚动条时不发生 Scroll 事件 ), 滚动框发生位置改变后则会触发 Change 事件 Scroll 事件用来跟踪滚动条中的动态变化,Change 事件则用来得到滚动条最后的值 程序运行界面如图 2-3 所示 图 2-3 Private Sub hsbred_change() 7

14 Private Sub hsbred_scroll() Private Sub hsbgreen_change() Private Sub hsbgreen_scroll() Private Sub hsbblue_change() Private Sub hsbblue_scroll() 5. 完善实验题 5 的程序代码 提示 : 计时器的 Interval 属性用来设置每次触发计时器 Timer 事件的时间间隔, 单位为毫秒, 因此, 该计时器的 Interval 属性设置为 500 程序运行界面如图 2-4 所示 Private Sub Timer1_Timer() If Shape1.Left > Form1.Width Then 图 2-4 End If 8

15 6 实训练习与思考 (1) 在名称为 Form1 的窗体上画一个名称为 L1 的标签, 标题为 请确认 ; 再画两个命令按钮, 名称为 C1 C2, 标题分别为 是 否, 高均为 300, 宽均为 800 如图 2-5 所示, 请在属性窗口设置适当属性满足以下条件 : 窗体标题为 确认, 窗体标题栏上不显示最大化和最小化按钮 ; 在任何情况下, 按回车键都相当于单击 是 按钮, 按 ESC 键都相当于单击 否 按钮 窗体文件名保存为 sy21.frm, 工程保存为 sy21.vbp 程序运行界面如图 2-5 所示 提示 : 最大化按钮 Maxbutton 和最小化按钮 Minbutton 属性分别设置 False 时, 标题栏上不显示 命令按钮的 Default 属性设置为 True, 当程序运行时, 无其它按钮获得焦点, 按回车相当于单击本按钮 命令按钮的 Cancel 属性设置为 True, 按 Esc 键相当于单击本按钮 图 2-5 (2) 在名称为 Form1 的窗体上画一个标签 ( 名称为 Label1, 标题为 输入信息 ) 一个文本框( 名称为 Text1,Text 属性为空 白 ) 和一个命令按钮 ( 名 图 2-6 称为 command1, 标题为 显示 ), 如图 2-6 所示, 然后编写命令按钮的 Click 事件过程, 程序运行后, 在文本框中输入 计算机等级考试, 然后单击命令按钮, 则标签和文本框消失, 并在窗体中显示文本框中的内容 窗体保存为 sy22.frm, 工程保存为 sy22.vbp 程序运行界面如图 2-6 所示 9

16 提示 : 标签和文本框的 Visible 属性设置为 False, 则不可见 ; 文本框中内容直接用 Print 语句即可输出到窗体上显示 (3) 在名称为 Form1 的窗体上画一个文本框, 名称为 Text1, 其宽度为 1000; 再画一个滚动条, 名称为 HS1, 其刻度值的范围为 请编写滚动条 Change 事件过程, 程序运行后, 如果移动滚动条, 则可按滚动条的刻度值改变文本框的宽度 窗体保存为 sy23.frm, 工程保存为 sy23.vbp 提示 : 文本框的宽度值等于滚动条的当前刻度值 Value (4) 编写程序, 实现按秒计时, 要求具有 开始计时 和 停止计时 功能 比如, 执 行开始计时功能后, 经过两分钟, 用户执行停止计时功能时, 屏幕显示 120s 窗体保存为 sy24.frm, 工程保存为 sy24.vbp 程序运行界面如图 2-7 所示 提示 : 在窗体上放置两个 Label 控件, 两个命令按钮和一个 Timer 控件, 如图 2-7 所示 计时器的 Enabled 属性初始值为 False,Interval 属性设置为 1000 开始计时 按钮 Click 事件过程中设置计时器的 Enabled 属性值为 True, 并将变量 T 清零, 而 停止计时 按钮 Click 事件过程中设置计时器的 Enabled 属性值为 False,Timer 控件 Timer 事件过程中 T=T+1:label1.Caption=Time:label2. Caption=T & "s" 图

17 四 实训部分关键代码 ( 可另附页 ) 11

18 五 实验小结 ( 包括实验收获 未解决问题和教学建议等 ) 12

19 实验三窗体及常用控件的使用 ( 二 ) 实验地点 : 实验日期 : 年 月 日成绩 : 一 实验目的 6. 掌握列表框的常用属性 方法与事件 7. 掌握组合框控件的常用属性 方法与事件 8. 掌握单选钮的常用属性 方法与事件 9. 掌握复选框控件的常用属性 方法与事件 10. 理解框架控件的作用 二 实验内容 6. 设计两个列表框, 双击任一列表项可以使其转移到另一列表框中 7. 分别设计三种不同样式的组合框 8. 应用选项按钮 复选框及框架控件的程序设计 9. 应用选项按钮 列表框 文本框的程序设计 三 实验记录 1. 完善实验题 1 列表框操作的程序代码 提示 : 在属性窗口通过 List 属性添加列表项内容, 在程序代码中通过 AddItem 方法添加列 表项,RemoveItem 方法删除列表项 Private Sub List1_DblClick() Private Sub List2_DblClick() 图 写出实验 2 组合框三种不同样式的符号常量 数值常量与使用场合 符号常量数值常量使用场合 13

20 3. 完善实验 3 的程序代码 提示 : 字体单选钮名称分别为 opt 宋体 opt 楷体 opt 黑体 ; 字号单选钮名称分别为 opt12 号 opt14 号 opt16 号 ; 复选框名称分别为 chk 加粗 chk 倾斜 chk 下划线 chk 正常 ; 字体预览标签名称为 lbl 预览 Private Sub opt 宋体 _Click() Private Sub opt 楷体 _Click() Private Sub opt 黑体 _Click() Private Sub opt12_click() 图 3-2 Private Sub opt14_click() Private Sub opt16_click() Private Sub chk 加粗 _Click() If chk 加粗.Value=0 And chk 倾斜.Value=0 And chk 下划线.Value=0 Then End If 14

21 Private Sub chk 倾斜 _Click() If chk 加粗.Value=0 And chk 倾斜.Value=0 And chk 下划线.Value=0 Then End If Private Sub chk 下划线 _Click() If chk 加粗.Value=0 And chk 倾斜.Value=0 And chk 下划线.Value=0 Then End If Private Sub chk 正常 _Click() If chk 正常.Value=1 Then End If 4. 完善实验题 4 的程序代码 提示 : 如图 3-3 所示, 利用属性窗口向列表框中添加四个项目 :Visual Basic,Turbo C, C++,Java, 当选择列表框中的一项和单选按钮 Option1, 然后单击 确定 命令按钮, 则文本框中显示 XXX 笔试 ; 当选择列表框中的一项和单选按钮 Option2, 则文本框中显示 XXX 上机 其中 XXX 是在列表框中所选择的项目 图

22 Private Sub Command1_Click() If Option1.Value Then Else End If 5. 实训练习与思考 (1) 在名称为 Form1 的窗体上画一个名称为 Label1 标题为 添加项目 : 的标签 ; 画一个名称为 Text1 的文本框, 没有初始内容 ; 画一个名称为 Combo1 的下拉式组合框, 并通过属性窗口输入若干项 ( 不少于三个, 内容任意 ); 再画两个命令按钮, 名称分别为 Command1 Command2, 标题分别为 添加 统计, 如图 3-4 所示 在运行时, 向 Text1 中添加内容, 单击 添加 按钮, 则 Text1 中的内容作为一个列表项被添 加到组合框的列表中, 单击 统计 按钮, 则在窗 体上显示组合框中列表项的个数 窗体保存为 图 3-4 sjt1.frm, 工程保存为 sjt1.vbp 提示 : 采用 Additem 方法向组合框中添加选项,Listcount 属性统计组合框中项目的个数 (2) 设计如图 3-5 所示的窗体 要求通过字体 字形 颜色 底纹的设置, 实现标签中 Visual Basic 欢迎您! 文字格式的改变 图

23 (3) 在名称为 Form1 的窗体上画一个名称为 List1 列表框, 通过属性窗口输入四个列表项 : 数学 物理 化学 语文, 如图 3-6 所示 请编写适当的事件过程使得在装入窗体时, 把最后一个列表项自动改为 英语 ; 单击窗体时, 则自动删除最后一项 窗体保存为 sjt2.frm, 工程保存为 sjt2.vbp 提示 : 装入窗体时触发 Load 事件, 单击窗体, 触 图 3-6 发 Click 事件 列表框最后一个列表项下标为 Listcount-1, 相应事件过程中输入 List1.List(List1.ListCount - 1) = " 英语 " ; List1.RemoveItem List1.ListCount 1 即可 四 实训部分关键代码 ( 可另附页 ) 17

24 五 实验小结 ( 包括实验收获 未解决问题和教学建议等 ) 18

25 实验四 菜单及多窗体程序设计 实验地点 : 实验日期 : 年 月 日成绩 : 一 实验目的 1. 掌握菜单编辑器的使用方法 2. 掌握下拉式菜单和弹出式菜单的设计方法 3. 掌握多窗体程序的设计方法 二 实验内容 1. 建立控件菜单, 选择 显示按钮 和 隐藏按钮 菜单项对按钮进行显示或隐藏操 作 2. 建立菜单来控制文本框的字体 字形和大小 3. 将字形菜单用弹出式菜单实现 4. 添加一登录窗体并作为启动窗体 5. 实训练习与思考 三 实验记录 1. 建立如图 4-1 所示的控件菜单, 选择 显示按钮 和 隐藏按钮 菜单项对按钮进 行显示或隐藏操作 提示 : 在窗体添加一个命令按钮 command1, 单击 工具 菜单的 菜单编辑器 命令, 打开 菜单编辑器 窗 5 口, 如图 4-2 所示 设置菜单项属性如下 : 标题 (Caption) 名称 (Name) 说明 控件 kj 主菜单项... 显示按钮 show 子菜单项 1... 隐藏按钮 hide 子菜单项 2 图 4-1 图 4-2 Private Sub show_click() Command1.Visible = True Private Sub hide_click() Command1.Visible = 19

26 2. 建立如图 4-3 所示的菜单来控制文本框的字体 字行和大小 提示 : 在 VB 设计状态, 打开 菜单编辑器 窗口, 设置菜单项属性如下 : 标题 (Caption) 名称 (Name) 说明 字体 (&f) font 菜单访问键为 Alt+f... 宋体 st 快捷键 Ctrl+S... 黑体 ht 快捷键 Ctrl+H...- f 分割符 退出 exit 快捷键 Ctrl+E 字形 (&t) zx 菜单访问键为 Alt+t... 加粗 bold 快捷键 Ctrl+B... 斜体 italic 快捷键 Ctrl+I 大小 size 菜单访问键为 Alt+s...10 S1 快捷键 Ctrl+O 20 S2 快捷键 Ctrl+T 30 S3 快捷键 Ctrl+L Private Sub st_click() Text1.Font.Name = " 宋体 " Private Sub ht_click() Text1.FontName = Private Sub exit_click() Private Sub bold_click() Text1.Font.bold = True Private Sub italic_click() Text1.FontItalic = True 图 4-3 注意字体属性的两种语法格式 20

27 Private Sub s1_click() Text1.Font.size = 10 Private Sub s2_click() Text1.Font.size = 20 Private Sub s3_click() Text1.FontSize = 将实验 2 的字形菜单用弹出式菜单实现 提示 : 弹出式菜单与上述下拉式菜单类似, 但它在菜单栏上不可见, 所以在菜单编辑器中将主菜单设为不可见 如图 4-4 所示 再通过窗体的 MouseUp 或 Mousedown 事件, 使用窗体的 PopupMenu 方法将菜单弹出 将可见复选框 前的勾去掉 图 4-4 Private Sub Form_Mouseup(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then Form1.PopupMenu zx Button = 2 表示鼠标右键按下 4. 在实验 3 的工程中添加一登录窗体并作为启动窗体 设计如图 4-5 所示的程序界面, 并完善下面的程序代码 提示 : 单击 工程 菜单的 添加窗体 命令, 添加 Form2 窗体 单击 工程 菜单的 工程 1 属性 命令, 在启动对象下拉列框中选择 Form2 21

28 Private Sub Command1_Click() Form2.Hide 图 实训练习与思考 (1) VB 菜单的标题和名称是否可以没有? 菜单的访问键和快捷键如何设置? 在顶层菜单可以加快捷键吗? 如何增加一分割线菜单项? (2) 将实验 2 中大小菜单用弹出式菜单实现 (3) 在实验 4 的 form1 中添加一返回按钮, 并返回到 form2 (4) 如图 4-6 所示, 在窗体 Form1 上画一个 Text1 文本框, 再建立一个名为 Font 的弹出式菜单, 含三个菜单项, 标题分别为 加粗 斜体 和 下划线, 名称分别为 f1,f2 和 f3 当鼠标右击窗体时, 弹出该菜单, 选中菜单项后设置文本框的格式 窗体保存为 pmenu.frm, 工程保存为 pmenu.vbp 图 4-6 分析 : 先使用菜单编辑器设计一个下拉式菜单, 编写三个菜单项的 Click 事件, 再将 Font 菜单设为不可见, 再编写窗体的 MouseUp 或 Mousedown 事件, 弹出 Font 菜单 (5) 如图 4-7 所示, 设计 Form1 和 Form2 两个窗体, 其中 Form1 上有 Image1 和 Timer1 两个控件和操作菜单 要求当单击窗体 2 菜单项时, 隐藏 Form1, 显示 Form2; 当单击动画菜单项时,Image1 中的图像从左向右移动 ; 单击退出菜单项时, 结束工程 窗体分别保存为 m1.frm 和 m2.frm, 工程保存为 mform.vbp 22

29 图 4-7 分析 :Image1 中的图像从左向右移动, 即 Image1 距离 Form1 左边越来越大, 也就是在 Timer1 的 Timer 事件中 Image1.Left 属性值越来越大 四 实训部分关键代码 ( 可另附页 ) 五 实验小结 ( 包括实验收获 未解决问题和教学建议等 ) 23

30 实验五程序设计基础 实验地点 : 实验日期 : 年 月 日成绩 : 一 实验目的 1. 理解常量与变量的作用, 掌握各种常量的表示方法 2. 掌握各种类型常量与变量定义, 理解变量作用域的意义 3. 了解各种数值型数据类型的表示范围 4. 掌握各种运算符及其运算优先级 5. 掌握常用内部函数的使用 6. 掌握各种表达式的表示方法 7. 掌握 Print 方法及相关函数的使用 8. 理解 InputBox 函数中参数的含义 9. 理解 MsgBox 函数中参数的含义 二 实验内容 1. 写出字符串 布尔 日期常量 2. 建立含有一个命令按钮的窗体, 在命令按钮单击事件中输入下列程序代码 单击命 令按钮, 运行程序, 分析产生显示结果的原因 Private Sub Command1_Click() Dim x1 As Double Dim x2 As Single Dim x3 As Currency x1 = x2 = x3 = Print "x1="; x1 Print "x2="; x2 Print "x3="; x3 3. 在命令按钮单击事件中定义整型和字节型两种类型的变量, 分别赋予一个数值常量, 要求在大小两端刚刚超出数据范围, 使得运行出现溢出结果 含义 4. 按以下步骤完成工程, 执行程序后, 分析并解释程序运行结果, 理解变量作用域的 (1) 添加标准模块, 在标准模块中定义一个 public 整型变量 pubint 输入如下子程序, 设置工程启动对象为 Sub Main Sub Main Form1.Show Form2.Show (2) 在 Form1 的基础上再添加一个窗体 Form2( 执行 工程 菜单中 添加窗体 菜 单项 ), 在每个窗体上放置两个命令按钮 (command1,command2) (3) 在每个窗体的通用部分定义一个模块级整型变量 frmint (4) 在每个窗体单击事件中, 输入如下程序 : 24

31 Dim i As Integer Static si As Integer i = i + 1 si = si + 1 frmint = frmint + 1 pubint = pubint + 1 Me.Cls Me.Print "i="; i Me.Print "si="; si Me.Print "frmint="; frmint (5) 运行程序, 记录结果 5. 选择合适 x 作实参, 在立即窗口验证表中函数的功能 6. 设计一个表达式得到 1-13 之间的随机整数并验证 7. 写出表达式 5 mod 24 / 4 \ 2 运行过程和结果, 比较运算符 / \ 与 mod 不同优先级 8. 设计判断闰年 ( 设变量为 y) 的表达式 ( 提示 : 闰年条件 : 年份是 400 的倍数或者 年份是 4 的倍数但不是 100 的倍数 ) 9. 选择合适的实参, 在立即窗口中验证表中函数的功能 10. 先思考写出下列语句的结果, 再与实验核对 Print "X=";12, "Y=";3 Print "X=";12;Tab(10); "Y=";34 Print "X=";12;Spc(10); "Y="; 请设置 InputBox 函数的参数显示如图 5-1 所示的输入框 12. 请设置 MsgBox 函数的参数显示如图 5-2 所示的消息框, 并写出可能返回值 13. 实训练习与思考 三 实验记录 1. 写出实验 1 中字符串 布尔 日期常量 字符串 : 布 日 尔 : 期 : 2. 写出实验 2 中产生显示结果的原因 运行结果原因 3. 写出实验 3 中产生出错的四个数据 25

32 整型 与 字节型 与 4. 观察实验 4 重复两次单击每个窗体的执行结果, 叙述每个变量的各自作用域 变量 作用域 标准模块中 pubint Form1 中 frmint Form2 中 frmint i 命令按钮单击事件中 si 命令按钮单击事件中 5. 选择实验 5 中最能说明功能的参数, 填写下面表的内容 函数实参结果函数实参结果 Int(x) CInt(x) Fix(x) Sin(x) Hex$(x) Tan(x) Oct$(x) Abs(x) Asc(x$) Sgn(x) Chr$(x) Sqr(x) Str$(x) Exp(x) Val(x$) Now( ) CStr$(x) Rnd( ) 6. 写出实验 6 中的表达式和 5 次执行结果 26

33 表达式 执行结果 7. 写出实验 7 中表达式执行过程的变化过程 表达式变化过程 所运行的运算符 5 mod 24 / 4 \ 2 最后结果 8. 写出实验 8 中表达式和三次执行结果 判断闰年 ( 设变量为 y) 的表达式 : 年份 y 表达式值 9. 选择实验 9 中最能说明功能的参数, 填写下面表的内容 函数 函数表达式 结果 Ltrim(x$) Trim(x$) Rtrim(x$) Left$(x$,n) Mid$(x$,p[,n]) Len(x$) String(n,x$) InStr(x1$,x2$) Ucase$(x$) Space(n) 10. 写出实验 10 语句的输出结果 27

34 11. 写出实验 11 中 InputBox 函数的参数 图 5-1 X=InputBox( ) 12. 写出实验 12 中 MsgBox 函数的参数及可能的返回值 图 5-2 MsgBox ( ) 如果单击 重试 按钮, 它的符号常量为 :, 返回值量为 : 如果单击 重试 按钮, 它的符号常量为 :, 返回值量为 : 13. 实训练习与思考 (1) 求表达式 2*3^2+2*8/4+3^2 的值 (2) 在文本框 text1 中输入一个正实数赋给变量 x, 对 x 的第 3 位小数四舍五入后的 结果在文本框 text2 中输出 (3) 在窗体上输出 sin30 的值 28

35 (4) 求表达式 Int (8*Sqr(48)*10^(-2)*10+0.5)/10 的值 (5) 求表达式 Val(".123E2CD") 的值 (6) 求表达式 Str(Len("123"))+Str(77.7) 的值 (7) 求表达式 (-1)*Sgn(-100+Int(Rnd*100)) 的值 (8) 在文本框 text1 和 text2 中输入数值分别赋给变量 x1 和 x2, 在窗体上输出表达 式 X ln10+sin(x 2 +2π)/Cos(57 0 ) 的值 (9) 求表达式 Len(Str(Val("123.4"))) 的值 (10) 设变量 A=" ", 求表达式 Val(Left(A,4)+Mid(A,4,2)) 的值 (11) 求函数 InStr("VB 程序设计教程 "," 程序 ") 的值 (12) 求函数 UCase(MID("visual basic",8,8)) 的值 (13) 求表达式 Mod 6.99 的值 (14) 求表达式 "12"+"34" 的值, 表达式 "12" & "34" 的值 (15) 求表达式 12 & 34 的值 表达式 的值 (16) 从键盘上输入一个两位正整数, 赋给变量 N, 将 N 的个位数与十位数对换后赋 给变量 M, 在窗体上输出 M 的值 (17) 求表达式 Int(-17.8)+Sgn(17.8) 的值, 表达式 Int(-17.8)+Abs(17.8) 的值, 表达式 Left("how are you",3) 的值, 表达式 Right("Beijing",4) 的值, 表达式 Abs(-5)+Len("ABCDE") 的值 (18) 在文本框中输入字符串 " ", 赋给变量 S, 执行语句 Mid(s, 2, 3) = "ABCD ", 在窗体上输出 S 的值 (19) 设 A=7,B=3,C=4, 分别求下列表达式的值 A+3*C A/2*3/2 A Mod 3+B^3/C\5 29

36 (20) 写出下列函数的值 Int( ) Fix( ) Sgn(7*3+2) Left("hello",2) Str( ) Sqr(Sqr(64)) Int(Abs(99-100))/2 Lcase("Hello") Val("16 Year") (21) 设 a=2,b=3,c=4,d=5, 求下列表达式的值 : a>b AND c<=d OR 2*a>c 3>2*b OR a=c AND b<>c OR c>d NOT a<c OR 4*c=b^2 AND b<>a+c (22) 写出下面 Format 函数的结果 : Format(5459.4, "# #,# # 0.00") Format(334.9,"# # # #") Format(0.6725,"0.00") Format(0.6725,"#.00") Format("HELLO","<") 四 实训部分关键代码 ( 可另附页 ) 30

37 五 实验小结 ( 包括实验收获 未解决问题和教学建议等 ) 31

38 实验六 选择结构程序设计 实验地点 : 实验日期 : 年 月 日成绩 : 一 实验目的 1. 掌握 IF 语句的使用方法 2. 掌握 SELECT 语句的使用方法 3. 掌握选择结构 ( 单分支 双分支和多分支结构 ) 的程序设计方法 二 实验内容 1. 输入两个数, 找出其中较大的数并输出 2. 在实验 1 的基础上, 通过 InputBox 输入第三个数, 找出其中最大的数, 并输出 3. 在文本框中每输入一个字符则判断 : 若是小写字母, 在 Label1 中显示其大写字母 ; 若是大写字母, 在 Label1 中显示其小写字母 ; 若是其他字符, 直接在 Label1 中显 示, 在 Label2 中显示输入字母总数 4. 编写程序, 将学生的百分制成绩转换为学分制成绩 5. 编写一个简单计算器程序 6. 实训练习与思考 三 实验记录 1. 输入两个数, 找出其中较大的数并输出 设计如图 6-1 所示的程序界面, 并完善下 面的程序代码 算法提示 : 如果第一个数大于第一个数, 那么两个数的最大值 (max) 为第一个数, 否则为第二个数, 所以该程序可以通过 If 的双分支结构实现 Private Sub Command1_Click() Dim a As Integer, b As Integer,max As Integer a = Text1 b = Text2 If Then max = a Else max = b End If Text3 = Str(max) 图 6-1 Private Sub Command2_Click() 32

39 Text1= Text2= Text3= Private Sub Command3_Click() Unload me 2. 在实验 1 的基础上, 通过 InputBox 输入第三个数, 找出其中最大的数, 并输出 算法提示 : 在实验 1 中已通过 If 的双分支结构找出两个数的最大值 max, 那么只要再用 max 与第三个数进行比较就可以得到三个数中的最大值 Private Sub Command1_Click() Dim a As Integer, b As Integer, c As Integer, max As Integer a = Text1 b = Text2 c = InputBox(" 请输入第三个数!") If Max = a Else Max = b End If If Text3 = Str(c) 3. 如图 6-2 所示, 在文本框中每输入一个字符则判断 : 若是小写字母, 在 Label1 中显示其大写字母 ; 若是大写字母, 在 Label1 中显示其小写字母 ; 若是其他字符, 直接在 Label1 中显示, 在 Label2 中显示输入字母总数 算法提示 : 分析文本框中输入的字符有三种情况, 可以使用 If 的多分支结构 另外还要统计字母的总数, 这需要设置一个计数器 ( 变量 ), 而且该计数器值需要一直保留并进行累加, 所以该变量应定义为窗体级变量 33

40 Dim n As Integer Private Sub Text1_Change() Dim ch As String ch = Right ( ) If ch >= "A" And ch <= "Z" Then Label1.Caption = LCase(ch) n = n + 1 ElseIf ch >= "a" And ch <= "z" Then Label1.Caption = UCase(ch) n = n + 1 Else End Label1.Caption = If 图 6-2 Label2.Caption = 4. 编写程序, 输入学生的百分制成绩, 将百分制成绩转换为学分制成绩, 并输出结果 设计如图 6-3 所示的程序界面, 并完善下面的程序代码 优 score>89 良 79<score<90 Grade 中 69<score<80 及格 59<score<70 差 score<60 算法提示 : 学分制成绩有多种情况, 可以使用 Select 多分支结构, 而学分制成绩主要 取决于百分制成绩的十位数, 所以 Select Case 的表达式可以为百分制成绩的十位 数 Private Sub Command1_Click() Dim s As Integer s = Text1 图

41 Select Case Case 9, 10 Text2 = " 优 " Case 8 Text2 = " 良 " Case 7 Text2 = " 中 " Case 6 Text2 = " 及格 " Case Is > 0, Is < 6 / 注意表达式的语法规范 Text2 = " 差 " End Select 5. 编写一个简单计算器程序 设计如图 6-4 所示的程序界面, 单击 计算 按钮, 则根据输入操作数以及所选的运算符, 求得运算结果, 并显示在相应的文本框中 当除数为 0 时, 用消息框给出提示 完善下面的程序代码 Private Sub Command1_Click() Dim a As Integer, b As Integer a = Text1 b = Text2 Select Case Case "+" Text3 = a + b Case "-" Text3 = a - b 图 6-4 Case "*" Text3 = a * b Case "/" If b <> 0 Then 35

42 Else End If MsgBox "error", vbcritical End Select 6. 实训练习与思考 (1) 将实验 1 中的 If 双分支结构语句改为两个 If 单分支结构语句 (2) 将实验 2 的三个数, 按从大到小的次序输出 编写其 If 语句 (3) 将实验 4 的 Select 语句格式改写为 If 多分支结构语句 (4) 如图 6-5 所示, 某市公用电话收费标准如下 : 通话时间在 3 分钟以下, 收费 0.50 元 ;3 分钟以上, 则每超过 1 分钟加收 0.15 元 ; 在 7:00-19:00 之间通话者, 按上述收费标准全价收费 ; 在其他时间通话者一律接收费标准的半价收费 试计算某人在 T 时间通话 S 分钟, 应缴多少电话费 窗体保存为 pay.frm, 工程保存为 pay.vbp 图 6-5 分析 : 首先根据通话时间来确定收费, 这是一个双分支结构, 然后再根据时间通话来确定是否半价收费, 这是一个单分支结构 所以这是一个双分支结构加单分支结构的程序 (5) 将从键盘上输入的一位数字翻译为对应的英文单词 若输入长度大于 1 且不是 0-9 之间的数字, 则显示 输入错误, 请重新输入 的信息 窗体分别保存为 translate.frm, 工程保存为 translate.vbp 分析 : 首先要判断从键盘上输入的数字是否是一位数, 在符合条件的前提下, 再将其翻译为对应的英文单词, 如果不符合条件则显示错误信息 所以这是一个双分支结构 36

43 嵌套多分支结构的程序 四 实训部分关键代码 ( 可另附页 ) 五 实验小结 ( 包括实验收获 未解决问题和教学建议等 ) 37

44 实验七循环结构程序设计 实验地点 : 实验日期 : 年 月 日成绩 : 一 实验目的 1. 掌握 FOR 语句的使用方法 2. 掌握 DO 语句的使用方法 3. 掌握循环结构程序的设计方法及常用算法 二 实验内容 1. 输入一个正整数, 判断该数是否为素数 2. 用筛选法求 100 以内的素数 3. 结合累加算法, 求 1!+2!+ +n! 4. 我国现有人口 13 亿, 按人口年增长率 0.8% 计算, 编写程序求多少年后我国人口超 过 26 亿? 5. 在文本框中输入一串字符, 统计其中字母 数字和其他字符的个数 6. 输入一串字母, 按规则进行加密 : 将每个原码字母在 A-Z-A 首尾相连的字母表上向 后移 6 位为译码 7. 实训练习与思考 三 实验记录 1. 输入一个正整数, 判断该数是否为素数 设计如图 7-1 所示的程序界面, 并完善下 面的程序代码 算法提示 : 素数即除了 1 和它本身之外, 不能被任何数整除的数为素数, 定义一个 整型变量 i,i 从 2 至 x-1 以步长值 1 依次递增, 若 x 能被 i 整除, 则停止循环,x 不是素 数 ; 若 x 始终不能被 i 整除, 直到循环结束,x 则为素数 Private Sub Command1_Click() Dim I As Integer, x As Integer x = Text1 For i = 2 To x - 1 If Then Exit For Next i If Else End Then MsgBox x & " 是素数 " MsgBox x & " 不是素数 " If 图

45 2. 用筛选法求 100 以内的素数 并完善下面的程序代码 算法提示 : 在实验 1 中只是对文本框内的数 ( 即 x) 判断是否为素数, 而现在需要对 之间的数都要进行判断, 这样重复的操作, 就要对实验 1 中的 x 设置一个循环, 形成了循环的嵌套, 外循环用来控制被判断的数, 而内循环则判断该数是否为素数 Private Sub Command1_Click() Dim i As Integer, x As Integer For x = 2 To 100 For i = 2 To x - 1 If x Mod i = 0 Then 内循环 外循环 Next i If Then Print x Next x 3. 结合累加算法, 求 1!+2!+ +n! 设计如图 7-2 所示的程序界面, 并完善下面的程序代码 算法提示 : 此题累加的不是简单的 等, 而是 1! 2! 到 n!, 设一个变量 s 作累加器, 设一个变量 t 存放每一次的加数即从 1! 到 n! 设外循环变量 i 值从 1 变化到 n, 每一次循环执行一次累加操作, 而内循环通过累乘得到加数 t 即 i!, 所以内循环变量 j 值从 1 变化到 i Private Sub Command2_Click() Dim i As Integer, j As Integer, n As Integer Dim t As, s As n = Text1 For i = 1 To n t = 1 图 7-2 For j = 1 To i 39

46 Next j Next i Print s End Sub 4. 我国现有人口 13 亿, 按人口年增长率 0.8% 计算, 编写程序求多少年后我国人口超过 26 亿? 算法提示 : 这是一个无法预知循环次数的问题, 可以用 Do-Loop 型循环结构配合 Exit Do 语句来解决 设当前人口数量为 P,P=13, 循环条件为当前人口数是否超过 26 亿, 若没超过, 计算下一年人口数 P=P*( ), 年数 +1, 再判断 Private Sub Command1_Click() Dim p As Single Dim t As Integer p = 13 Do p = p * ( ) t = t + 1 Loop While Print t & " 年 " 5. 在文本框中输入一串字符, 统计其中的字母 数字和其他字符的个数 设计如图 7-3 所示的程序界面, 并完善下面的程序代码 算法提示 : 要统计满足指定要求的字符个数, 需要通过循环从左向右从文本框中逐个取字符, 每找到符合条件的字符, 将指定计数器 ( 对应变量 ) 的值加 1 Private Sub Command1_Click() Dim s As String Dim i As Integer, n1 As Integer, n2 As Integer, n3 As Integer s = Text1 For i = 1 To 40

47 If UCase(Mid(s, i, 1)) >= "A" And UCase(Mid(s, i, 1)) <= "Z" Then n1 = n1 + 1 ElseIf Mid(s, i, 1) >= "0" And Mid(s, i, 1) <= "9" Then n2 = n2 + 1 Else n3 = n3 + 1 End If Next i Text2 = " 字母 :" & n1 & vbcrlf & " 数字 :" & n2 & vbcrlf & - " 其他 :" & n3 图 如图 7-4 所示, 输入一串字母, 按规则进行加密 : 将每个原码字母在 A-Z-A 首尾相连的字母表上向后移 6 位为译码 如下表所示 : 原码 A B C X Y Z 译码 G H I D E F 算法提示 : 通过 For 循环和 Mid 函数依次得到每个字符, 再对每个字符进行转换, 转换关系为 : A(Ascii 码为 65) B(66) C(67) D(68) T(84) G(Ascii 码为 71) H(72) I(73) J(74) Z(90) 可以看出 : 字符 ch 转换后的 Ascii 码为 Asc(ch)+6, 但当字符为 U 到 Z 时, 转换后的字符就超过 Z 的范围 因此当转换后字符的 Ascii 码超过 90 时, 转换后的字符串 Ascii 码为 Asc(ch)

48 Private Sub Command1_Click() Dim str1 As String, str2 As String Dim n As Integer, ch As String * 1, i As Integer str1 = UCase(Trim(Text1.Text)) For i = 1 To Len(str1) ch = n = Asc(ch) + 6 If n <= 90 Then str2 = str2 + Chr(n) Else str2 = End If Next i Text2.Text = str2 图 实训练习与思考 (1) 为了减少不必要的循环次数, 每个数都被 2 到 x 的数除, 若出现能被整除的数就不是素数 ; 如果到最后仍然不能被整除, 则该数就是素数 对实验 1 进行优化 (2) 将实验 2 中的素数按 10 个一行输出 (3) 比较 Do 循环和 For 循环的区别? (4) 编写一个大奖赛统计选手得分的程序 利用随机函数产生 10 个 80~100 分之间的随机整数, 输出在窗体上, 并去掉一个最高分和一个最低分, 然后计算选手的平均得分也在窗体上显示 分析 : 在 N 个数中求最大值和最小值的思路是定义一个变量假设为 max, 用来存放最大值, 定义一个变量假设为 min, 用来存放最小值 一般将第 1 个数赋给 max 和 min, 将剩下的每个数分别和 max min 比较, 如果比 max 大, 将该数赋给 max, 如果比 min 小, 将该数赋给 min, 即让 max 中总是放当前的最大数, 让 min 中总是放当前的最小值, 这样当所有数都比较完时, 在 max 中放的就是最大数, 在 min 中放的就是最小数 (5) 百钱买百鸡假设 : 小鸡 5 角 / 只, 公鸡 2 元 / 只, 母鸡 3 元 / 只, 现有 100 元钱要买 42

49 100 只鸡, 编程列出所有可能的购鸡方案 分析 : 使用穷举法, 将可能出现的各种情况一一测试, 判断是否满足条件 设母鸡 公鸡 小鸡分别买 X Y Z 只, 则条件为 :X+Y+Z=100 和 3*X+2*Y+0.5*Z=100 For x = 0 To 33 For y = 0 To 50 If 3 * x + 2 * y * (100 - x - y) = 100 Then Print x, y, z End If Next y Next x (6) 意大利数学家 Fibonacci 曾提出一个有趣的问题 : 设有一对新生兔子, 从第三个月开始它们每个月都生一对兔子 按此规律, 并假设没有兔子死亡, 一年后共有多少对兔子? 分析 : 数列从第 3 项开始, 每 1 项都是其前 2 项之和 假设第 1 项用 f1 表示, 第 2 项用 f2 表示, 每次新元素用 f 表示 : f1 f2 f 第 3 月 1 1 f=f1+f2=2 第 4 月 1 2 f=f1+f2=3 第 5 月 2 3 f=f1+f2=5 第 6 月 3 5 f=f1+f2=8 可以看出 : 每个月的兔子数 f 要由前个月的兔子数 f1 和 f2 推出, 并在求下个月的兔子数之前要用新值对 f1 和 f2 的值进行更新 四 实训部分关键代码 ( 可另附页 ) 43

50 五 实验小结 ( 包括实验收获 未解决问题和教学建议等 ) 44

51 实验八静态数组 实验地点 : 实验日期 : 年 月 日成绩 : 一 实验目的 1. 熟悉一维静态数组的定义格式 赋值方式和输出方式 2. 熟悉二维静态数组的定义格式 赋值方式和输出方式 3. 掌握对数组求最大值 最小值 平均值的算法 4. 掌握对二维数组的常用操作 5. 了解多维数组的定义 6. 理解列表框和组合框控件的实质 二 实验内容 1. 将 { 10, 50, 23, 56, 78, 50, 58, 61, 79, 56} 这一系列数放入到一维数组中, 显示在窗体 上, 并求最大值 最小值 平均值 要求 : 使用 Array 函数 Inputbox 函数两种方 法给一维数组赋值 2. 利用随机函数形成 5*5 的方阵, 在三个图片框和三个文本框上分别输出方阵中各元 素 上三角元素和下三角元素, 在图片框 1 上显示对角线之和 3. 随机生成 1 位数组成的 4*4 二维矩阵显示在图片框 1 中, 将其转置矩阵显示在图片 框 2 中 要求 : 用两种方法实现矩阵转置 4. 利用一维数组中移位的方法建立如同 8-4 所示界面 5. 实训练习与思考 三 实验记录 1. 将 { 10, 50, 23, 56, 78, 50, 58, 61, 79, 56} 这一系列数放入到一维数组中, 显示在窗体 上, 并求最大值 最小值 平均值 设计如图 8-1 所示的程序界面, 并完善下面的程序代码 图 8-1 Private Sub Cmd_inputbox_Click() ' 利用 Inputbox 函数给一维数组赋值 Dim a(9) As Integer, i As Integer, max%, min%, avg As Double Dim v For i = 0 To 9 a(i) = InputBox(" 请输入第 " & i + 1 & " 数 ") Next i Me.Cls 45

52 Print " 利用 Inputbox 函数给数组元素逐个赋值 :" For Each v In a ' 利用 FOR-EACH 语句输出数组 Print v; Next v max = a(0) min = a(0) avg = a(0) For i = 1 To 9 avg = avg + a(i) If max < a(i) Then max = a(i) If min > a(i) Then min = a(i) Next i Print Print " 最大值为 :" & max, " 最小值为 :" & min, " 平均值为 :" & avg / 10 Private Sub Cmd_array_Click() ' 利用 Array 函数生成一维数组 Dim a, i%, max%, min%, avg As Double a = Array(10, 50, 23, 56, 78, 50, 58, 61, 79, 56) ' 利用 Array 函数给数组赋值时, 函数返回值必须是一个变体型数据 max = a(0): min = a(0): avg = a(0) Me.Cls Print " 利用 ARRAY 函数给数组赋一组给定的数值 :" & vbcrlf; a(0); For i = LBound(a) + 1 To UBound(a) avg = avg + a(i) Print a(i); If max < a(i) Then max = a(i) If min > a(i) Then min = a(i) Next i 46

53 Print vbcrlf & " 最大值为 :" & max, " 最小值为 :" & min, " 平均值为 :" & avg / 利用随机函数形成 5*5 的方阵, 在三个图片框和三个文本框上分别输出方阵中各元素 上三角元素和下三角元素, 在图片框 1 上显示对角线之和 设计如图 8-2 所示的程序界面, 并完善下面的程序代码 图 8-2 Option Explicit Private Sub Command1_Click() Dim a%(4, 4), i%, j%, sum% Randomize Picture1.Cls Picture1.Print " 产生矩阵 " Text1 = " 产生矩阵 " + vbcrlf ' 矩阵赋初值并在图片框 1 和文本框 1 上输出 For i = 0 To 4 For j = 0 To 4 a(i, j) = Int(Rnd * ) Picture1.Print Tab(j * 5 + 1); a(i, j); Text1.Text = Text1.Text & a(i, j) & " " Next j 47

54 Picture1.Print Text1.Text = Text1.Text & vbcrlf Next i ' 求矩阵的对角线之和 For i = 0 To 4 For j = 0 To 4 If i = j Or i + j = 4 Then sum = sum + a(i, j) Next j Next i Picture1.Print vbcrlf & " 矩阵的对角线之和为 :" & sum Picture2.Print " 显示下三角数组元素 :" Text2.Text = Text2 + " 显示下三角数组元素 :" + vbcrlf ' 在图片框和文本框上显示下三角元素 For i = 0 To 4 For j = 0 To 4 If i >= j Then Picture2.Print Tab(j * 5 + 1); a(i, j Text2.Text = Text2.Text & a(i, j) & " " End If Next j Picture2.Print Text2.Text = Text2.Text & vbcrlf Next i Picture3.Print " 显示上三角数组元素 :" ' 在图片框上显示上三角元素 For i = 0 To 4 For j = 0 To 4 If i <= j Then Picture3.Print Tab(j * 5 + 1); a(i, j); End If 48

55 Next j Picture3.Print Next i Text3.Text = Text3 + " 显示上三角数组元素 :" + vbcrlf ' 在文本框上显示上三角元素 For i = 0 To 4 For j = 0 To 4 If i <= j Then If i = j Then Text3 = Text3 + String(i * 3, " ") Text3 = Text3 & a(i, j) & " " End If Next j Text3 = Text3 & vbcrlf Next i 3. 随机生成 1 位数组成的 4 4 二维矩阵显示在图片框 1 中, 将其转置矩阵显示在图片框 2 中 要求 : 用两种方法实现矩阵转置 设计如图 8-3 所示的程序界面, 并完善下面的程序代码 Option Explicit Option Base 1 Dim a(4, 4) As Integer Private Sub Cmd_end_Click() End Private Sub Cmd_shengcheng_Click() ' 生成矩阵 图 8-3 同时输出在图片框 1 上 Dim i As Integer, j As Integer Picture1.Cls Randomize For i = 1 To 4 49

56 For j = 1 To 4 a(i, j) = Int(Rnd * 9 + 1) Picture1.Print a(i, j); Next j Picture1.Print Next Private Sub Cmd_zhuanzhi1_Click() ' 利用新定义的矩阵得到转置矩阵 Dim i As Integer, j As Integer Dim b(4, 4) As Integer Picture2.Cls For i = 1 To 4 For j = 1 To 4 b(i, j) = a(j, i) Picture2.Print b(i, j); Next j Picture2.Print Next i Private Sub Cmd_zhuangzhi2_Click() ' 利用 a(i,j) 和 a(j,i) 的位置关系来实现本身的转置 Dim i As Integer, j As Integer, temp As Integer Picture2.Cls For i = 1 To 4 For j = 1 To I temp = a(i, j) a(i, j) = a(j, i) a(j, i) = temp Next j Next i For i = 1 To 4 50

57 For j = 1 To 4 Picture2.Print a(i, j); Next j Picture2.Print Next i 4. 利用一维数组中移位的方法建立如同 8-4 所示界面 Private Sub Form_Click() Dim a(7) As Integer, i As Integer For i = 1 To 7 a(i) = i: Print a(i); Next i Print For i = 1 To 7 t = a(7) For j = 6 To 1 Step -1 a(j + 1) = a(j) Next j a(1) = t For j = 1 To 7 图 8-4 Print a(j); Next j Print Next i 5. 实训练习与思考 51

58 (1) 建立如图 8-5 所示应用程序界面, 随机生成 4*4 方阵, 找出矩阵元素的最大值和矩阵对角线元素之和 要求 : 单击 找出矩阵元素最大值 命令按钮时, 找出矩阵中最大的数, 显示在 Label3 中 单击 对角线元素之和 命令按钮计算矩阵对角线之和, 显示在在 Label4 中 将窗体文件保存为 sjt1.frm, 工程文件保存为 sjt1.vbp 分析 : 随机生成方阵可以用 For 循环 + 随机函数实现, 求最大值算法和求对角线之和参照实验题 1 编写 图 8-5 图 8-6 (2) 通过随机函数生成 10 个 1~100 的正整数, 放入一个数组中, 并将这 10 个数显示在窗体上 ; 将数组中的元素颠倒顺序 ( 即第一个元素中的数据和第十个元素中的数据交换, 第二个和第九个交换, ), 并将最终结果显示在窗体上 要求 : 建立应用程序界面包括数组初始化按钮 颠倒程序按钮和退出按钮 提示 : 两两交换数组元素的数组下标之和 10( 假设数组元素下标从 0 开始 ) (3) 建立如图 8-6 所示应用程序界面, 实现随机生成一个 5*5 的矩阵, 该矩阵的副对角线 ( 指矩阵左下角到矩阵右上角连线上的元素 ) 上方元素都是偶数, 副对角线和它的下方元素都是奇数 建立交换按钮, 交换以副对角线为界线的上三角和下三角的对应元素 (4) 建立如图 8-7 所示界面, 在组合框控件中选择一种商品, 在 Text2 中输入一个数量, 单击计算按钮, 则会在列表框中找到该商品的单价, 乘以数量后显示在 Text3 中 ( 如图所示 ); 如在组合框中直接输入的商品名称是错误的, 则在 Text3 中显示 无此商品 ( 注意 : 列表框中的每个商品的单价包含小数点均为 4 位, 小数点位置不固定 ) 下面给出了程序代码, 请通过编程测试填写空格部分 将窗体文件保存为 sjt2.frm, 工程文件保存为 sjt2.vbp 提示 : 本题的关键点是当选择某个商品名称 (Combo1.Text) 后, 如何和列表框中的名称列比较, 相等则取出对应单价即可 名称由 Left(List1.List(k), InStr(List1.List(k), " ") - 1) 52

59 可得到, 单价由 Val(Right(List1.List(k), 4)) 可得到 图 8-7 (5) 找出二维数组 M N 中的鞍点 所谓鞍点是指它在本行中值最大, 在本列中值最小, 数组中有可能找不到鞍点 如果找到, 则输出鞍点的行号 列号, 找不到则输出 无鞍点 (6) 声明一个一维字符类型数组, 有 20 个元素, 每个元素多存放 10 个字符, 要求 : 由随机数生成大写字母构成的数组, 每个元素的字符个数有随机数产生, 范围 1~10 将生成的数组分 5 行显示, 求出生成的字符数组中字符最多的元素 提示 : 数组中每个元素即字符个数 n 随机产生, 对于字符 c 也是随机产生, 可以使用双重循环来实现, 求字符最多的元素就是求最长的数组元素 For i = 1 To 20 n = Int(Rnd * ) For j = 1 To n c = Chr(Int(Rnd * )) a(i) = a(i) & c Next j Print a(i); Space(15 - Len(a(i))); If i Mod 5 = 0 Then Print Next i (7) 随机产生 20 个学生的成绩, 统计各分数段的人数 分数段为 : 产生的数据在图片框 1 上显示, 统计结果在图片框 2 上显示 提示 : 找出分数段和统计数组下标的共性关系和特殊关系 :0-59,90-100, 分别进行统计 由于产生分数和统计是两个事件过程, 所以存放分数的数组必须是在通用声明段声明 53

60 四 实训部分关键代码 ( 可另附页 ) 五 实验小结 ( 包括实验收获 未解决问题和教学建议等 ) 54

61 实验九动态数组 一 实验目的 1. 掌握动态数组的定义 重新定义 赋值和使用 2. 理解动态数组的综合应用 二 实验内容 1. 将给定整数 N 表示成若干质因子相乘的形式 2. 在窗体上, 建立命令按钮 1 文本框 1 和文本框 2, 单击命令按钮实现下面的功能 : 在文本框 1 中输入若干以空格分隔的整数 ( 末尾无空格 ), 程序自动将输入的数据分 解并存储到一个一维数组, 再把数组中所有重复的元素删除 ( 只保留一个 ), 并输出 到文本框 2 3. 从一个由字母与数字相混的字符串中选出数字串, 并把数字串构成的数写入列表框 中 4. 按金字塔形状打印杨辉三角形 要求 : 行数可变, 且由 Inputbox 函数输入 5. 实训练习与思考 三 实验记录 1. 求质因子 设计如图 9-1 所示的程序界面, 并完善下面的程序代码 Option Explicit Private Sub Command1_Click() Dim n As Integer, a() As Integer, k As Integer Dim st As String, i As Integer n = Text1 k = 2 ' 给 k 赋初值 Do If n Mod k = 0 Then i = i + 1 ReDim Preserve a(i) a(i) = k n = n / k ' 设置循环 Else End If k = k + 1 Loop Until n = 1 ' 设置循环终止条件 55

62 st = Text1 & "=" For i = 1 To UBound(a) - 1 st = st & a(i) & "*" Next i Text2 = st & a(i) 图 在文本框 1 中输入若干以空格分隔的整数 ( 末尾无空格 ), 程序自动将输入的数据分 解并存储到一个一维数组, 再把数组中所有重复的元素删除 ( 只保留一个 ), 并输出到文本 框 2 设计如图 9-2 所示的程序界面, 并完善下面的程序代码 图 9-2 Option Explicit Option Base 1 ' 运行按钮代码 Private Sub Command1_Click() Dim a() As Integer, i As Integer, st As String, j As Integer Dim k As Integer, p As Integer st = Text1 Do p = InStr(st, " ") If p <> 0 Then k = k + 1 ReDim Preserve a(k) a(k) = Val(Left(st, p - 1)) st = Right(st, Len(st) - p) Else ReDim Preserve a(k + 1) 56

63 a(k + 1) = Val(st) End If Loop Until p = 0 i = 0: j = 0: k = 0 Do i = i + 1 j = i + 1 Do While j <= UBound(a) If a(i) = a(j) Then For k = j To UBound(a) - 1 a(k) = a(k + 1) Next k ReDim Preserve a(ubound(a) - 1) Else j = j + 1 End If Loop Loop Until i > UBound(a) For i = 1 To UBound(a) Text2 = Text2 & Str(a(i)) Next i Text2 = LTrim(Text2) 3. 从一个由字母与数字相混的字符串中选出数字串, 并把数字串构成的数写入列表框 List1 中 设计如图 9-3 所示的程序界面, 并完善下面的程序代码 Option Explicit Option Base 1 ' 筛选按钮代码 Private Sub Command1_Click() Dim s As String, k As Integer, c() As String 57

64 Dim p As String, i As Integer s = Text1 k = 1 For i = 1 To Len(s) If Mid(s, i, 1) >= "0" And Mid(s, i, 1) <= "9" Then p = p & Mid(s, i, 1) ElseIf Mid(s, i + 1, 1) >= "0" And Mid(s, i + 1, 1) <= "9" And i <> 1 Then If p <> "" Then ReDim Preserve c(k) c(k) = p k = k + 1 p = "" End If End If Next i ReDim Preserve c(k) c(k) = p For i = 1 To k List1.AddItem c(i) Next i 图 按金字塔形状打印杨辉三角形 要求 : 行数由 Inputbox 函数输入 设计如图 9-4 所示的程序界面, 并完善下面的程序代码 提示 : 杨辉三角最本质的特征是, 它的两条斜边都是由数字 1 组成的, 而其余的数则是等于它肩上的两个数之和 根据定义可以得到以下结论 : 每行第 1 列的元素的值都是 1, 最后一列元素的值都是 1; 其他位置的元素都是由上一行上一列与上一行本列元素之和构成的 ; 每行输出的元素个数就是行数, 也是列数 这里要求杨辉三角的行数可变, 就需要把数组定义为动态数组, 并根据 InputBox 中输入的行数值重新定义数组大小 58

65 根据以上分析, 只要输出方阵的下三角元素可以实现图 9-4 左图的杨辉三角形状 要想实现右图的对称的金字塔形状, 就需要固定每行的初始打印位置和每列的间隔位置, 总的来说, 利用行数和列数的变化来固定每个数组元素的显示位置, 建议使用 Tab(n * 3-3 * i + 6 * j) 来定位 图 9-4 Option Explicit Option Base 1 Private Sub Command1_Click() Dim a() As Long Dim n As Integer, v Dim i As Integer, j% v = InputBox(" 请输入杨辉三角的行数 :") If IsNumeric(v) = False Or Len(v) = 0 Then MsgBox " 输入不是数字或为空, 请重新输入!" Exit Sub Else n = v End If ReDim a(n, n) For i = 1 To n For j = 1 To i If j = 1 Or i = j Then a(i, j) = 1 Else a(i, j) = a(i - 1, j - 1) + a(i - 1, j) 59

66 End If Next j Next i For i = 1 To n For j = 1 To i Print Tab(n * 3-3 * i + 6 * j); a(i, j); Next j Print Next i 5. 实训练习与思考 (1) 阅读下面的程序, 当单击 Command1 按钮后,a(1,1) 的值是 7,a(1,4) 的 值是 1,a(4,1) 的值是 16,a(4,1) 的值是 10 建立应用程序验证四个值 是否正确 Option Explicit Option Base 1 Private Sub Command1_Click() Dim a() As Integer, i As Integer, j As Integer Dim k As Integer, n As Integer n = 4 ReDim a(n, n) i = 1: j = n: a(i, j) = 1 For k = 2 To n * n If i + 1 > n Then i = n - j + 2: j = 1 ElseIf i + 1 <= n And j + 1 > n Then j = j - i: i = 1 Else i = i + 1: j = j + 1 End If 60

67 a(i, j) = k Next k (2) 随机生成小于 100 的 20 个素数组成的数组, 分两行显示在文本框中 设计如图 9-5 所示的应用程序 图 9-5 (3) 利用 Inputbox 函数输入一个 N 位整数,(N 10), 求出由这 N 个数字组成的 N 位的最小整数和最大整数 设计如图 9-6 所示的程序界面 江苏省 提示 : 将 N 位整数的每位上数字存储在动态数组中, 将数组元素降序排序得到的字符序列可以构成最大数, 如果是升序, 可以得到最小数, 但特别需要考虑最小数最高位是 0 的情况 已给出了程序代码, 完成填空并建立应用程序验证正确性 Option Explicit Option Base 1 Private Sub Command1_Click() Dim n As Long, a() As Integer, i As Integer, j As Integer, t As Integer Dim large As String, small As String Dim k As Integer n = Text1 ' 将每位上的数字保存在动态数组中 Do k = k + 1 ReDim Preserve a(k) a(k) = n Mod 10 n = n \ 10 图

68 Loop Until n = 0 ' 动态数组升序排序 For i = 1 To UBound(a) - 1 For j = 1 To UBound(a) - i If a(j) > a(j + 1) Then t = a(j) a(j) = a(j + 1) a(j + 1) = t End If Next j Next i For i = 1 To UBound(a) large = a(i) & large small = small & a(i) Next i Text2 = large For i = 1 To Len(small) If a(i) <> 0 Then Exit For Next i If i <> 1 Then small = Mid(small, i, 1) & Left(small, i - 1) & Right(small, Len(small) - i) End If Text3 = small (4) 随机产生 N 个大写字母, 并显示 将 N 个字母按产生的顺序逆时针排列成一个圆环, 按逆时针方向统计相邻两个字母满足升序的次数, 并输出每对字符和统计结果 分析 : 如何随机产生 N 个大写字母参考实验八实训 6, 相邻两字母升序只要比较动态数组中相邻两元素的大小即可 Private Sub Form_Click() Dim a() As String, count As Integer, i As Integer, n As Integer 62

69 Randomize Me.Cls n = Int(Rnd * 20) + 10 ReDim a(n) Print " 产生的字符 :" For i = 1 To n s = Chr(Int(Rnd * 26) + 65) a(i) = s Print s; " "; 图 9-7 Next i Print vbcrlf + " 统计结果 :" count = 0 For i = 2 To n If a(i) > a(i - 1) Then count = count + 1 Print a(i - 1); " "; a(i) End If Next i If a(1) > a(n) Then count = count + 1 Print a(1); a(n) End If Print vbcrlf + " 符合条件的字符有 :"; count 四 实训部分关键代码 ( 可另附页 ) 63

70 五 实验小结 ( 包括实验收获 未解决问题和教学建议等 ) 64

71 实验十数组的综合应用 一 实验目的 1. 熟悉一维数组的常用排序算法 2. 熟悉一维数组的插入 查找和删除算法 3. 掌握控件数组的建立和使用 4. 了解自定义类型数组的定义 声明和使用 二 实验内容 1. 建立由 10 个随机两位数构成的有序一维动态数组, 分别利用选择排序法 直接排 序法 冒泡排序法三种方法对其升序排序 ; 2. 在实验 1 的基础上, 建立删除重复数按钮, 实现删除数组中重复出现的数组元素 ; 建立插入按钮, 在数组排序基础上插入一个数到动态数组中 ; 3. 在实验 2 基础上, 建立顺序查找按钮和二分查找按钮, 测试某个数是否在该数组中, 如果在则将该数删除, 如果不在则给出提示信息 4. 利用控件数组建立一个计算器程序 说明 :0 至 9 加上小数点十个按钮为控件数组, 加 减 乘 除和取余按钮为控件数组, 清除 等于和退出按钮为控件数组 5. 自定义一个书籍数据类型, 包含书号 书名 价格三项内容 在通用声明段声明一 个数据类型的数组, 可以存放 5 本数的数据 设计界面完成添加和按价格降序排序 功能 6. 实训练习与思考 三 实验记录 1. 对动态数组的排序操作 设计如图 10-1 所示的程序界面, 并完善下面的程序代码 Option Explicit Option Base 1 Dim a() As Integer ' 利用随机函数给动态数组赋值 Private Sub Cmd_shengcheng_Click() 为 :" Dim i As Integer ReDim a(10) Randomize Picture1.Cls Picture1.Print " 初始序列 For i = 1 To 10 a(i) = Int(Rnd * 90 图

72 + 10) ' 利用随机函数产生数组元素的值 Picture1.Print a(i); Next I 算法提示 : 选择排序法, 第一步 : 将 N 个数的第一个数依次与后面的 N-1 个数进行比较, 如果有一个数比它小, 就执行交换操作, 经过这一轮比较, 产生最小的数放在第一个数中 ; 第二步 : 将第二个数再依次与后面的 N-2 个数进行比较, 如果有一个数比它小, 就执行交换操作, 经过这一轮比较, 产生第二小的数放在第二个数中 ; 第三步 : 重复执行以上操作, 最后是第 N-1 和 N 数进行比较, 如果后者小于前者, 执行交换操作, 否则保持原值 Private Sub Cmd_xuanzhe_Click() Dim i As Integer, j As Integer Dim imin As Integer, temp As Integer Dim v For i = 1 To UBound(a) 1 ' 数组元素个数由 ubound 函数得到, 外围循环次数为 UBound(a) - 1 For j = i + 1 To UBound(a) ' 每次 a(i) 都和其后面的每个元素作比较 If a(i) > a(j) Then ' 如果不满足升序 ( 降序 ) 的条件, 则 a(i) 与 a(j) 执行交换 temp = a(i) a(i) = a(j) a(j) = temp End If Next j Next i Picture1.Print vbcrlf + " 用选择排序后的序列 :" For Each v In a Picture1.Print v; Next v 66

73 算法提示 : 直接排序法是对选择排序法的优化, 第一步 : 对 N 个数的序列, 从中选出最小的数, 与第一个数交换 ; 第二步 : 除第 1 个数外, 其余 N-1 个数按照第一步的方法选择最小的数, 与第二个数交换 ; 第三步 : 重复以上操作, 知道最后只剩下一个数时结束 直接排序法优于选择排序法在于不用频繁执行交换操作, 在数据量大时可以提高运行效率 Private Sub Cmd_zhijie_Click() Dim temp As Integer, i As Integer, j As Integer Dim pointer As Integer Dim v For i = 1 To UBound(a) - 1 pointer = i ' 把本轮第一个元素下标赋给 pointer For j = i + 1 To UBound(a) If a(pointer) > a(j) Then ' 只要发现有元素的值比 a(pointer) 小, 就用 pointer 记录最小元素所在的下标 pointer = j End If Next j If i <> pointer Then ' 如果 a(pointer) 不是本轮最小元素, 将 a(i) 与 a(pointer) 交换 temp = a(i) a(i) = a(pointer) a(pointer) = temp End If Next i Picture1.Print vbcrlf + " 直接排序后的序列 :" For Each v In a Picture1.Print v; Next v 算法提示 : 冒泡排序法是一种形象的说法, 一连串的比较小的数像气泡一样上升, 较 67

74 大的数沉底, 算法实现时, 每一轮都是比较相邻两个元素的值, 如果前面的数比后面的数大 ( 小 ), 就执行一次交换, 即在每一轮比较中都产生本轮的最大值 ( 大 ) Private Sub Cmd_maopao_Click() Dim imin As Integer, i As Integer, j As Integer, temp As Integer Dim v For i = 1 To UBound(a) ' 用 UBound(a) 测试 a 的上界, 得到比较次数 For j = 1 To UBound(a) - i ' 在每一次比较中, 对 1 到 UBound(a)-i 的元素两两相邻比较, 较大的数沉底 If a(j) > a(j + 1) Then ' 次序不对即交换 temp = a(j) a(j) = a(j + 1) a(j + 1) = temp End If Next j Next i Picture1.Print vbcrlf + " 冒泡排序后的序列 :" For Each v In a Picture1.Print v; Next v 2. 对动态数组的插入元素和删除重复元素操作 设计如图 10-2 所示的程序界面, 并完善下面的程序代码 68

75 图 10-2 ' 删除数组中重复的数据 Private Sub Cmd_chongfu_Click() Dim k As Integer, i As Integer, j As Integer Dim t As Integer, n As Integer, v k = UBound(a) n = 1 Do While n < k i = n + 1 Do While i <= k If a(n) = a(i) Then ' 找到重复元素的位置 i For j = i To k - 1 a(j) = a(j + 1) ' 将数组位置 i 后面的元素依次前移一位, 则删除 i 位置上的数组元素 Next j k = k - 1 ReDim Preserve a(k) ' 删除元素后重新定义数组大小 Else i = i + 1 End If Loop n = n

76 Loop Picture1.Print vbcrlf + " 删除重复数据后的序列 :" For Each v In a Picture1.Print v; Next v ' 对有序数列插入数据 Private Sub Cmd_charu_Click() Dim i As Integer, k As Integer, x As Integer, n As Integer Dim v, s As String n = UBound(a) s = InputBox(" 请输入需要查找的数 :") ' 输入需要插入的数 If s = "" Then MsgBox " 您输入的为空, 退出该过程 " Exit Sub Else x = Val(s) End If For k = 1 To n If x < a(k) Then Exit For ' 查找欲插入数 X 在数组中的位置 Next k ReDim Preserve a(n + 1) For i = n To k Step -1 ' 数组增加一个元素 ' 数组元素后移一个位置, 为插入数留出一个位置 Next I a(i + 1) = a(i) a(k) = x ' 将 x 插入到空位上 Picture1.Print vbcrlf + " 插入数据后的序列 :" For Each v In a Picture1.Print v; Next v 70

77 3. 对动态数组的查找数据操作 设计如图 10-3 所示的程序界面, 并完善下面的程序代码 ' 顺序查找 Private Sub Cmd_shunxufind_Click() Dim i As Integer, k As Integer, x As Integer, n As Integer Dim v, s As String n = UBound(a) s = InputBox(" 请输入需要查找的数 :") If s = "" Then MsgBox " 您输入的为空, 退出该过程 " Exit Sub Else x = Val(s) End If For k = 1 To n If x = a(k) Then Exit For Next k If k > n Then Picture1.Print vbcrlf + " 该序列中没有找到 " & x Exit Sub End If For i = k + 1 To n a(i - 1) = a(i) Next I n = n - 1 ReDim Preserve a(n) Picture1.Print vbcrlf + " 用顺序查找法查找到 " + Str(x) + " 后, 并将其删除后的序列 :" For Each v In a Picture1.Print v; Next v 71

78 ' 二分查找 Private Cmd_erfenfind_Click() 图 10-3 Sub Dim left As Integer, right As Integer Dim mid As Integer, flag As Boolean Dim x As Integer, n As Integer, v Dim i As Integer, s As String n = UBound(a) s = InputBox(" 请输入需要查找的数 :") If s = "" Then MsgBox " 您输入的为空, 退出该过程 " Exit Sub Else x = Val(s) End If left = 1: right = n flag = False Do While left <= right mid = (left + right) / 2 If a(mid) = x Then 72

79 flag = True Exit Do ElseIf x > a(mid) Then left = mid + 1 Else right = mid - 1 End If Loop If flag Then For i = mid + 1 To n a(i - 1) = a(i) Next i n = n - 1 ReDim Preserve a(n) Picture1.Print vbcrlf + " 用二分查找法查找到 " + Str(x) + " 后, 并将其删除后的序列 :" For Each v In a Picture1.Print v; Next v Else Picture1.Print vbcrlf + " 该序列中没有找到 " & x End If 4. 设计简易计算器 设计如图 10-4 所示的程序界面, 并完善下面的程序代码 Option Explicit Dim flg As Boolean, op As Integer, first As Single Private Sub Cmd_shuzi_Click(Index As Integer) If Index = 10 Then Text1.Text = Text1.Text & "." Else Text1.Text = Text1.Text & CStr(Index) 73

80 End If If Len(Text1) = 2 And Left(Text1, 1) = "0" And Mid(Text1, 2, 1) <> "." Then Text1 = Mid(Text1, 2) End If Private Sub Cmd_op_Click(Index As Integer) first = Val(Text1.Text) op = Index Text1.Text = "" 图 10-4 Private Sub Cmd_jisuan_Click(Index As Integer) Dim second As Single second = Val(Text1) Select Case Index Case 1 Text1.Text = "" first = 0 Case 2 Select Case op Case 0 Text1.Text = Str(first + second) Case 1 Text1.Text = Str(first - second) Case 2 Text1.Text = Str(first * second) Case 3 If second <> 0 Then Text1.Text = Str(first / second) Else 74

81 Text1.Text = " 除数为 0" End If Case 4 If second <> 0 Then Text1.Text = Str(first Mod second) Else Text1.Text = " 除数为 0" End If End Select Case 3 End End Select 5. 自定义类型数组的应用 自定义一个书籍数据类型, 包含书号 书名 价格三项内容 在通用声明段声明一个数据类型的数组, 可以存放 5 本数的数据 设计界面完成添加和按价格降序排序功能 设计如图 10-5 所示的程序界面, 并完善下面的程序代码 ' 在通用模块中声明自定义数据类型 Type student no As Integer name As String score As Integer End Type 在通用声明段定义模块级变量 Dim a() As student, i As Integer Dim n As Integer ' 确定人数 Private Sub Form_Load() n = InputBox(" 请输入学生人数 :") 图 10-5 ReDim a(1 To n) i = 0 75

82 ' 添加按钮代码 Private Sub Cmd_tianjia_Click() i = i + 1 MsgBox " 一共有 " & n & " 个学生, 已经输入 " & i & " 个学生成绩," If i > n Then MsgBox " 人数超过 ": Exit Sub With a(i).no = Val(Text1).name = Text2.score = Text3 End With Text1 = "" Text2 = "" Text3 = "" Text1.SetFocus ' 排序按钮代码 Private Sub Cmd_paixu_Click() Dim j%, k%, t As student For j = 1 To i - 1 For k = j + 1 To i If a(k).score > a(k - 1).score Then t = a(k) a(k) = a(k - 1) a(k - 1) = t End If Next k Next j For j = 1 To i Picture1.Print a(j).no; a(j).name; a(j).score 76

83 Next j 6. 实训练习与思考 (1) 建文本框控件数组, 利用程序来设置文本框的字体属性, 程序界面运行界面图 10-6 图 10-6 图 10-7 图 所示 (2) 找出 以内的亲密对数 所谓 亲密对数 是指甲数的所有的因子和等于乙数, 乙数的所有的因子和等于甲数, 那么甲乙两数为亲密对数 程序界面运行界面图 10-9 所示 77

84 图 10-9 (3) 编写打印 N 阶幻阵的程序 程序界面运行界面图 所示 幻阵是由 1~N*N 个自然数组成的奇次方阵 (N 是一个奇数 ), 方阵的每一行 每一列及两条对角线上的元素相等 幻阵的编排规律如下 ( 假定幻阵名为 A): 1) 1 放在最后一行的中间位置 即 :I=N,J=(N+1)/2,A(I,J)=1 2) 下一个数放在前一个数的右下方, 即 A(I+1,J+1) 3) 如果 I+1>N, 且 J+1<=N, 则下一个数放在第一行的下一列位置 ; 4) 如果 I+1>N, 且 J+1<=N, 则下一个数放在下一行的第一列位置 ; 5) 如果 I+1>N, 且 J+1<=N, 则下一个数放在前一个数的上方位置 ; 6) 如果 I+1>N, 且 J+1<=N, 且右下方位置以 7) 存放有数, 则下一个数放在前一个数的上方 8) 重复第二步, 直到 N*N 个数都放入方阵中 阶幻阵 阶幻阵 给出 3 阶和 5 阶幻阵示例 : (4) 采用拉锯式排序法对数字元素按升序进行排序 所谓 拉锯式排序法 是第一遍把 78

85 最小的元素从下到上送到最上位置, 下一遍则是从上到下把最大的元素送到最小的位置 设计应用程序, 完成拉锯式排序算法的实现 (5) 建立如图 10-9 应用程序, 把由 4 个用. 分隔的十进制数表示的 IP 地址转换为有 32 位二进制数组成的 IP 地址 过程 Tiqu 用于提取十进制 IP 地址中每个用. 分隔的十进制数 ; 过程 Convert 用于将十进制数转换为相应的 8 位二进制数 图 图 四 实训部分关键代码 ( 可另附页 ) 79

86 五 实验小结 ( 包括实验收获 未解决问题和教学建议等 ) 80

87 实验十一 Sub 过程 实验地点 : 实验日期 : 年 月 日成绩 : 一 实验目的 1. 掌握 sub 过程的定义和调用方法 2. 掌握实参和形参的概念 3. 掌握值传递和地址传递两种方式 二 实验内容 1. 编写一个判断素数的 sub 过程, 要求单击 判断 按钮对文本框 1 中输入的正整数 进行判断, 把判断结果显示在文本框 2 中 ; 单击 清除 按钮, 清除文本框 1 和文 本框 2 中的内容, 并把焦点置于文本框 1 内 2. 编写 sub 过程 (IsH), 对于输入的正整数, 判断该数是否是回文数, 所谓回文数是 指一个数从左向右读和从右向左读相同, 如 : ,767,5 3. 求所有的水仙花数 所谓水仙花数, 就是指一个 3 位正整数, 其各位数字的立方和 等于该数本身 例如,153= ,153 即为水仙花数 4. 实训练习与思考 三 实验记录 6. 判断素数 设计如图 11-1 所示的程序界面, 并完善下面的程序代码 Private Sub Command1_Click() Dim x As Integer, flag As Boolean x = Val(Text1.Text) If Then Else End If Text2.Text = x & " 不是素数 " 图 11-1 Private Sub prime(x As Integer, flg As Boolean) ' 判断 x 是否为素数 81

88 Private Sub Command2_Click() Text1.Text = "" 2. 判断回文数 完善下面的程序代码 提示 : 将输入的数字转换成字符串类型, 然后利用 MID 函数从两边往中间比较, 若全相同, 则该数是回文数, 否则该数不是回文数 Private Sub Command1_Click() Dim x As Integer, flag As Boolean x = Val(InputBox(" 请输入一个正整数 ")) If flag Then Print x & " 是回文数 " Else Print x & " 不是回文数 " End If Private Sub hws(x As Integer, flg As Boolean) Dim i As Integer, s As String s = For i = 1 To Len(s) \ 2 If Then Exit For Next i If Then flg = True 82

89 3. 求水仙花数 设计如图 11-2 所示的程序界面 算法提示 : 本题目解法有两种 : (1) 对 3 位数的各位数组合进行穷举 : 利用 3 重循环, 将 3 个个位数组成一个 3 位数进行判断 例如,3 位数的各位数从高位到低位依次为 a b c, 则对应的 3 位数为 a*100+b*10+c (2) 对所有 3 位数进行穷举 : 利用一维循环对所有 3 位数进行穷举, 循环内将一个 3 位数拆成 3 个个位数进行判断 例如, 对 s=123 进行拆解时 : 个位数 =s Mod 10; 十位数 = (s\10) Mod 10; 百位数 =s\100 下面本题利用算法 (2) 进行求解, 请完善下面的程序代码 Private Sub Command1_Click() Dim i As Integer, flag As Boolean For i = 100 To 999 Next i Private Sub sxh(x As Integer) Dim a As Integer, b As Integer, c As Integer a = x Mod 10 b = 图 11-2 c = x \ 100 If Then Text1 = Text1 & x & "=" & a & "^3" & "+" & b & "^3" & "+" & c & "^3" & vbcrlf End If 83

90 4. 实训练习与思考 (1) 分析并运行以下程序, 深刻理解参数值传递和地址传递的区别 Private Sub Change1(ByVal x As Integer, ByVal y As Integer) Dim temp As Integer temp = x: x = y: y = temp Private Sub Change2(x As Integer, y As Integer) Dim temp As Integer temp = x: x = y: y = temp Private Sub Form_Click() Dim a As Integer, b As Integer a = 8: b = 15 Print "a="; a, "b="; b Call Change1(a, b) Print "a="; a, "b="; b Call Change2(a, b) Print "a="; a, "b="; b Call Change2(a + 3, b) Print "a="; a, "b="; b (2) 利用 sub 过程计算 cos(x) 的值, 并且与系统函数 cos(x) 运算的结果进行比较 计算 cos(x) 的公式如下 : n=1,2,, 要求 :n 项绝对值小于等于 10-6 为止 (3) 输出由 * 号组成的菱形和沙漏, 程序运行界面如图如示 11-3 所示 提示 : 菱形可看作是由一正一倒两个三角形底部相连组成 ; 沙漏可看作是由一 84

91 正一倒两个三角形顶端相连组成 ; 因此在程序中可以定义两个 sub 过程分别实现正 三角形和倒三角形的显示, 然后根据调用这两个过程的顺序不同来实现题目要求 图 11-3 四 实训部分关键代码 ( 可另附页 ) 85

92 五 实验小结 ( 包括实验收获 未解决问题和教学建议等 ) 86

93 实验十二 Function 过程 实验地点 : 实验日期 : 年 月 日成绩 : 一 实验目的 1. 掌握 Function 过程的定义和调用方法 2. 掌握 Sub 过程与 Function 过程的区别 3. 掌握数组作为参数传递的方法 二 实验内容 1. 编程求 1-10 之间的任一数字的阶乘 2. 编写一个求三个数最大值的函数 max(x,y,z), 然后调用此函数求下列表达式的值, 首先在文本框中输入 a,b,c 三个数, 然后单击 计算 按钮, 在文本框中输出表达式的值 m 表达式为 :m= max(a, b, c) * max(a + b, b, c) - max(a, b, b + c) 3. 随机产生 10 个两位正整数, 利用函数调用求这 10 个数的最大值和最小值 4. 实训练习与思考 三 实验记录 7. 求阶乘 设计如图 12-1 所示的程序界面, 并完善下面的程序代码 Private Sub Command1_Click() Dim x As Integer x = Val(Text1.Text) If x >= 1 And x <= 10 Then Label2.Caption = Text2 = End If 图 12-1 Private Function fac(n As Integer) As Long Dim i As Integer For i = 1 To n Next i End Function Private Sub Command2_Click() 87

94 End 2. 求表达式 m 的值 设计如图 12-2 所示的程序界面, 并完善下面的程序代码 Private Sub Command1_Click() Dim a As Integer, b As Integer Dim c As Integer, m As Integer a = Val(Text1.Text) b = Val(Text2.Text) c = Val(Text3.Text) m = Text4.Text = Private Function max(byval x As Integer, ByVal y As Integer, ByVal z As Integer) As Integer If max < y Then max = y If Then End Function Private Sub Command2_Click() End 图 求数组元素的最大值和最小值 请完善下面的程序代码 Option Base 1 Private Sub Command1_Click() Dim a(10) As Integer, i As Integer Dim max As Integer, min As Integer Randomize For i = 1 To 10 88

95 a(i) = Print a(i); Next i Print max = Print max; min Private Function f(b() As Integer, min As Integer) As Integer Dim i As Integer f = min = b(1) For i = 2 To UBound(b) If Then If min > b(i) Then min = b(i) Next i End Function 4. 实训练习与思考 (1) 给定一个十进制正整数, 找出小于它并与其互质的所有正整数 ( 所谓互质数是 指最大公约数为 1 的两个正整数, 程序运行界面如图 12-3 所示 ) 图 12-3 (2) 验证大于 3 的两个相邻素数的平方之间至少存在 4 个素数 本程序的验证范围 89

96 是大于 3 小于 30 范围内的素数 程序运行界面如图 12-4 所示 图 12-4 程序部分代码如下 : Option Explicit Option Base 1 Dim Pn() As Integer 定义动态数组 Private Sub Prime(N As Integer, Flg As Boolean) 判断素数 Dim K As Integer For K=2 To Sqr(N) If N Mod K=0 Then Exit Sub Next K Flg=True Private Sub Command1_Click() 找素数 Dim I As Integer, K As Integer, F As Boolean K=1 For I=5 To 30 F=False Call Prime(I,F) 90

97 If F Then 给动态数组 Pn 赋值, 并把找到的素数在列表框显示 ReDim Preserve Pn(K) Pn(K)=I : K=K+1 List1.AddItem I End If Next I Private Sub Command2_Click() 验证 此部分代码请独立完成 (3) 编写一个函数过程 maxlenword(s), 在一个已知的字符串 s 中求出最长的单词 假定字符串 s 内只含有字母和空格, 用空格分隔不同的单词 程序运行界面如图 12-5 所示 提示 : 在程序中可利用 Instr 函数查找字符串 s 中空格的位置, 找到一个空格后就将该位置左边的单词用 Left 函数分离出来, 同时将该位置右边的子串作为新的字符串 s( 用 Right 函数或 Mid 函数实现 ) 图

98 四 实训部分关键代码 ( 可另附页 ) 五 实验小结 ( 包括实验收获 未解决问题和教学建议等 ) 92

99 实验十三递归调用 实验地点 : 实验日期 : 年 月 日成绩 : 一 实验目的 1. 掌握递归调用的概念 2. 掌握递归调用的执行过程 二 实验内容 1. 求 1!+2!+ +10! 的阶乘之和 2. 求两个数的最大公约数和最小公倍数 3. 求菲波那契数列 F(1)=1,F(2)=1, 后面各项满足 :F(n)=F(n-1)+F(n-2) 4. 将一个正整数 n 逆输出 5. 实训练习与思考 三 实验记录 1. 求阶乘之和 设计如图 13-1 所示的程序界面, 并完善下面的程序代码 Private Sub Command1_Click() Dim i As Integer, sum As Long For i = 1 To 10 Text1.Text = sum Next i Private Function fact(n As Integer) As Long 图 13-1 If n = 1 Then fact = 1 Else End If End Function Private Sub Command2_Click() 93

100 2. 求最大公约数和最小公倍数 设计如图 13-2 所示的程序界面, 并完善下面的程序代码 Private Sub Command1_Click() Dim m As Integer, n As Integer, p As Integer m = Val(Text1.Text) n = Val(Text2.Text) p = Text3.Text = Text4.Text = Private Function gcd(m As Integer, n As Integer) As Integer If m Mod n = 0 Then Else End If End Function Private Sub Command2_Click() End 图 求菲波拉契数列 请完善下面的程序代码 (1) 求菲波那契数列第 20 项, 在图片框中输出结果 Private Sub Command1_Click() Picture1.Print f(20) Private Function f(m As Integer) As Integer 94

101 If m = 1 Or m = 2 Then Else End If End Function Private Sub Command2_Click() End (2) 求菲波那契数列前 20 项, 在图片框中输出结果 Private Sub Command1_Click() Dim i As Integer For i = 1 To 20 Next i Private Function f(m As Integer) As Integer If Then f = 1 Else f = f(m - 1) + f(m - 2) End If End Function Private Sub Command2_Click() End 4. 将一个正整数 n 逆输出 请完善下面的程序代码 Private Sub Command1_Click() Dim n As Long n = Val(Text1.Text) 95

102 Text2.Text = Private Function reverse(m As Long) As String If m = 0 Then Else End If End Function Private Sub Command2_Click() End 5. 实训练习与思考 (1) 分析以下程序的运行结果 Private Sub Command1_Click() Dim S As String S= LAUSIV Text1.Text = Display (S, Len(S)) End Sub Private Function Display(S As String, L As Integer) As String If L>1 Then Display = Display(S, L-1) S=Left(S, L-1) & Right (S, 1) & Mid (S, L, Len(S)-L) Display=S Print Display End Function (2) 执行下面程序, 在文本框 Text1 中输入数据 后单击 Command1 按钮, 分析程序的运行结果 Option Explicit Private Function pf(x As Integer) As Integer If x<100 Then 96

103 pf=x Mod 10 Else pf=pf(x\100)*10+x Mod 10 Print pf End If End Function Private Sub Command1_Click() Dim x As Integer x=text1 Print pf(x) (3) 分析以下程序的运行结果 Prviate Sub Command1_Click() Dim N As Integer, M As Integer, Lcm As Integer N=18 M=27 Lcm=Recursion(N,M) Print Lcm= ; Lcm Private Function Recursion (A As Integer, B As Integer) As Integer Static k As Integer k=k+1 If A Mod B=0 Then Recursion=A Else Recursion=Recursion(A+A/k, B) End If Print A k=0 End Function 97

104 (4) 随机生成 10 个互不相同的两位数, 从中找出所有互质数对 ( 若两个数除 1 以 外没有其他公约数, 这两个数就是互质数 ) 要求求互质数对用递归函数实现 程序 界面运行界面图 13-3 所示 图 13-3 提示 : 可定义两个过程 :notequ 和 gcd 用 sub 过程 notequ 生成 10 个互不相同的数 : 先生成一个数并将放在文本框中, 然后用 InStr(Text1, CStr(n)) = 0 语句判断下一个数 n 是否和以前的数相等, 若语句的值为真, 则把 n 的值保留下来, 用 do while 循环控制以上语句的执行 用函数过程 gcd 对数组中的任意两个数求最大公约数, 若任意两个数的最大公约数为 1, 则表示这两个数是互质数, 并把所有的互质数对放在列表框中显示 四 实训部分关键代码 ( 可另附页 ) 98

105 五 实验小结 ( 包括实验收获 未解决问题和教学建议等 ) 99

106 实验十四过程调用综合应用 实验地点 : 实验日期 : 年 月 日成绩 : 一 实验目的 1. 掌握用过程调用的方法去解决简单的实际问题 2. 掌握变量作用域的概念 3. 掌握全局变量 局部变量和静态变量的使用 二 实验内容 1. 将非十进制数转化成十进制数 2. 求所有 3 位 4 位和 5 位的 Armstrong 数, 所谓 Armstrong 数是指一个 n 位的正整数, 其各位数的 n 次方之和等于这个数 3. 编写一个简单的四则运算测试程序 4. 实训练习与思考 三 实验记录 1. 将非十进制数转化成十进制数 设计如图 14-1 所示的程序界面, 并完善下面的程序 代码 提示 : 程序中的函数过程 dec 用来返回非十进制数对应的十进制数 Private Sub Command1_Click() Dim s As String, d As Integer s = Text1 If Option1.Value Then d = dec(s, 2) ElseIf Then d = Else d = End If Text2 = CStr(d) Private Function dec(s As String, base As Integer) Dim i As Integer If base = 2 Or base = 8 Then For i = 1 To Len(s) 100

107 Next i Else For i = 1 To Len(s) If Mid(s, i, 1) > "9" Then Else dec = dec + Val(Mid(s, i, 1)) * base ^ (Len(s) - i) End If Next i End If End Function 图 求所有 3 位 4 位和 5 位的 Armstrong 数 设计如图 14-2 所示的程序界面, 并完善下面的程序代码 Option Explicit Option Base 1 Private Sub Command1_Click() Dim m As Integer, a() As Long, i As Integer, sum As Long, j As Long For j = 100 To Call 101

108 For i = UBound(a) To 1 Step -1 Next i If sum = j Then Text1 = Text1 & CStr(j) & "=" For i = UBound(a) To 2 Step -1 Text1 = Text1 & CStr(a(i) & "^" & UBound(a)) & "+" Next i End If Next j Private Sub shufj(byval n As Long, b() As Long) ' 分解 n, 注意参数的传递方式 Dim count As Integer Do While count = count + 1 b(count) = n Mod 10 Loop Private Sub Command2_Click() End 102

109 图 简单四则运算测试程序 设计如图 14-3 所示的程序界面, 并完善下面的程序代码 编程要求 : 要求单击 生成题目 命令按钮随机给出一道两个 10~100 数的加减, 或者一个 10~100 数与一个 1~10 数的乘除 ( 整除 ) 运算的算术题 在文本框中输入该题的答案, 按下回车键后, 计算机根据能对文本框中输入的答案判断正确与否, 并把结果在列表框中显示 单击 测试结果统计 框架, 在框架的文本框中显示测试成绩 单击 结束测试 命令按钮, 退出应用程序 Dim z As Integer Dim y As Integer Dim op As String Dim js As Integer, err As Integer Private Sub Command1_Click() Dim x As Integer Dim i As Integer js = js + 1 Randomize x = Int(Rnd * 4 + 1) 103

Microsoft Word - 实验3.doc

Microsoft Word - 实验3.doc 实验 3 基本控制结构 3.1 基本控制结构程序设计 实验目的 (1) 掌握 3 种基本结构的程序流程图 (2) 熟练掌握分支结构的程序设计方法 (3) 熟练掌握循环结构的程序设计方法 实验内容 Visual Basic 是结构化的程序设计语言, 有 3 种基本控制结构 : 顺序结构 分支结构和循环结构, 循环结构又分 当型 循环和 直到型 循环 其程序流程图如图 3-1 所示 真 E 假 当 E

More information

VB程序设计教程

VB程序设计教程 高 等 学 校 教 材 Visual Basic 程 序 设 计 教 程 魏 东 平 郑 立 垠 梁 玉 环 石 油 大 学 出 版 社 内 容 提 要 本 书 是 按 高 等 学 校 计 算 机 程 序 设 计 课 程 教 学 大 纲 编 写 的 大 学 教 材, 主 要 包 括 VB 基 础 知 识 常 用 程 序 结 构 和 算 法 Windows 用 户 界 面 设 计 基 础 文 件 处

More information

2010年3月计算机等级考试四级网络工程师笔试

2010年3月计算机等级考试四级网络工程师笔试 计 算 机 二 级 VB 经 典 预 测 题 下 列 各 题 A) B) C) D) 四 个 选 项 中, 只 有 一 个 选 项 是 正 确 的 请 将 正 确 选 项 填 涂 在 答 题 卡 相 应 位 置 上, 答 在 试 卷 上 不 得 分 (1) 下 列 叙 述 中 正 确 的 是 ( ) A) 循 环 队 列 是 队 列 的 一 种 链 式 存 储 结 构 B) 循 环 队 列 是 队

More information

Microsoft Word Visual_Basic程序设计上机实践教程正文.doc

Microsoft Word Visual_Basic程序设计上机实践教程正文.doc 实验 3 顺序和分支结构程序设计 实验目的 1. 掌握顺序结构的程序设计思想 2. 掌握命令按钮 (CommandButton) 标签 (Label) 文本框 (TextBox) 编辑框 (EditBox) 等常用控件的使用方法 3. 了解并掌握对话框函数 MessageBox() 的含义与用法 4. 了解和熟悉线条控件 形状控件的画法以及主要属性的用法 实验内容 1. 顺序结构 实训 3-1 编写一应用程序,

More information

C++ 程序设计 告别 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 告别 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1 C++ 程序设计 告别 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1 1 TEMPLATE 1 Template 描述 使用模板函数求最大值 使用如下 main 函数对程序进行测试 int main() { double a, b; cin >> a >> b; cout c >> d; cout

More information

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1 C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 月 3 日 1 1 INPUTOUTPUT 1 InputOutput 题目描述 用 cin 输入你的姓名 ( 没有空格 ) 和年龄 ( 整数 ), 并用 cout 输出 输入输出符合以下范例 输入 master 999 输出 I am master, 999 years old. 注意 "," 后面有一个空格,"." 结束,

More information

Microsoft Word - 第3章.doc

Microsoft Word - 第3章.doc 第 3 章流程控制和数组 3.1 实验目的 (1) 熟练掌握控制台应用程序的代码编写和调试, 以及运行方法 (2) 掌握选择结构的一般语法格式和应用 (3) 掌握 switch 语句的用法 (4) 掌握选择结构的嵌套的用法, 能灵活使用选择结构解决实际问题 (5) 掌握 while 循环语句的一般语法格式 (6) 掌握 for 循环语句的一般语法格式 (7) 掌握循环嵌套的语法格式 (8) 掌握一维数组的定义

More information

Microsoft Word - 正文.doc

Microsoft Word - 正文.doc 第 5 章循环结构程序设计 一 实验目的 (1) 掌握 For 语句的使用 (2) 掌握 Do While/Until Loop 与 Do Loop While/Until 两种循环语句的使用 (3) 加深理解循环的概念, 掌握循环的规则及其执行过程 (4) 掌握多重循环的规则和程序设计方法 (5) 学会如何控制循环条件, 防止死循环或不循环 二 相关知识在指定条件下多次重复执行一组相同的语句可以通过循环来实现

More information

四川省普通高等学校

四川省普通高等学校 四 川 省 普 通 高 等 学 校 计 算 机 应 用 知 识 和 能 力 等 级 考 试 考 试 大 纲 (2013 年 试 行 版 ) 四 川 省 教 育 厅 计 算 机 等 级 考 试 中 心 2013 年 1 月 目 录 一 级 考 试 大 纲 1 二 级 考 试 大 纲 6 程 序 设 计 公 共 基 础 知 识 6 BASIC 语 言 程 序 设 计 (Visual Basic) 9

More information

untitled

untitled Visual Basic 2005 (VB.net 2.0) hana@arbor.ee.ntu.edu.tw 立 六 數 串 數數 數 數 串 數 串 數 Len( 串 ) 串 度 Len( 123 )=3 LCase( 串 ) 串 LCase( AnB123 ) anb123 UCase( 串 ) 串 UCase( AnB123 ) ANB123 串 數 InStr([ ], 串 1, 串 2[,

More information

通用可视化开发语言实习指导书.doc

通用可视化开发语言实习指导书.doc 实习一 熟悉并掌握 VB 集成开发环境 一 实习目的 1 熟悉 VB 的开发环境 ; 2 掌握开发 VB 程序的一般步骤, 学会建立简单的 VB 应用程序 3 完成课后习题 二 原理与方法 VB 是面向对象的程序设计语言, 把程序和数据封装起来作为一个对象, 并为对象赋予应有的属性, 在设计对象时, 不必编写建立和描述每个对象的程序 代码, 而是用工具画在界面上 另外 VB 提供了可视化设计工具,

More information

提示 : (1) 程序运行时单击两次鼠标, 观察输出结果 ; (2) 将输出内容修改为 我的第一个 VB 程序 ; (3) 尝试改变输出文本的颜色 上机要求 : (1) 每题创建一个 VB 工程, 并在窗体 (Form1) 上设计界面, 在相关事件过程中编写程序 ; (2) 保存并运行应用程序 ;

提示 : (1) 程序运行时单击两次鼠标, 观察输出结果 ; (2) 将输出内容修改为 我的第一个 VB 程序 ; (3) 尝试改变输出文本的颜色 上机要求 : (1) 每题创建一个 VB 工程, 并在窗体 (Form1) 上设计界面, 在相关事件过程中编写程序 ; (2) 保存并运行应用程序 ; 第 13 章 VB 上机练习题程序最终是要在计算机上运行的, 学习程序设计过程中很重要的一个环节是上机练习, 只有将一个程序在计算机上编写 调试 运行并得到正确的结果, 才算完成了程序设计与实现 本章根据前面章节的学习内容, 将上机练习题目分类, 分别编写了 12 类上机题目, 供老师教学和上机参考 13.1 上机练习一 目的 : (1) 熟悉 Visual Basic6.0 开发环境 (2) 模仿简单的

More information

求出所有的正整数 n 使得 20n + 2 能整除 2003n n 20n n n 20n n 求所有的正整数对 (x, y), 满足 x y = y x y (x, y) x y = y x y. (x, y) x y =

求出所有的正整数 n 使得 20n + 2 能整除 2003n n 20n n n 20n n 求所有的正整数对 (x, y), 满足 x y = y x y (x, y) x y = y x y. (x, y) x y = 求出所有的正整数 n 使得 20n + 2 能整除 2003n + 2002 n 20n + 2 2003n + 2002 n 20n + 2 2003n + 2002 求所有的正整数对 (x, y), 满足 x y = y x y (x, y) x y = y x y. (x, y) x y = y x y 对于任意正整数 n, 记 n 的所有正约数组成的集合为 S n 证明 : S n 中至多有一半元素的个位数为

More information

Microsoft Word - VB全文.doc

Microsoft Word - VB全文.doc 实验 5 顺序结构 一 实验目的 1. 熟悉常用的输入和输出的方法 2. 掌握 InputBox 函数和 MsgBox 函数的用法 3. 掌握编写顺序结构程序的一般步骤 二 实验内容 1. 设计一个计算圆面积的程序 要求 : 利用 InputBox 函数输入圆的半径, 利用 MsgBox 显示最后的计算结果 2. 设计一个简单的水果商店结算程序 要求 : 利用文本框输入香蕉 梨子 苹果三类水果的单价和重量,

More information

试卷代号 : 座位号 OJ 中央广播电视大学 学年度第一学期 " 开放专科 " 期末考试 Visual Basic 程序设计试题 题号 一 二 三 四 五 总分 分数 I I I I I I I 2011 年 1 月 得分 评卷人 I I I 题 { 每小题

试卷代号 : 座位号 OJ 中央广播电视大学 学年度第一学期  开放专科  期末考试 Visual Basic 程序设计试题 题号 一 二 三 四 五 总分 分数 I I I I I I I 2011 年 1 月 得分 评卷人 I I I 题 { 每小题 试卷代号 : 2 2 3 1 座位号 OJ 中央广播电视大学 2 0 1 0-2011 学年度第一学期 " 开放专科 " 期末考试 Visual Basic 程序设计试题 题号 一 二 三 四 五 总分 分数 I 2011 年 1 月 题 { 每小题 2 分, 共 3 0 分 } 1. 对于定时器 ( Tim 盯 控件, 设置其定时是否开启的属性是 ( ) A. Index B. Tag c. Enabled

More information

实验目的 (1) 熟练掌握顺序 分支 循环三种结构 (2) 会使用流程控制结构编写程序 第三章程序的流程控制 实验要求 (1) 掌握 if-else swith-case 的使用 (2) 掌握 while do-while for 的使用 (3) 掌握分支嵌套和循环嵌套 (4) 分析理解如何避免死循

实验目的 (1) 熟练掌握顺序 分支 循环三种结构 (2) 会使用流程控制结构编写程序 第三章程序的流程控制 实验要求 (1) 掌握 if-else swith-case 的使用 (2) 掌握 while do-while for 的使用 (3) 掌握分支嵌套和循环嵌套 (4) 分析理解如何避免死循 实验目的 (1) 熟练掌握顺序 分支 循环三种结构 (2) 会使用流程控制结构编写程序 第三章程序的流程控制 实验要求 (1) 掌握 if-else swith-case 的使用 (2) 掌握 while do-while for 的使用 (3) 掌握分支嵌套和循环嵌套 (4) 分析理解如何避免死循环 实验范例 系统常用类 : 字符串类 (String) a) 从字符串 s 中截取一个字符串方法 s.substring()

More information

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP: ******************* * 关于 Java 测试试题 ******

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP:  ******************* * 关于 Java 测试试题 ****** ******************* * 关于 Java 测试试题 ******************* 問 1 运行下面的程序, 选出一个正确的运行结果 public class Sample { public static void main(string[] args) { int[] test = { 1, 2, 3, 4, 5 ; for(int i = 1 ; i System.out.print(test[i]);

More information

Microsoft Word - 小心翼翼的二十一點N.doc

Microsoft Word - 小心翼翼的二十一點N.doc 投 稿 類 別 : 資 訊 類 篇 名 : 小 心 翼 翼 的 二 十 一 點 作 者 : 陳 鈺 文 國 立 瑞 芳 高 級 工 業 職 業 學 校 資 訊 二 李 伯 謙 國 立 瑞 芳 高 級 工 業 職 業 學 校 資 訊 二 胡 家 媛 國 立 瑞 芳 高 級 工 業 職 業 學 校 資 訊 二 指 導 老 師 : 周 曉 玲 老 師 陳 思 亮 主 任 壹 前 言 一 研 究 動 機 平

More information

Visual Basic D 3D

Visual Basic D 3D Visual Basic 2008 2D 3D 6-1 6-1 - 6-2 - 06 6-2 STEP 1 5-2 (1) STEP 2 5-3 (2) - 6-3 - Visual Basic 2008 2D 3D STEP 3 User1 6-4 (3) STEP 4 User1 6-5 (4) - 6-4 - 06 STEP 5 6-6 (5) 6-3 6-3-1 (LoginForm) PictureBox1

More information

untitled

untitled 說 參 例 邏 邏 1. 說 2. 數 數 3. 8 4. 理念 李 龍老 立 1. 理 料 2. 理 料 3. 數 料 4. 流 邏 念 5. 良 6. 讀 行 行 7. 行 例 來 邏 1. 說 說 識 量 2. 說 理 類 3. 數 數 念 4. 令 5. 良 6. 流 邏 念 7. 說 邏 理 力 1. 2. 3. 4. 5. 列 念 1 參 1. ( Visual Basic 例 ) (1)

More information

Microsoft PowerPoint - OPVB1基本VB.ppt

Microsoft PowerPoint - OPVB1基本VB.ppt 大 綱 0.VB 能 做 什 麼? CH1 VB 基 本 認 識 1.VB 歷 史 與 版 本 2.VB 環 境 簡 介 3. 即 時 運 算 視 窗 1 0.VB 能 做 什 麼? Visual Basic =>VB=> 程 式 設 計 語 言 => 設 計 程 式 設 計 你 想 要 的 功 能 的 程 式 自 動 化 資 料 庫 計 算 模 擬 遊 戲 網 路 監 控 實 驗 輔 助 自 動

More information

PowerPoint Presentation

PowerPoint Presentation Visual Basic 2005 學 習 範 本 第 7 章 陣 列 的 活 用 7-1 陣 列 當 我 們 需 要 處 理 資 料 時, 都 使 用 變 數 來 存 放 資 料 因 為 一 個 變 數 只 能 代 表 一 個 資 料, 若 需 要 處 理 100 位 同 學 的 成 績 時, 便 要 使 用 100 個 不 同 的 變 數 名 稱, 這 不 但 會 增 加 變 數 名 稱 命 名

More information

启动 Visual Basic 系统, 创建一个 Form1 窗体 在该窗体上画一个图象框控件, 通过其属性窗口将名称设为 Image1, 通过其 Picture 属性将 pic1.jpg 装入图片框,Stretch 属性设为 True 画二个命令按钮控件, 通过其属性窗口将名称分别设为 Comma

启动 Visual Basic 系统, 创建一个 Form1 窗体 在该窗体上画一个图象框控件, 通过其属性窗口将名称设为 Image1, 通过其 Picture 属性将 pic1.jpg 装入图片框,Stretch 属性设为 True 画二个命令按钮控件, 通过其属性窗口将名称分别设为 Comma 二级 VB 上机试题汇编 第 01 套 : 1. 基本操作 (2 小题, 每小题 15 分, 共计 30 分 ) 请根据以下各小题的要求设计 Visual Basic 应用程序 ( 包括界面和代码 ) (1) 在名称为 Form1 的窗体上画一个名称为 Text1 的文本框, 其高 宽分别为 400 2000 请在属性框中设置适当的属性满足以下要求 : 1)Text1 的字体为 黑体, 字号为 四号

More information

TC35短信发送程序设计

TC35短信发送程序设计 http://www.dragonsoft.net.cn/down/project/tc35_sms.rar TC35 AT /down/book/tc35_at.pdf TC35/TC35i GSM Modem TC35 GSM POS COM SIM DOWN COM E, vbcr AT VB6.0 1)C# http://www.yesky.com/softchannel/72342380468109312/20040523/1800310.shtml,

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 按钮对象 (button) 当 JavaScript 读到 标记中的 type 属性值为 button 时, 自动建立一个按钮对象, 并将该对象放到表单对象的 elements 数组当中 按钮对象包括 : 普通按钮 (button) 提交按钮 (submit) 重置按钮 (reset) 1. 使用按钮对象的格式 document.forms[ 索引值 ].elements[ 索引值

More information

穨文件1

穨文件1 2-1 Access 2000 Visual Basic Access 2000 97 Office Visual Basic Visual Basic Visual Basic VBA Visual Basic Visual Basic 2-1-1 Visual Basic Access Visual Basic ( ) 2-1 2-1 Visual Basic 2-1 Microsoft Access

More information

chap07.key

chap07.key #include void two(); void three(); int main() printf("i'm in main.\n"); two(); return 0; void two() printf("i'm in two.\n"); three(); void three() printf("i'm in three.\n"); void, int 标识符逗号分隔,

More information

2

2 1 2 1-1 Visual Basic 3 1-2 3/8-3/21 3/22-4/4 4/5-4/18 4/19-5/2 5/3-5/16 5/17-5/30 5/31-6/13 6/14-6/27 6/28-7/11 7/12-7/25 7/26-8/8 8/9-8/22 8/25-9/5 9/6-9/19 9/20-10/3 10/4-10/17 10/18-10/31 11/15-11/28

More information

《C语言程序设计》教材习题参考答案

《C语言程序设计》教材习题参考答案 教材名称 : C 语言程序设计 ( 第 1 版 ) 黄保和 江弋编著清华大学出版社 ISBN:978-7-302-13599-9, 红色封面 答案制作时间 :2011 年 2 月 -5 月 一 选择题 1. 设已定义 int a, * p, 下列赋值表达式中正确的是 :C)p=&a 2. 设已定义 int x,*p=&x;, 则下列表达式中错误的是 :B)&*x 3. 若已定义 int a=1,*b=&a;,

More information

2009年3月二级VB语言笔试真题

2009年3月二级VB语言笔试真题 2008 年 4 月 计 算 机 二 级 考 试 VB 笔 试 试 题 一 选 择 题 ( 每 题 2 分, 共 计 70 分 ) 1. 程 序 流 程 图 中 带 有 箭 头 的 线 段 表 示 的 是 A) 图 元 关 系 B) 数 据 流 C) 控 制 流 D) 调 用 关 系 2. 结 构 化 程 序 设 计 的 基 本 原 则 不 包 括 A) 多 态 性 B) 自 顶 向 下 C) 模

More information

<4D F736F F D D342DA57CA7DEA447B14D2DA475B57BBB50BADEB27AC3FEB14DA447B8D5C344>

<4D F736F F D D342DA57CA7DEA447B14D2DA475B57BBB50BADEB27AC3FEB14DA447B8D5C344> 1. 請 問 誰 提 出 積 體 電 路 (IC) 上 可 容 納 的 電 晶 體 數 目, 約 每 隔 24 個 月 (1975 年 更 改 為 18 個 月 ) 便 會 增 加 一 倍, 效 能 也 將 提 升 一 倍, 也 揭 示 了 資 訊 科 技 進 步 的 速 度? (A) 英 特 爾 (Intel) 公 司 創 始 人 戈 登. 摩 爾 (Gordon Moore) (B) 微 軟 (Microsoft)

More information

C/C++ - 函数

C/C++ - 函数 C/C++ Table of contents 1. 2. 3. & 4. 5. 1 2 3 # include # define SIZE 50 int main ( void ) { float list [ SIZE ]; readlist (list, SIZE ); sort (list, SIZE ); average (list, SIZE ); bargragh

More information

Microsoft PowerPoint - VB14.ppt

Microsoft PowerPoint - VB14.ppt VB 列表盒 LISTBOX 應用 資科系 林偉川 執行畫面 1 2 1 重要屬性 LISTBOX 物件 (VB6) 新增至 LISTBOX 物件中 ADDITEM 自 LISTBOX 物件中刪除選取物件 REMOVEITEM 自 LISTBOX 物件中取出選取物件 ListIndex 顯示 LISTBOX 物件中紀錄個數 Listcount 3 LISTBOX 物件 (VB.NET) 重要屬性 新增至

More information

<4D F736F F F696E74202D BDE1B9B9BBAFB3CCD0F2C9E8BCC D20D1ADBBB7>

<4D F736F F F696E74202D BDE1B9B9BBAFB3CCD0F2C9E8BCC D20D1ADBBB7> 能源与动力工程学院 结构化编程 结构化程序设计 循环 循环结构 确定性循环 非确定性循环 I=1 sum=sum+i I = I +1 陈 斌 I>100 Yes No 目录 求和 :1+2+3++100 第四节循环的应用 PROGRAM GAUSS INTEGER I, SUM 计数器 SUM = 0 DO I = 1, 100, 1 SUM = SUM + I print*, I, SUM DO

More information

第一章三角函数 1.3 三角函数的诱导公式 A 组 ( ) 一 选择题 : 共 6 小题 1 ( 易诱导公式 ) 若 A B C 分别为 ABC 的内角, 则下列关系中正确的是 A. sin( A B) sin C C. tan( A B) tan C 2 ( 中诱导公式 ) ( ) B. cos(

第一章三角函数 1.3 三角函数的诱导公式 A 组 ( ) 一 选择题 : 共 6 小题 1 ( 易诱导公式 ) 若 A B C 分别为 ABC 的内角, 则下列关系中正确的是 A. sin( A B) sin C C. tan( A B) tan C 2 ( 中诱导公式 ) ( ) B. cos( 第一章三角函数 1. 三角函数的诱导公式 A 组 一 选择题 : 共 6 小题 1 ( 易诱导公式 ) 若 A B C 分别为 ABC 的内角 则下列关系中正确的是 A. sin( A B) sin C C. tan( A B) tan C ( 中诱导公式 ) B. cos( B C) cos A D. sin( B C) sin A sin60 cos( ) sin( 0 )cos( 70 ) 的值等于

More information

《Visual Basic程序设计》实验课

《Visual Basic程序设计》实验课 Visual Basic Visual Basic dstang2000@263.net 0 Visual Basic 1 0...1 1 Visual Basic...2 2...3 3...6 4...9 5...13 6...16 7...18 8...22 9...24 10...27 11...29 12 API...31 13...34 14...35 15...38 1 1 Visual

More information

《C语言程序设计》第2版教材习题参考答案

《C语言程序设计》第2版教材习题参考答案 教材 C 语言程序设计 ( 第 2 版 ) 清华大学出版社, 黄保和, 江弋编著 2011 年 10 月第二版 ISBN:978-7-302-26972-4 售价 :35 元 答案版本 本习题答案为 2012 年 2 月修订版本 一 选择题 1. 设已定义 int a, * p, 下列赋值表达式中正确的是 :C)p = &a A. *p = *a B. p = *a C.p = &a D. *p =

More information

Generated by Unregistered Batch DOC TO PDF Converter , please register! 浙江大学 C 程序设计及实验 试题卷 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:3

Generated by Unregistered Batch DOC TO PDF Converter , please register! 浙江大学 C 程序设计及实验 试题卷 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:3 浙江大学 C 程序设计及实验 试题卷 2002-2003 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:30-10:30 注意 : 答题内容必须写在答题卷上, 写在本试题卷上无效 一. 单项选择题 ( 每题 1 分, 共 10 分 ) 1. 下列运算符中, 优先级最低的是 A.

More information

Microsoft PowerPoint - 01_Introduction.ppt

Microsoft PowerPoint - 01_Introduction.ppt Hello, World C 程序设计语言 第 1 章章观其大略 孙志岗 sun@hit.edu.cn http://sunner.cn prf("hello,, world\n"); 超级无敌考考你 : 如何把 hello 和 world 分别打印在两行? 2004-12-19 A Tutorial Introduction 2 hello.c 打印华氏温度与摄氏温度对照表 计算公式 : C=(5/9)(

More information

内容简介 本书是 Visual Basic 程序设计 ( 科学出版社出版, 范通让 王学军主编 ) 的配套实训教材, 由两部分组成 第一部分是实训指导, 共 15 个实训项目, 每个实训项目均指出了本部分需掌握的重点内容, 并给出了理论知识要点 实训步骤及程序代码, 使学生能逐步了解 Visual

内容简介 本书是 Visual Basic 程序设计 ( 科学出版社出版, 范通让 王学军主编 ) 的配套实训教材, 由两部分组成 第一部分是实训指导, 共 15 个实训项目, 每个实训项目均指出了本部分需掌握的重点内容, 并给出了理论知识要点 实训步骤及程序代码, 使学生能逐步了解 Visual 普通高等教育 十二五 重点规划教材计算机系列中国科学院教材建设专家委员会 十二五 规划教材 Visual Basic 程序设计实训教程 王学军主编 赵涓涓副主编 杨艳主审 北京 内容简介 本书是 Visual Basic 程序设计 ( 科学出版社出版, 范通让 王学军主编 ) 的配套实训教材, 由两部分组成 第一部分是实训指导, 共 15 个实训项目, 每个实训项目均指出了本部分需掌握的重点内容,

More information

untitled

untitled 1-1 1-2 1-3 1-4 1-5 1-6 1-7 1-8 1-1-1 C int main(void){ int x,y,z; int sum=0; double avg=0.0; scanf("%d",&x) ; scanf("%d",&y) ; scanf("%d",&z) ; sum=x+y+z ; avg=sum/3.0; printf("%f\n",avg); system("pause");

More information

普通高等教育 十二五 规划教材中国科学院教材建设专家委员会 十二五 规划教材 Visual Basic 程序设计实践教程 刘必雄 编著 北 京 科学出版社职教技术出版中心 www.aboo 内容简介 本书是 Visual Basic 程序设计 ( 刘必雄编著, 科学出版社出版 ) 的配套教学用书, 是作者多年教学实践经验的总结 全书分为 3 篇 : 第一篇为上机实验, 根据教学要求安排了 10 个实验,

More information

标题

标题 绝密绎考试结束前 浙江省 2019 年 4 月高等教育自学考试 Visual Basic 程序设计试题 课程代码 :07759 请考生按规定用笔将所有试题的答案涂 写在答题纸上 注意事项 : 选择题部分 1. 答题前, 考生务必将自己的考试课程名称 姓名 准考证号用黑色字迹的签字笔或钢笔 填写在答题纸规定的位置上 2. 每小题选出答案后, 用 2B 铅笔把答题纸上对应题目的答案标号涂黑 如需改动,

More information

ExcelUtility 类库使用说明 ( 续 ) 开发 / 设计 : 左文俊 第一个新增功能, 列宽自适应, 当超过 30 个字符则将单元格内容设为换行 任意一个无模板的导出方法均支持该功能, 示例代码如下 : /// <summary> /// 测试方法

ExcelUtility 类库使用说明 ( 续 ) 开发 / 设计 : 左文俊 第一个新增功能, 列宽自适应, 当超过 30 个字符则将单元格内容设为换行 任意一个无模板的导出方法均支持该功能, 示例代码如下 : /// <summary> /// 测试方法 ExcelUtility 类库使用说明 ( 续 ) 开发 / 设计 : 左文俊 第一个新增功能, 列宽自适应, 当超过 0 个字符则将单元格内容设为换行 任意一个无模板的导出方法均支持该功能, 示例代码如下 : 0 /// 测试方法 : 测试将 DataTable 导出到 EXCEL, 无模板 public void TestExportToExcelByDataTable() string excelpath

More information

数学分析(I)短课程 [Part 2] 4mm 自然数、整数和有理数

数学分析(I)短课程 [Part 2]   4mm 自然数、整数和有理数 .. 数学分析 (I) 短课程 [Part 2] 自然数 整数和有理数 孙伟 华东师范大学数学系算子代数中心 Week 2 to 18. Fall 2014 孙伟 ( 数学系算子代数中心 ) 数学分析 (I) 短课程 Week 2 to 18. Fall 2014 1 / 78 3. 自然数理论初步 孙伟 ( 数学系算子代数中心 ) 数学分析 (I) 短课程 Week 2 to 18. Fall 2014

More information

标题

标题 绝密 考试结束前 浙江省 2015 年 4 月高等教育自学考试 VisualBasic 程序设计试题 课程代码 :07759 请考生按规定用笔将所有试题的答案涂 写在答题纸上 注意事项 : 选择题部分 1. 答题前, 考生务必将自己的考试课程名称 姓名 准考证号用黑色字迹的签字笔或钢笔 填写在答题纸规定的位置上 2. 每小题选出答案后, 用 2B 铅笔把答题纸上对应题目的答案标号涂黑 如需改动, 用橡

More information

2009年3月二级VB语言笔试真题

2009年3月二级VB语言笔试真题 2008 年 9 月 计 算 机 二 级 VB 语 言 真 题 一 选 择 题 ( 每 题 2 分, 共 计 70 分 ) 1. 一 个 栈 的 初 始 状 态 为 空 现 将 元 素 1 2 3 4 5 A B C D E 依 次 入 栈, 然 后 再 依 次 出 栈, 则 元 素 出 栈 的 顺 序 是 A)12345ABCDE B)EDCBA54321 C)ABCDE12345 D)54321EDCBA

More information

Microsoft Word - 專題製作研究報告書.doc

Microsoft Word - 專題製作研究報告書.doc 大 富 翁 之 我 要 畢 業 指 導 老 師 : 王 啟 修 參 賽 學 生 : 吳 皇 逸 林 晉 逸 黃 亭 瑋 賴 建 豫 嘉 義 高 商 資 料 處 理 科 摘 要 本 專 題 以 大 富 翁 遊 戲 為 基 本 題 材, 並 參 考 任 天 堂 遊 戲 公 司 製 作 的 Mario Party 電 視 遊 戲 和 各 代 的 大 富 翁, 將 不 同 風 格 的 小 遊 戲 與 傳 統

More information

内容简介本书是 Visual Basic 程序设计 ( 曲宏山 饶拱维主编, 科学出版社 ) 或其他同类 Visual Basic 程序设计教材配套使用的上机实验指导用书, 是编者多年教学和软件开发实践经验的总结 全书共 14 个实验, 在每个实验前都列出了相关章节的知识点, 以方便读者对所学内容加

内容简介本书是 Visual Basic 程序设计 ( 曲宏山 饶拱维主编, 科学出版社 ) 或其他同类 Visual Basic 程序设计教材配套使用的上机实验指导用书, 是编者多年教学和软件开发实践经验的总结 全书共 14 个实验, 在每个实验前都列出了相关章节的知识点, 以方便读者对所学内容加 普通高等教育 十二五 重点规划教材公共课系列普通高等教育 十二五 规划教材 Visual Basic 程序设计上机指导 曲宏山饶拱维主编 张帆杨贵茂王楠副主编 北京 内容简介本书是 Visual Basic 程序设计 ( 曲宏山 饶拱维主编, 科学出版社 ) 或其他同类 Visual Basic 程序设计教材配套使用的上机实验指导用书, 是编者多年教学和软件开发实践经验的总结 全书共 14 个实验,

More information

ThreeDtunnel.doc

ThreeDtunnel.doc (12) 1 1. Visual Basic Private Sub LoadDatabase() Dim strip As String Dim straccount As String Dim strpassword As String Dim strdatabase As String Dim strtable As String Dim strsql As String Dim strtemp1

More information

《计算概论》课程 第十九讲 C 程序设计语言应用

《计算概论》课程 第十九讲  C 程序设计语言应用 计算概论 A 程序设计部分 字符数组与字符串 李戈 北京大学信息科学技术学院软件研究所 lige@sei.pku.edu.cn 字符数组的定义 #include int main() char a[10] = 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j' ; for (int i = 0; i < 10; i++) cout

More information

Microsoft Word - Vcj05.doc

Microsoft Word - Vcj05.doc 第 5 章选择结构程序设计 在日常生活和工作中, 经常会遇到各种各样的选择, 根据选择的不同, 会得到不同的结果 在程序设计中, 也经常会根据不同的情况执行不同的操作, 这与现实生活中的选择非常类似 但程序设计中的选择结构根据条件只能选择一个分支执行, 即无论分支多寡, 必择其一 ; 纵然分支众多, 仅选其一 本章主要介绍实现选择结构程序设计方面的知识, 包括 If 语句 Select Case 语句

More information

Excel VBA Excel Visual Basic for Application

Excel VBA  Excel Visual Basic for Application Excel VBA Jun5,00 Sub 分頁 () Dim i As Integer Dim Cname As String Dim Code As Variant Set score=thisworkbook.sheets("sheet") Code=Array(" 專北一 "," 專北二 "," 專北三 "," 專桃園 "," 專桃竹 "," 專中苗 ", " 專台中 "," 專台南 ","

More information

VB控件教程大全

VB控件教程大全 Datagrid DataGrid1.Columns.Remove(0) ' 0 DataGrid1.Columns.Add(0).Caption= ' DataGrod1.Columns(0).DataField= Name ' Adodc1.Refresh DataGrid BackColor Font DataGrid CellPadding HTML CellSpacing HTML Width

More information

第 3 章选择结构 q q q Python 中表示条件的方法 if 语句 选择结构程序设计方法

第 3 章选择结构 q q q Python 中表示条件的方法 if 语句 选择结构程序设计方法 第 3 章选择结构 q q q Python 中表示条件的方法 if 语句 选择结构程序设计方法 3.1 条件的描述 3.1.1 关系运算 Python 的关系运算符有 : =( 大于等于 ) ==( 等于 )!=( 不等于 ) 关系运算符用于两个量的比较判断 由关系运算符将两个表达式连接起来的式子就称为关系表达式, 它用来表示条件, 其一般格式为

More information

Microsoft Word - CX1000-HMI_程序开发_PLC通讯

Microsoft Word - CX1000-HMI_程序开发_PLC通讯 用 VB.Net 开发 CX1000 的 HMI 第二部分和 TwinCAT PLC 通讯 一 TwinCAT 动态库 TwinCAT.Ads.dll The TwinCAT.Ads.dll 是一个.NET 类库, 它提供和 ADS 设备通讯的类 如果 TwinCAT PLC 运行在 IPC 上, 则需要添加的类库是路径 \TwinCAT\ADS Api\.NET\v1.1.4322 下的 TwinCAT.Ads.dll

More information

untitled

untitled 例 立 劉 1 1991 來 Schollmeyer,1996; Volet & Lund, 1994 邏 力 林 2004 歷年 路 類 列 若 邏 力 來 路 力 益 例 數 列 類 論 數 識 數 數 沈 練 念 不 1991 狀 狀 理歷 Mayer, 1992 不 力 不 力 立 1994 了 更 參 力 力 力 靈 力 力 來 識 立 練 識 力 2000 來 1995 切 識 異 勵

More information

4. 有程序代码如下 : Text!' Text= "Visual Basic" 则 Te xtl ~ Te xt, 和 " V i s ua l Basi c " 分别代表 ( ) A. 对象, 值, 属性 B. 对象, 方法, 属性 C. 对象, 属性, 值专 D. 属性, 对象, 值 5. 要

4. 有程序代码如下 : Text!' Text= Visual Basic 则 Te xtl ~ Te xt, 和  V i s ua l Basi c  分别代表 ( ) A. 对象, 值, 属性 B. 对象, 方法, 属性 C. 对象, 属性, 值专 D. 属性, 对象, 值 5. 要 试卷代号 : 2 2 3 1 中央广播电视大学 2 0 1 3-20 1 4 学年度第一学期 " 开放专科 " 期末考试 Visual Basic 程序设计 试题 2014 年 1 月 注意事项 一 将你的学号 姓名及分校 { 工作站 } 名称填写在答题纸的规定栏内 考试结束后, 把试卷和答题纸放在桌上 试卷和答题纸均不得带出考场 监考人收完考卷和答题纸后才可离开考场 二 仔细读懂题目的说明, 并按题目要求答题

More information

Microsoft Word - 实验3.doc

Microsoft Word - 实验3.doc 实验 3 C# 和 ASP.NET 4.5 一 实验目的 (1) 了解 C# 语言规范 (2) 掌握 C# 基础语法 流程控制和异常处理等 (3) 掌握创建 C# 类并应用于 ASP.NET 4.5 页面中的方法 (4) 掌握 ASP.NET 4.5 页面的调试方法 二 实验内容及要求 1. 转换输入的成绩到相应的等级要求如下 : (1) 页面浏览效果如图 3-1 所示 (2) 成绩输入使用 TextBox

More information

普通高等教育 十二五 规划教材公共课系列 高级语言程序设计 Visual Basic 实训 刘立群刘冰周颖 主编 刘哲邹丽娜杨林姣宋倬 副主编 杨林姣宋倬参 周进钱进参 编 编 科学出版社职教技术出版中心 www.aboo 北 京 内容简介本书是 高级语言程序设计 Visual Basic ( 刘立群等主编, 科学出版社出版 ) 的配套教材, 全书包括实验篇和习题篇 实验篇是根据教程中知识点精心设计的上机实验内容,

More information

《C语言程序设计》教材习题参考答案

《C语言程序设计》教材习题参考答案 教材名称 : C 语言程序设计 ( 第 1 版 ) 黄保和 江弋编著清华大学出版社 ISBN: 978-7-302-13599-9, 红色封面答案制作时间 :2011 年 2 月 -5 月一 选择题 1. 以下数组定义中, 错误的是 :C)int a[3]=1,2,3,4; 2. 以下数组定义中, 正确的是 :B) int a[][2]=1,2,3,4; 3. 设有定义 int a[8][10];,

More information

实验报告 实验题目 Java 实验 (1) 实验目的 学习 Java 语言的编程 实验准备 直接从网上或从上传作业的网站上下载并安装 JDK

实验报告 实验题目 Java 实验 (1) 实验目的 学习 Java 语言的编程 实验准备 直接从网上或从上传作业的网站上下载并安装 JDK 实验题目 Java 实验 (1) 实验目的 学习 Java 语言的编程 实验准备 直接从网上或从上传作业的网站上下载并安装 JDK http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk8-downloads-2133151-zhs.html 预备知识 (1) 常量定义 final int LEVEL_NUM = 1000; (2)

More information

TwinCAT 1. TwinCAT TwinCAT PLC PLC IEC TwinCAT TwinCAT Masc

TwinCAT 1. TwinCAT TwinCAT PLC PLC IEC TwinCAT TwinCAT Masc TwinCAT 2001.12.11 TwinCAT 1. TwinCAT... 3 2.... 4... 4...11 3. TwinCAT PLC... 13... 13 PLC IEC 61131-3... 14 4. TwinCAT... 17... 17 5. TwinCAT... 18... 18 6.... 19 Maschine.pro... 19... 27 7.... 31...

More information

download.kaoyan.com_2006ÄêÌì½ò¹¤Òµ´óѧ¸ß¼¶ÓïÑÔ³ÌÐòÉè¼Æ£¨409£©¿¼ÑÐÊÔÌâ

download.kaoyan.com_2006ÄêÌì½ò¹¤Òµ´óѧ¸ß¼¶ÓïÑÔ³ÌÐòÉè¼Æ£¨409£©¿¼ÑÐÊÔÌâ 考生注意 : 本试卷共七大题, 满分 150 分 考试时间为 3 小时 ; 所有答案均写在答题纸上 ( 注明题号 ), 在此答题一律无效无效 一 选择题 ( 本题共 20 小题, 每小题 2 分, 满分 40 分 ) 1 char ch 1 2 A 0

More information

投稿類別:電子工程類

投稿類別:電子工程類 投 稿 類 別 : 工 程 技 術 類 篇 名 : 井 字 生 死 戰 攻 略 作 者 : 陳 威 宇 國 立 臺 南 高 級 海 事 水 產 職 業 學 校 電 子 科 二 年 甲 班 邱 富 群 國 立 臺 南 高 級 海 事 水 產 職 業 學 校 電 子 科 二 年 甲 班 指 導 老 師 : 林 育 助 老 師 王 彥 盛 老 師 壹 前 言 家 喻 戶 曉 的 井 字 遊 戲 (Tic-Tac-Toe)

More information

手册 doc

手册 doc 1. 2. 3. 3.1 3.2 3.3 SD 3.4 3.5 SD 3.6 3.7 4. 4.1 4.2 4.3 SD 4.4 5. 5.1 5.2 5.3 SD 6. 1. 1~3 ( ) 320x240~704x288 66 (2G SD 320x2401FPS ) 32M~2G SD SD SD SD 24V DC 3W( ) -10~70 10~90% 154x44x144mm 2. DVR106

More information

CHAPTER VC#

CHAPTER VC# 1. 2. 3. 4. CHAPTER 2-1 2-2 2-3 2-4 VC# 2-5 2-6 2-7 2-8 Visual C# 2008 2-1 Visual C# 0~100 (-32768~+32767) 2 4 VC# (Overflow) 2-1 2-2 2-1 2-1.1 2-1 1 10 10!(1 10) 2-3 Visual C# 2008 10! 32767 short( )

More information

Microsoft Word - 新1-16最新.doc

Microsoft Word - 新1-16最新.doc 项目 5 制作 36 选 7 摇奖机 本项目是制作一个 36 选 7 的摇奖机, 包括摇出 6 个正选号码和 1 个特选号码, 要具有没有重复号码 ; 可以多次摇奖等功能 利用控件数组来设计摇奖机界面, 产生随机数, 通过循环控制语句和分支控制语句产生满足要求的摇奖号码, 并把产生的摇奖号码显示在界面上 通过本项目, 应掌握循环结构 随机数以及控件数组的使用方法和技巧 1.Label 控件 属性 事件

More information

27 :OPC 45 [4] (Automation Interface Standard), (Costom Interface Standard), OPC 2,,, VB Delphi OPC, OPC C++, OPC OPC OPC, [1] 1 OPC 1.1 OPC OPC(OLE f

27 :OPC 45 [4] (Automation Interface Standard), (Costom Interface Standard), OPC 2,,, VB Delphi OPC, OPC C++, OPC OPC OPC, [1] 1 OPC 1.1 OPC OPC(OLE f 27 1 Vol.27 No.1 CEMENTED CARBIDE 2010 2 Feb.2010!"!!!!"!!!!"!" doi:10.3969/j.issn.1003-7292.2010.01.011 OPC 1 1 2 1 (1., 412008; 2., 518052), OPC, WinCC VB,,, OPC ; ;VB ;WinCC Application of OPC Technology

More information

没有幻灯片标题

没有幻灯片标题 指针作为函数参数 : 原因 : 1 需要修改一个或多个值,( 用 return 语句不能解决问题 ) 2 执行效率的角度 使用方法 : 在函数原型以及函数首部中需要声明能够接受指针值的形参, 具体的写法为 : 数据类型 * 形参名 如果有多个指针型形参, 则用逗号分隔, 例如 : void swap(int *p1, int *p2) 它说明了形参 p1 p2 是指向整型变量的指针 在函数调用时,

More information

穨ac3-3.PDF

穨ac3-3.PDF 3-1 Access 3-1-1 Event Click OnClick Click OnClick AfterUpdate BeforeUpdate On After Before > VBA( ) 3-1 3-1 Access Open Load Sub Funtion 3-1-2 Sub Funtion Private Me Me Forms Reports Form Report VisualBasic

More information

1. 要退出 Do---Loop 循环, 可使用的语句是 ( ) 语句 A. Exit B. Exit For C. Exit Do D. End Do 5. 有程序代码如下 : Text1. Text=" 欢迎学习 VB!" 则 T e x t 1, Text, 和 " 欢迎学习 VB!" 分别代

1. 要退出 Do---Loop 循环, 可使用的语句是 ( ) 语句 A. Exit B. Exit For C. Exit Do D. End Do 5. 有程序代码如下 : Text1. Text= 欢迎学习 VB! 则 T e x t 1, Text, 和  欢迎学习 VB! 分别代 试卷代号 : 2 2 3 1 中央广播电视大学 2 0 1 2-2 0 1 3 学年度第二学期 " 开放专科 " 期末考试 Visual Basic 程序设计试题 2013 年 7 月 注意事项 一 将你的学号 姓名及分校 { 工作站 ) 名称填写在答题纸的规定栏内 考试结束后, 把试卷和答题纸放在桌上 试卷和答题纸均不得带出考场 监考人收完考卷和答题纸后才可离开考场 二 仔细读懂题目的说明, 并按题目要求答题

More information

幻灯片 1

幻灯片 1 第一类换元法 ( 凑微分法 ) 学习指导 复习 : 凑微分 部分常用的凑微分 : () n d d( (4) d d( ); (5) d d(ln ); n n (6) e d d( e ); () d d( b); ); () d d( ); (7) sin d d (cos ) 常见凑微分公式 ); ( ) ( ) ( b d b f d b f ); ( ) ( ) ( n n n n d f

More information

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页 第 1 页共 32 页 crm Mobile V1.0 for IOS 用户手册 一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页 二 crm Mobile 界面介绍 : 第 3 页共 32 页 三 新建 (New) 功能使用说明 1 选择产品 第 4 页共 32 页 2 填写问题的简要描述和详细描述 第 5 页共

More information

Microsoft Word - 第3章.doc

Microsoft Word - 第3章.doc CHAPTER 3 第章 Visual Basic 语言基本结构 Visual Basic 支持结构化的程序设计方法, 由结构组成程序, 通过各种算法,VB 程序可以解决不同的具体问题 3.1 基本控制结构 VB 是结构化的程序设计语言 结构化设计方法的特点是程序结构清晰, 易读性强, 也易于查错和排错 结构化程序有 3 种基本控制结构 : 顺序结构 分支结构和循环结构 这 3 种基本结构都具有单入口

More information

6. 4 5 6 7 8 9 10 11 ...1... 1...1...1...2... 3...3...5...9... 11...11...11...12...12... 13...13...14... 16...16...19...20 I 1 ---------------------------------------------------3 2 ------------------------------------------------6

More information

<4D F736F F D DA5BFA6A1C476C1C92DBEC7ACECB8D5A8F728B57BB35D292E646F63>

<4D F736F F D DA5BFA6A1C476C1C92DBEC7ACECB8D5A8F728B57BB35D292E646F63> 全國高級中等學校 106 學年度商業類科學生技藝競賽 程式設計 職種 學科 試卷 選手證號碼 ( 崗位編號 ): 姓名 : 注意事項 : 請將答案劃記於答案卡, 未依規定劃記者不予計分 試題說明 :( 選擇題共 25 題每題 4 分, 答錯不倒扣, 共 100 分 ) ( )1. 執行以下 Visual Basic 程式片段, 其結果為何?(A) 15 (B) 12 (C) 7 (D) 3 Dim

More information

内容简介 本书是根据教育部高等学校计算机科学与技术教学指导委员会关于 计算机程序设计基础课程教学基本要求 编写而成的, 是与 VisualBasic 程序设计 ( 段昌敏主编, 科学出版社 ) 配套的实训教材 为配合主教材的章节顺序和知识点, 本书的第一部分包含 13 个配套实验, 实验内容具有很强

内容简介 本书是根据教育部高等学校计算机科学与技术教学指导委员会关于 计算机程序设计基础课程教学基本要求 编写而成的, 是与 VisualBasic 程序设计 ( 段昌敏主编, 科学出版社 ) 配套的实训教材 为配合主教材的章节顺序和知识点, 本书的第一部分包含 13 个配套实验, 实验内容具有很强 普通高等教育 十二五 重点规划教材 计算机系列 中国科学院教材建设专家委员会 十二五 规划教材 VisualBasic 程序设计实验指导与习题解答 段昌敏主编 涂祥副主编 科学出版社职教技术出版中心 www.aboo 北 京 内容简介 本书是根据教育部高等学校计算机科学与技术教学指导委员会关于 计算机程序设计基础课程教学基本要求 编写而成的, 是与 VisualBasic 程序设计 ( 段昌敏主编,

More information

期中考试试题讲解

期中考试试题讲解 一 选择题 ( 一 ) 1. 结构化程序设计所规定的三种基本结构是 C A 主程序 子程序 函数 B 树形 网形 环形 C 顺序 选择 循环 D 输入 处理 输出 2. 下列关于 C 语言的叙述错误的是 A A 对大小写不敏感 B 不同类型的变量可以在一个表达式中 C main 函数可以写在程序文件的任何位置 D 同一个运算符号在不同的场合可以有不同的含义 3. 以下合法的实型常数是 C A.E4

More information

Microsoft Word - 扉页

Microsoft Word - 扉页 社 心 版 中 出 版 学 科 术出 k.cn o 技 o b 教 a. 职 ww w 高 等 教 育 十 一 五 规 划 教 材 Visual Basic 程 序 设 计 实 验 指 导 与 习 题 集 郭 元 辉 冯 庆 煜 主 编 李 军 陈 亚 军 副 主 编 北 京 内 容 简 介 本 书 是 与 Visual Basic 程 序 设 计 教 程 配 套 使 用 的 上 机 练 习 和 习

More information

Microsoft PowerPoint - Chapter5

Microsoft PowerPoint - Chapter5 CH5 表 單 與 控 制 項 課 程 目 標 : 暸 解 VBA 語 言 中 的 控 制 項 及 常 用 屬 性 表 單 在 視 窗 環 境 中, 使 用 者 所 使 用 的 對 話 窗, 精 靈 等 都 是 以 表 單 為 基 本 單 位, 再 加 上 其 它 控 制 項 所 構 成 的 操 作 環 境 利 用 插 入 表 單 為 指 定 的 專 案 插 入 一 個 自 訂 表 單 表 單 常

More information

SMM667.mps

SMM667.mps 第 章 设 计 简 单 程 序 本 章 是 学 习 VB 程 序 设 计 的 入 门 篇, 其 中 涉 及 的 几 个 常 用 控 件 和 基 本 语 句 是 后 续 章 节 中 反 复 使 用 的 基 础 内 容 学 习 目 标 瞯 了 解 顺 序 程 序 结 构 瞯 熟 悉 用 户 界 面 的 设 计 和 简 单 代 码 设 计 瞯 掌 握 赋 值 语 句 和 InputBox MsgBox Print

More information

《C语言程序设计》

《C语言程序设计》 C 语言程序设计 实验教学大纲 信息科学与技术学院 2015 年 6 月 C 语言程序设计 课程实验教学大纲 课程名称 :C 语言程序设计英文名称 :The C Programming Language 课程编号 : 课程性质 : 非独立设课课程属性 : 专业课实验教材或指导书类型 : 统编课程总学时 :75 学分 :4 实验学时 :30 实验学分 :1 适用专业 : 数字媒体技术实验室名称 : 先修课程

More information

<4D F736F F D B0D3B77EC3FEA7DEC3C0C476C1C9A5BFA6A1B8D5C3442DB57BA6A1B35DAD702DBEC7ACEC2E646F6378>

<4D F736F F D B0D3B77EC3FEA7DEC3C0C476C1C9A5BFA6A1B8D5C3442DB57BA6A1B35DAD702DBEC7ACEC2E646F6378> 全國國高級中中等學校 105 學年度商商業類學學生技藝藝競賽 程式式設計 職職種 學學科 試試卷 崗位位編號 : 姓名 : 注意事項 : 請將答案案劃記於答案案卡, 未依依規定劃記者者不予計分分 試題說明 :( 選擇題每每題 4 分, 共 100 分 ) ( )1. 執行以下 Visual Basic 程式片段, 其結果為何?(A) 15 Dim i As Byte i = &HFC Console.WriteLine(Not

More information

MVB-1001.DOC

MVB-1001.DOC 20 1.5 10 15 20 25 80 100 CSF 1. 2. 0105 3. 4. 5. 30% 1.5 0.75 1. Visual Basic Visual Basic (A) Visual Basic Enterprise Edition (B) Visual Basic Script Edition (C) Visual Basic Learning Edition (D) Visual

More information

Microsoft PowerPoint - 4. 数组和字符串Arrays and Strings.ppt [兼容模式]

Microsoft PowerPoint - 4. 数组和字符串Arrays and Strings.ppt [兼容模式] Arrays and Strings 存储同类型的多个元素 Store multi elements of the same type 数组 (array) 存储固定数目的同类型元素 如整型数组存储的是一组整数, 字符数组存储的是一组字符 数组的大小称为数组的尺度 (dimension). 定义格式 : type arrayname[dimension]; 如声明 4 个元素的整型数组 :intarr[4];

More information

vb

vb Visual Basic 程序设计 实验指导书 计算机科学与技术学院 陈治伯 目 录 实验一 Visual Basic 程序设计...3 实验二顺序程序设计...5 实验三顺序程序设计...7 实验四循环结构程序设计...10 实验五数组...13 实验六过程...18 实验七常用控件...22 2 实验一 Visual Basic 程序设计 一 实验目的 1. 了解 Visual Basic 系统对计算机软

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 The BitCoin Scripting Language 交易实例 交易结构 "result": { "txid": "921a dd24", "hash": "921a dd24", "version": 1, "size": 226, "locktime": 0, "vin": [ ], "vout": [ ], "blockhash": "0000000000000000002c510d

More information

C语言上机实验

C语言上机实验 C 语言上机实验 实验一 : C 语言的运行环境 运行过程 一 目的与要求 和表达式的使用 1 了解 Dos Windows 环境下 C 语言的运行环境, 了解所用的计算机系统的基本操作方法, 学会独立使用该系统 2 了解在该系统上如何编辑 编译 连接和运行一个 C 程序 3 通过运行简单的 C 程序, 初步了解 C 源程序的特点 4 掌握 C 语言数据类型, 熟悉如何定义一个整型 字符型 实型变量,

More information

06-statement

06-statement PHP 基本语法 条件 循环 函数杨亮 程序的基本结构 程序 输 入 运算 (+ - x / &! ) 逻辑 ( 条件 循环 递归 ) 输出 辅助 ( 变量 数组 函数 ) 小测验 用你熟悉的程序找出 1~1000 中的所有质数 我们直接看代码好了 if else elseif 1

More information

PowerPoint Template

PowerPoint Template 窗体 P15 常用控件 菜单设计 多窗体界面设计 P19 P30 P32 属性 方法 事件 属性名 Name( 名称 ) Caption Height Width Left Top BackColor ForeColor Enabled Visible Font Moveable Picture 描述所创建窗体的名称窗体的标题, 即窗体标题栏上显示的内容窗体的高度窗体的宽度窗体的左边界距容器坐标系纵轴的距离窗体上边界距容器坐标系横轴的距离返回或设置窗体中文本和图形的背景色返回或设置窗体中文本和图形的前景色决定窗体是否活动决定窗体在程序运行时是否可见用于设置窗体中文本的外观,

More information

网C试题(08上).doc

网C试题(08上).doc 学习中心 姓名 学号 西安电子科技大学网络与继续教育学院 高级语言程序设计 (C) 全真试题 ( 闭卷 90 分钟 ) 题号一二三总分 题分 60 20 20 得分 一 单项选择题 ( 每小题 3 分, 共 60 分 ) 1.C 语言程序的基本单位是 A) 程序行 B) 语句 C) 函数 D) 字符 2. 下列四组选项中, 均是不合法的用户标识符的选项是 A)A B)getc C)include D)while

More information

<4D F736F F D20B8C4B0E6CABDD0C25642D6B8B5BCC8ABCEC42E646F63>

<4D F736F F D20B8C4B0E6CABDD0C25642D6B8B5BCC8ABCEC42E646F63> 第 3 章实验指导 3.1 实验一 Visual Basic 语言环境实验 实验目的 1. 熟悉 Visual Basic 6.0 集成开发环境 2. 学习用窗体和控件建立界面 3. 学习用属性窗口设置对象的属性 4. 掌握窗体的概念及相关操作 5. 熟练掌握程序开发的基本步骤 相关知识 1. 窗体窗体是 Visual Basic 中的对象, 具有自己的属性 事件和方法 窗体的属性包括 : (1)Name

More information

<4D F736F F D20D0C2B1E C B3CCD0F2C9E8BCC6B0B8C0FDB3F6B0E6B8E5>

<4D F736F F D20D0C2B1E C B3CCD0F2C9E8BCC6B0B8C0FDB3F6B0E6B8E5> 第 3 章 程序控制结构 第 3 章程序控制结构 学习导读 主要内容用计算机完成某项工作, 必须为完成的工作设计算法, 然后根据算法编写程序 算法是解决问题的方法和步骤, 是问题求解过程的精确描述 程序的基本控制结构是结构化程序设计的基础 本章将简要介绍算法 辅助控制语句, 详细介绍程序设计三种控制结构 : 顺序结构 选择结构和循环结构 学习目标 初步了解算法 ; 熟练掌握顺序结构程序设计方法中的输入输出语句的使用

More information

CC213

CC213 : (Ken-Yi Lee), E-mail: feis.tw@gmail.com 49 [P.51] C/C++ [P.52] [P.53] [P.55] (int) [P.57] (float/double) [P.58] printf scanf [P.59] [P.61] ( / ) [P.62] (char) [P.65] : +-*/% [P.67] : = [P.68] : ,

More information

<C8EBC3C5C6AAA3A8B5DA31D5C2A3A92E696E6464>

<C8EBC3C5C6AAA3A8B5DA31D5C2A3A92E696E6464> 第 1 章 进入 Photoshop 的全新世界 本章导读 Photoshop 1 1.1 Photoshop CS6 Photoshop Photoshop 1.1.1 Photoshop POP 1-1 图 1-1 平面广告效果 1.1.2 Photoshop 1-2 Photoshop CS6 Photoshop CS6 Photoshop CS6 Extended 3D 3 Photoshop

More information

C++ 程序设计 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1 C++ 程序设计 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1 1 PERSON 1 Person 题目描述 编写程序, 定义一个基类 Person, 包含 name 和 age 两个数据成员 ; 再由它派生出学生类 Student 和教师类 Teacher, 其中学生类添加学号 no 数据, 教师类添加职称 title 数据 ; 要求每个类均有构造函数 析构函数和显示数据的函数

More information

4

4 練習 9A ( 9. 特殊角的三角比 T ( 在本練習中, 不得使用計算機 如有需要, 答案以根式或分數表示. 試完成下表 三角比 θ 0 4 60 sin θ cos θ tan θ 求下列各數式的值 (. cos 60. sin 4 4. tan 4. cos0 4 tan 0 7. sin 4 cos 4 8. cos 60 tan 4 9. tan 60sin 0 0. sin 60 cos

More information

Microsoft Word - 《C语言开发入门》课程教学大纲-2.doc

Microsoft Word - 《C语言开发入门》课程教学大纲-2.doc C 语言开发入门 课程教学大纲 ( 课程英文名称 ) 课程编号 :201409210011 学分 :5 学分学时 :60 学时 ( 其中 : 讲课学时 :37 学时上机学时 :23 学时 ) 先修课程 : 计算机导论后续课程 :C++ 程序设计适用专业 : 信息及其计算机相关专业开课部门 : 计算机系 一 课程的性质与目标 C 语言开发入门 是计算机各专业必修的基础课程, 是数据结构 C++ Java

More information

Guava学习之Resources

Guava学习之Resources Resources 提供提供操作 classpath 路径下所有资源的方法 除非另有说明, 否则类中所有方法的参数都不能为 null 虽然有些方法的参数是 URL 类型的, 但是这些方法实现通常不是以 HTTP 完成的 ; 同时这些资源也非 classpath 路径下的 下面两个函数都是根据资源的名称得到其绝对路径, 从函数里面可以看出,Resources 类中的 getresource 函数都是基于

More information