会考 VB 学生参考资料 版带答案.docx
- 文档编号:10520524
- 上传时间:2023-02-17
- 格式:DOCX
- 页数:38
- 大小:293.17KB
会考 VB 学生参考资料 版带答案.docx
《会考 VB 学生参考资料 版带答案.docx》由会员分享,可在线阅读,更多相关《会考 VB 学生参考资料 版带答案.docx(38页珍藏版)》请在冰豆网上搜索。
会考VB学生参考资料版带答案
第一章算法与程序设计语言
算法(Algorithm)就是解决问题的步骤序列。
对问题的解决进行算法描述之前,通常要先分析问题,设计相应的算法,然后用自然语言、伪代码或流程图等描述算法,将解决问题的思路表达出来。
第一节程序设计语言简介
计算机并不能直接识别算法,需要用程序设计语言来实现算法。
计算机程序设计语言的发展,经历了从机器语言、汇编语言到高级语言的历程。
(1)机器语言。
计算机发明之初,人们只能用计算机的语言去命令计算机工作,就是写出一串串由“0”和“1”组成的指令序列交由计算机执行,这就是机器语言。
使用机器语言是十分痛苦的,特别是在程序有错需要修改时更是如此。
由于机器语言使用的就是“0”和“1”,是计算机可以直接识别接受的,故而运算效率是所有语言中最高的。
机器语言,是第一代计算机语言。
(2)汇编语言。
为了减轻使用机器语言编程的痛苦,人们进行了一种有益的改进:
用一些简洁的英文字母、符号串来替代一个特定的指令的二进制串,比如,用“ADD”代表加法,“MOV”代表数据传递等等,这样一来,人们很容易读懂并理解程序在干什么,纠错及维护都变得方便了,这种程序设计语言就称为汇编语言,即第二代计算机语言。
然而计算机是不认识这些符号的,这就需要一个专门的程序,专门负责将这些符号翻译成二进制数的机器语言,这种翻译程序被称为汇编程序。
(3)高级语言。
从最初与计算机交流的痛苦经历中,人们意识到,应该设计一种这样的语言,这种语言接近于数学语言或人的自然语言,同时又不依赖于计算机硬件,编出的程序能在所有机器上通用。
经过努力,1954年,第一个完全脱离机器硬件的高级语言—FORTRAN问世了。
40多年来,共有几百种高级语言出现,有重要意义的有几十种,影响较大、使用较普遍的有FORTRAN、BASIC、Pascal、C、VC、VB、Delphi、JAVA等。
第二节VB程序设计语言简介
1、VB是VisualBasic的缩写,是一种面向对象的程序设计语言。
2、VB程序设计语言常用术语:
◇控件:
工具箱中的工具称为控件,如“标签”等。
◇对象:
窗体以及窗体中放置的控件都可被看作一个对象。
◇属性:
属性是组成用户界面的各对象的性质的具体描述。
例如对象的尺寸、位置、颜色、宽度、高度等等都称为对象的属性。
◇事件:
由用户或操作系统引发的动作,例如单击鼠标(Click)、双击鼠标(DbClick)等。
◇方法:
定义了对象的动作。
如,清屏Cls,画圆Circle,画线Line等等。
3、VB程序设计语言编写四个步骤:
1)设计界面和修改属性。
2)编写程序。
3)运行调试。
4)保存与打包。
第二章程序的顺序结构
程序设计语言有三种程序设计结构:
顺序结构、选择结构、循环结构。
我们先介绍顺序结构,它的流程如下:
问题:
输入一个圆的半径,输出这个圆的面积。
用计算机编程解决一个实际问题的步骤是:
(1)分析问题;
(2)设计算法;(3)编写程序;(4)调试程序。
一、设计算法
(1)程序开始;
(2)输入圆的半径r;
(3)计算圆的面积S=3.14*r2;
(4)输出圆的面积S;
(5)程序结束。
◇流程图的基本图形及其功能:
图形
名称
功能
开始/结束
表示算法的开始或结束
输入/输出
表示算法中变量的输入或输出
处理
表示算法中变量的计算与赋值
判断
表示算法中的条件判断
流程线
表示算法中的转接
二、设计程序
1、请双击窗体,出现下图。
2、在右边下拉式菜单中选择“Activate”。
3、代码窗口中出现:
PrivateSubForm_Activate()‘表示程序开始
EndSub‘表示程序结束
4、编写程序
(1)声明变量Dim变量名As类型
◇变量:
变量是内存中命名的存储单元。
◇变量名的命名规则:
255个字符以内,第一个字符是字母,其后可以是字母、数字和下划线的组合,不能在变量名中出现句号、空格或者嵌入!
、@、#、$、%、&等字符。
使用具有一定含义的变量名,可以帮助说明功能,简化调试过程。
关键字不能作为变量名,如属性名、函数、运算符等。
◇类型:
即数据类型,要根据变量的取值范围选择恰当的数据类型,使得程序最优化。
VB定义的常用的基本数据类型:
数据
类型
类型说明符
存储空间
(字节)
取值范围
整型
Integer
2
从-32768到32767
长整型
Long
4
从-2147483648到2147483647
单精度
实型
Single
4
负数-3.4028235E+38到-1.401298E-45
正数1.401298E-45到3.4028235E+38
双精度
实型
Double
8
双精度实型数能够表达的数的范围是绝对值小于10308的数
字符型
String
1~65535
逻辑型
Boolean
2
True或者False
根据流程图,需要用到两个变量:
圆的半径r,圆的面积S,应该分别对它们定义数据类型。
请根据变量的取值范围,填写横线上的内容:
DimrAsInteger
DimSAsInteger
(2)输入圆的半径r
◇输入语句InputBox
语法格式:
InputBox("提示信息","对话框的标题",默认值)
注意:
VB中所有的符号都要使用英文半角符号。
r=InputBox("r=","请输入圆的半径",10)
◇赋值语句的基本格式是:
变量=表达式
这里“=”是赋值符号,它的含义是将表达式的值赋给左边的变量。
观察下面的赋值语句的作用:
①A=B,它是将变量B的值赋给变量A,但B的值并未改变。
比方说,A=10,B=20,执行A=B后,则A=20,B=20。
②A=B和B=A,表达的含义不一样。
B=A是将变量A的值赋给变量B。
比方说,A=10,B=20,执行B=A的后,则B=10,A=10。
③A=A+10,表示将变量A的值加10后,再赋给变量A。
如果原来A的值为30,则执行此语句后,A的值为40。
④已知A=30,B=40,那么依次执行语句T=A,A=B,B=T后,A、B两个变量的值发生交换A=40,B=30。
如图所示:
(3)计算圆的面积S
S=3.14*r^2
◇VB语言中数学表达式的写法,所有的运算符号不能省略。
运算符号
+
-
*
/
^
\
MOD
含义
加号
减号
乘号
除号
乘方
整除
取余数
(4)输出圆的面积S
◇输出语句Print
Print"圆的面积S=";S
双引号中的内容会被直接打印出来;分号代表以紧凑格式输出;不加双引号的S,表示打印变量S的值。
三、保存工程
VB保存工程分为两步,第一步保存窗体文件(如下图左),扩展名是.frm,第二步保存工程文件(如下图右),扩展名是.vbp。
四、运行调试
请按F5键,即可运行工程,请输入一个圆的半径,看一看程序计算的结果是否正确。
五、工程打包
工程打包就是形成一个可执行文件,扩展名是.exe,它可以脱离VB环境直接运行。
请在菜单中选择【文件】--【生成…exe】,然后命名。
下面的两个练习需要使用顺序结构完成,请先写出流程图,然后根据流程图编写程序。
(1)输入圆柱体的半径和高,输出圆柱体的体积和全面积。
(底圆面积S1=3.14*r2,圆柱体的体积V=S1*h,圆柱体的侧面积S=2*3.14*r*h)
(2)鸡兔同笼问题:
一个笼子里有鸡和兔,现在只知道里面一共有a个头,b只脚,鸡和兔各有多少只?
请输入35个头,94只脚,验证一下编写的程序是否正确?
应该有23只鸡,12只兔。
(3)VB语言中,下列数据属于长整型的是:
A.09bB.27385562C.99.65989D.8.2545E+12
(4)下列可以作为合法变量名的是:
A.i7B.7iC.i#7D.if
(5)VB语言中,下列表达式中合法的表达式是:
A.3.14*r2B.2a+bC.bc÷2D.2*a*b
(6)已知A=10,B=20,依次执行语句A=A+B,B=A-B,A=A-B后,A=,B=。
(7)以下语句符合赋值语句合法表达式的是:
A.i=5B.5=iC.a+b=cD.i>5
第三章程序的选择结构
当描述要求进行逻辑判断,并根据判断结果进行不同处理的情况时,可以使用选择结构。
在VB中,利用条件语句来设计选择结构。
◇条件语句的格式:
If条件Then
语句组1
Else
语句组2
EndIf
注意:
在条件语句中,If和EndIf必须是成对出现的。
第一节两个数比大小
问题:
分别输入两个整数a和b,输出比较大的那个数,如果这两个数相等,请打印提示“两个数相等”。
一、设计算法
(1)程序开始;
(2)输入第一个数a;
(3)输入第二个数b;
(4)如果a>b,则打印a的值;
(5)如果a
(6)如果a=b,则打印“两个数相等”;
(7)程序结束。
二、编写程序
1、创建用户界面
2、设置对象的属性
对象
属性
属性值
窗体(Form1)
Caption
两个数比大小
命令按钮1(Command1)
Caption
确定
命令按钮2(Command2)
Caption
清除
命令按钮3(Command3)
Caption
退出
3、编写程序
(1)Command1_Click()事件过程代码程序,可以根据流程图编写。
PrivateSubCommand1_Click()
Dima,bAsInteger
a=Val(InputBox("a=","请输入第一个数a"))
b=Val(InputBox("b=","请输入第二个数b"))
Ifa>bThen
Print"最大数是a=";a
EndIf
Ifa Print"最大数是b=";b EndIf Ifa=bThen Print"两个数相等" EndIf EndSub (2)Command2_Click()事件过程代码程序 PrivateSubCommand2_Click() Cls‘Cls方法,清除窗体上面的文本。 EndSub (3)Command3_Click()事件过程代码程序 PrivateSubCommand3_Click() End EndSub 第二节一元二次方程求解 问题: 编写一元二次方程ax2+bx+c=0的求解程序,要求能够判断方程是否有根,如果没有根则给出相应的提示信息。 1、设计“输入”按钮算法流程图(右图),填写空白处。 2、根据流程图编写“输入”按钮的程序,请填写空白处。 PrivateSubCommand1_Click() Dima,b,cAsInteger Dimx1,x2,dAsSingle a=Val(InputBox("a=","二次项系数")) b=Val(InputBox("b=","一次项系数")) c=Val(InputBox("c=","常数")) d=b*b–4*a*c Ifd<0Then Print"此方程无实根" Else x1=(-b+Sqr(d))/(2*a) x2=(-b-Sqr(d))/(2*a) Print"x1=";x1,"x2=";x2 EndIf EndSub 提示: 开方用Sqr(d)来表示。 输入三个整数a,b,c,打印其中最大数的值。 设计“输入”按钮算法流程图,填写空白处。 根据流程图(右图)编写程序。 第三节西瓜计价器 1、创建用户界面 2、设置对象的属性 对象 属性 属性值 标签1(Label1) Caption 西瓜优惠价: 小于等于五斤时3.5/斤;大于五斤小于等于十斤时3.25/斤;大于十斤小于等于二十斤时3.1/斤;大于二十斤时2.85/斤 标签2(Label2) Caption 请输入您要购买的西瓜的斤数 标签3(Label3) Caption (空) 文本框1(Text1) Text (空) 图像框1(Image1) Picture 加载一张图片 命令按钮1(Command1) Caption 计算价格 命令按钮2(Command2) Caption 清除 命令按钮3(Command3) Caption 退出 3、Command1_Click()事件算法 (1)判断输入的值是否小于等于5,如果是,计算,如果不是,转到 (2) (2)判断输入的值是否小于等于10,如果是,计算,如果不是,转到(3) (3)判断输入的值是否小于等于20,如果是,计算,如果不是,转到(4) (4)判断输入的值是否大于20,如果是,计算,如果不是,结束。 4、编写程序 (1)Command1_Click()事件过程代码程序,请填写空白处。 ◇赋值语句等号的左侧可以是变量,也可以是某个对象的某种属性值,书写方法为: 对象名.属性=表达式 PrivateSubCommand1_Click() DimaAsSingle a=Val(Text1.Text)‘Val表示将括号中的Text1.Text转换成数值型 Ifa<=5Then Label3.Caption=3.5*a EndIf Ifa>5Anda<=10Then Label3.Caption=3.25*a EndIf Ifa>10Anda<=20Then Label3.Caption=3.1*a EndIf Ifa>20Then Label3.Caption=2.85*a EndIf EndSub ◇程序a<=5是关系表达式,用关系运算符号连接,关系表达式的值是逻辑值,即True或者False。 关系运算符有: 运算符号 = > >= < <= <> 含义 等于 大于 大于等于 小于 小于等于 不等于 ◇数学表达式55Anda<=10,这种表达式叫做逻辑表达式,逻辑运算符有: Not,And,Or。 (2)Command2_Click()事件过程代码程序 PrivateSubCommand2_Click() Text1.Text="" Label3.Caption="" EndSub 1、制作一个能够判断生肖的程序,你可以参考如下图所示的界面。 2、制作一个“幸运6”程序,当单击“开始”按钮后,出现三个十以内的随机整数,如果其中出现“6”,那么就在这个数字的下面出现一张图片,再次单击“开始”按钮,刚才出现的图片消失,又会出现新的随机整数。 你可以参考如下图所示的界面。 提示: 十以内的随机数可以用Int(Rnd*10)表示。 Rnd函数会随机产生一个[0,1)的值;Int表示取整。 注意: 在使用Rnd函数时,要在程序开始加入Randomize函数,它的作用是使随机函数真正随机化。 你可以试一下如果不放入这个函数,每次运行程序,出现的随机数有什么规律,如果使用了这个函数,会有什么改变。 第四节简易计算器 1、创建用户界面 2、设置对象的属性 对象 属性 属性值 标签1(Label1) Caption ? 标签2(Label2) Caption = 标签3(Label3) Caption 请选择一种计算: 文本框1(Text1)~文本框3(Text3) Text (空) 命令按钮1(Command1) Caption 计算 命令按钮2(Command2) Caption 清除 命令按钮3(Command3) Caption 退出 命令按钮4(Command4) Caption + 命令按钮5(Command5) Caption - 命令按钮6(Command6) Caption * 命令按钮7(Command7) Caption / 3、编写命令按钮2~7的单击事件请自行编写。 4、编写程序Command1_Click()事件过程代码,填写空白处。 PrivateSubCommand1_Click() Dima,bAsSingle a=Val(Text1.Text) b=Val(Text2.Text) IfLabel1.Caption="+"Then Text3.Text=a+b EndIf IfLabel1.Caption="-"Then Text3.Text=a-b EndIf IfLabel1.Caption="*"Then Text3.Text=a*b EndIf IfLabel1.Caption="/"Then Text3.Text=a/b EndIf EndSub 5、思考题: 如果除数为零,怎样解决? 仔细分析应该将这些语句放到上面那个语句中。 IfLabel1.Caption="/"Then IfText2.Text="0"Then MsgBox("除数不能为零! 新输入一个除数! ") Text2.Text="" Else Text3.Text=a/b EndIf EndIf ◇MsgBox("提示信息"),该语句用于弹出一个提示窗口。 第五节调色板 1、创建用户界面 2、设置对象的属性 对象 属性 属性值 标签1(Label1) Caption 红 标签2(Label2) Caption 绿 标签3(Label3) Caption 蓝 水平滚动条1(HScrollBar1) 名称 hsbred Max 255 水平滚动条2(HScrollBar2) 名称 hsbgreen Max 255 水平滚动条3(HScrollBar3) 名称 hsbblue Max 255 图片框1(Picture1) 名称 pic 3、编写程序 (1)Form_Load()的事件过程代码程序 Form_Load窗体加载事件,是在窗体启动时的事件,通常用来设置对象的初始状态。 滚动块的当前位置用Value属性来表示;用对象pic的BackColor属性(背景色)来反映调色板颜色。 调色板的颜色用VB的颜色函数RGB(红色,绿色,蓝色)来指定,颜色函数中,红、绿、蓝三色用0到255之间的整数来表示,中间用逗号隔开,如RGB(0,0,0)表示黑色,RGB(255,255,255)表示白色。 因此,Form_Load()的事件过程代码程序为 PrivateSubForm_Load() hsbred.Value=0 hsbgreen.Value=0 hsbblue.Value=0 pic.BackColor=RGB(0,0,0) EndSub (2)hsbred_Change()的事件过程代码程序 单击滚动条的滚动箭头、单击滚动区域、拖动滚动块,都可以使滚动块的位置发生变化,即Value属性值发生变化。 用RGB(红色,绿色,蓝色)函数返回调出的颜色,其中红色用hsbred对象的Value属性值表示,绿色用hsbgreen对象的Value属性值表示,蓝色用hsbblue对象的Value属性值表示。 PrivateSubhsbred_Change() pic.BackColor=RGB(hsbred.Value,hsbgreen.Value,hsbblue.Value) EndSub (3)hsbgreen_Change()和hsbblue_Change()的事件过程代码程序仿照 (2)的分析,可以自行完成。 4、思考题: 在窗体中加入三个文本框,显示RGB函数中红色、绿色、蓝色的数值,并进行判断。 (1)创建用户界面 (2)设置对象属性 对象 属性 属性值 文本框1(Text1) 名称 txtred Text 0 文本框2(Text2) 名称 txtgreen Text 0 文本框3(Text3) 名称 txtblue Text 0 (3)编写程序 在hsbred对象的Change事件中,由于滚动块的变化,红颜色的值发生变化,文本框中应显示出相应红颜色的值,即滚动块的位置。 因此在hsbred_Change()事件过程的程序中,应改写为 PrivateSubhsbred_Change() pic.BackColor=RGB(hsbred.Value,hsbgreen.Value,hsbblue.Value) txtred.Text=hsbred.Value EndSub 在txtred对象中输入信息,可以引发该事件的Change事件,这时由于输入改变了红颜色的值,因此,pic对象的BackColor属性,即背景色发生变化,hsbred对象中的滚动块的位置也应作相应的变化。 PrivateSubtxtred_Change() hsbred.Value=Val(txtred.Text) EndSub 绿色和蓝色值的显示和输入问题,请大家自己分析。 (4)如果输入的数值小于0或大于255时,会出现什么现象? 为什么? 请使用MsgBox弹出窗口提示输入超出范围。 第四章程序的循环结构—For/Next ◇For循环语句的语法: (1)初值、终值、步长均为数值。 (2)当初值小于终值时,步长应为正数;当初值大于终值时,步长应为负数;如果省略step,则步长为1。 (3)语句组可以是一个或者多个语句,又称循环体。 (4)循环体执行的次数为(终值-初值)/步长+1的整数部分。 ◇For循环语句的执行过程: (1)循环变量被赋予初值。 (2)判断循环变量是否超过终值,如果超过,则退出循环执行Next后面的语句;如果没有超过则执行循环体。 (3)遇到Next语句,则循环变量增加一个步长,转到 (2),继续循环。 通过流程图来表示,如下: 第一节数学累加问题 问题1: 计算1+2+3+……+100=? 我们先画出这个程序的流程图,如下图。 根据流程图,写出部分程序,如下。 s=0 Fori
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 会考 VB 学生参考资料 版带答案 学生 参考资料 答案
![提示](https://static.bdocx.com/images/bang_tan.gif)