VB实验(8)

合集下载

《程序设计基础—VB程序实验》

《程序设计基础—VB程序实验》

《程序设计基础—VB程序实验》说明:实验1和实验2均为电子实验报告,后面8个实验是纸制实验报告。

实验1 计算机基本操作实验目的⑴熟悉计算机,能够正确进行开、关机操作。

⑵熟悉键盘,掌握键盘上所有字符的输入,掌握正确的指法,能够进行中、英文切换。

⑶理解操作系统概念,掌握Windows XP的基本操作,能够利用“控制面板”进行一些参数的设置。

⑷知道“回收站”的功能,学会有关文件、文件夹的基本操作。

⑸学会在计算机上搜索或查找相关的文件或文件夹,掌握通配符的使用。

实验内容⑴熟悉上机实验的计算机,熟悉键盘,学会中、英文输入方式的转换。

⑵学会用正确的指法进行输入,知道键盘上所有字符的输入。

⑶利用“控制面板”修改系统时间、桌面背景、鼠标属性。

⑷在桌面上新建一个文件夹,该文件夹以学生自己的名字+班级+学号的后3位命名。

⑸用文本方式或Word文档,写一段字数不少于300字的自我介绍,以1.doc命名并保存到上述文件夹中。

⑹将上述文件夹复制到ftp://10.10.9.222上。

实验2 常用软件的基本操作实验目的⑴了解Word功能,掌握Word的基本操作,包括页眉/页脚的设置、分栏、页面设置、添加底纹等。

⑵学会文件的保存与打开、打印预览、段落的间隔、首字符位置改变等,能够在Word中插入图片、表格、艺术字、特殊符号等。

⑶了解Excel的功能,掌握Excel的基本操作,包括单元格属性的设置、数字的几种填充形式、单元格的合并与恢复、边框的设置等。

⑷掌握Excel的基本公式的使用,能够用公式进行基本计算。

掌握Excel中的图形制作方法,能够根据表格做出图形。

实验内容⑴将ftp上自己文件夹中的1.doc文件复制到桌面上,然后做如下处理:①将标题“自我介绍”居中;②将文章中第二段的内容进行分栏,要求中间有分割线;③插入一个4行4列的表格,内容为学号、姓名、某门课的成绩;④任意插入一张图片;⑤在文章中的任意位置加底纹。

将做好的文档以2.doc命名并保存。

大一vb的实验报告

大一vb的实验报告

大一VB的实验报告
实验目的
本次VB的实验目的在于:
1.学习VB的基础语法和编程思想。

2.熟悉VB语言的IDE开发环境,了解其界面、操作方式和功能。

3.通过实现一个简单的文本编辑器,进一步熟悉VB的编程技巧。

实验内容
界面设计
首先,我们需要对文本编辑器的界面进行设计。

我们采用VB自带的Windows Form进行界面设计。

Notepad-UI
Notepad-UI
如图所示,主要包括菜单栏、工具栏、编辑区和状态栏等四个部分。

功能实现
新建、打开和保存
首先,我们需要实现新建、打开和保存功能,这是每个文本编辑器都需要支持的基本操作。

我们可以通过使用VB自带的控件——菜单控件和文件对话框,快速实现这些功能。

```vb ’Tool Strip Menu Item - New File Private Sub NewToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles NewToolStripMenuItem.Click If currentFile <>。

VB实验--------所有实验题目

VB实验--------所有实验题目

实验题目总体要求:本学期的所有的实验题目,希望同学们按如下步骤认真做,(1)先画出处理界面(窗体);(2)再给出处理步骤,(3)写出程序代码:可参考下面的例题:例如:设计程序,求1+2+3+...+N 的和值。

其处理过程是:(一)设计界面(在纸上画出界面,并注明各控件的名称):(二)处理步骤:单击命令按钮,按以下步骤处理(1)定义3个变量:N ,s ,x ,分别用于存放:输入的数值,和值,控制循环(2)将文本框1的值,提供给变量N ;(3)s=0(累加前,将变量s 初始化为0);(4)X=1(设置循环的开始值)(5) 当X<=N 时 重复执行S=s+xX=X+1(5)在文本框2中显示和值S(三)编写有关的代码:Private Sub Command1_Click()Dim n%,s%,x%N=val(text1.text)S=0X=1Do while x<=nS=s+xX=x+1LoopText2=sEnd Sub文本框1:TEXT1 文本框2:TEXT21:Command1标签1:Label1 标签2:实验一:用语言或流程图描述处理步骤(1次)1.判定一个数X是否是偶数的处理步骤;2.写出求5的阶乘的计算步骤;3.写出求1+2+3+...... +100的计算过程;4.写出计算1!+2!+3!+4!+......+20!的计算步骤;5.写出求一元二次方程解的处理步骤;6.给出将三个整数A,B,C按从小到大的顺序排列的处理步骤;实验二:表达式及其运算的实现(1次)1.设计一个程序,完成利用文本框输入任意两个数的乘法运算,并显示计算结果。

2.进一步完善程序,完成利用文本框输入任意两个数的加法、减法、乘法、除法运算,并显示计算结果,3.再进一步,改进,完成,利用随机函数,产生任意两个100到200之间的整数,并完成两个数的加法、减法、乘法、除法运算,并显示计算结果。

4.求方程AX+B=0的解。

vb用户界面设计实验报告(共9篇)

vb用户界面设计实验报告(共9篇)

vb用户界面设计实验报告(共9篇) VB第7章用户界面设计一、选择题1、下列控件中,没有Caption属性的是( )。

A. 框架B. 列表框C. 复选框D. 单选按钮2、复选框的Value属性为1时,表示( )。

A. 复选框未被选中B. 复选框被选中C. 复选框内有灰色的勾D. 复选框操作有错误3、用来设置粗体字的属性是( )。

A. FontItalicB. FontNameC. FontBoldD. FontSizeE. FontUnderline4、假定定时器的Interval属性为1000,Enabled属性为Ture,调用下面的事件过程,程序运行结束后变量x的值为( )。

Dim x As IntegerSub Timer1_Timer( )For i = 1 To 10x = x + 1Next iEnd SubA. 1000B. 10000C. 10D. 以上都不对5、在下列说法中,正确的是( )。

A. 通过适当的设置,可以在程序运行期间让定时器显示在窗体上B. 在列表框中不能进行多项选择C. 在列表框中能够将项目按字母顺序从大到小排列D. 框架也有Click和DblClick事件6、在用菜单编辑器设计菜单时,必须输入的项有( )。

A. 快捷键B. 标题C. 索引D. 名称7、在下列关于菜单的说法中,错误的是( )。

A. 每个菜单项都是一个控件,与其他控件一样也有自己的属性和事件B. 除了Click事件之外,菜单项还能响应其他的,如DblClick等事件C. 菜单项的捷径键不能任意设置D. 在程序执行时,如果菜单项的Enabled属性为False,则该菜单项变成灰色,不能被用户选择8、在下列关于通用对话框的叙述中,错误的是( )。

A. CommandDialog1.ShowFont显示“字体”对话框B. 在“打开”或“另存为”对话框中,用户选择的文件名可以经FileTitle属性返回C. 在“打开”或“另存为”对话框中,用户选择的文件名及其路径可以经FileName属性返回D. 通用对话框可以用来制作和显示“帮助”对话框二、填空题1、复选框( )属性设置为2——Grayed时,变成灰色,禁止用户选择。

vb实验心得体会

vb实验心得体会

vb实验心得体会VB实习心得体会论文(急..)“三分理论,七分实践”,这次上机实习,让我认识到了学习VB 的重要性,同时也对VB程序有了更加深入的理解。

在这个过程中我对VB的各种控件的属性和功能有了进一步的掌握,让我又熟悉了一门计算机语言。

这次实习让我对VB中的循环结构有了更深的认识,以前只是知道循环结构大概的框架,并不知道它是如何运行的,而这次我知道它的循环基理,而且还学会了在定义时候的一些小窍门,例如在多个Form 中都要用到的变量就可以将它定义为一个全局变量,放在一个标准模块里等等。

以前认为VB是一门比较简单的语言,现在我才明白他其实也并没有想象中的那么简单,而且比我们想象的还要复杂。

有些功能并不只是对控件的设置就能实现的,而必须要在代码中编写。

老师常说“编程就是一个不断发现错误的过程”,通过这次实习我也充分的认识到了这个事实。

不停的改错,不停的产生新的代码,不停的产生新的界面,不停的有了新的收获。

利用本次的实习我还对VB的知识又进行了一次复习,而且我还学到了不少新的知识,尤其是控件组的应用,着实给我的编程中带来了不少方便,例如编写代码的过程中,我们利用一个for循环就可以实现一个控件组的初始化,可以说是简单快捷。

但是万事总是利弊相随,在给我带来方便的同时当然也带来了一点麻烦,就是在对控件组中的控件进行属性的必要修改时,必须反复与窗体与代码之间,看好多遍才可以把它准确的改变。

不过只要你的控件组不是很大的话就不会带来多 -烦的,如果控件很多的话最好还是不要用,因为用了反而会增加很大的工作量。

还有就是我在程序设计过程中遇到了列表的问题,这一个问题真的把我难住了。

不过经过了与同学的交流与学习,最后我还是把它解决了,而且还学到了好多方法,例如用List的sorted属性就可以完成对成绩大小的排序,真的为我省了不少力。

在实习中我体会到了集体的智慧,让我从中学到了很多东西。

仅仅两周的时间,让我对VB甚至计算机语言产生了浓厚的兴趣,每次遇到问题,分析问题,到最后把问题彻底解决,每次都会学到很多课本上学不到的新知识与新的技能。

VB实验报告(实验10)

VB实验报告(实验10)

电子信息工程学系实验报告课程名称:面向对象程序设计实验项目名称:实验10 文件 实验时间2011-12-12班级: 姓名: 学号:实 验 目 的:1)、理解System.IO 对象模型。

2)、熟练掌握使用File 和Directory 对象操作文件的方法。

3)、熟练掌握DriveListBox 和StreamWriter 对象读写文本文件的方法。

4)、理解流的概念。

5)、掌握使用StreamReader 和StreamWriter 对象读写文本文件的方法。

实 验 环 境:Windows XPVisual 2003实 验 内 容 及 过 程:查找并替换文本文件的内容1、 新建一个“VisualBasic 项目”2、 界面设计由一个显示选择的文件的文本框(txtFileName )、一个查找内容的文本框(txtFindText )、一个替换内容的文本框(txtReplaceText )、一个显示打开的文件内容的多行文本框(txtContent )、三个标签(Label )和两个按钮(btnSelFile 、btnReplace )组成。

还要再添加一个OpenFileDialog 控件。

界面安排如图T10-1。

3、 编写程序代码引入System.IO 名称空间。

单击“选择文件”按钮的事件代码: 图T10-1 界面设计Private Sub btnSelFile_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesbtnSelFile.ClickOpenFileDialog1.InitialDirectory = "c:\"OpenFileDialog1.Filter = "文本文件(*.txt)|*.txt|所有文件(*.*)|*.*"OpenFileDialog1.FilterIndex = 1OpenFileDialog1.RestoreDirectory = TrueIf OpenFileDialog1.ShowDialog = DialogResult.OK ThentxtFileName.Text = OpenFileDialog1.FileNameEnd IfIf txtFileName.Text <> "" Thenreadfile(txtFileName.Text, txtContent)End If单击“替换”按钮的事件代码:Private Sub bntReplace_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles bntReplace.ClickIf txtFindText.Text = "" ThenMsgBox("请输入查找字符串", MsgBoxStyle.Critical)End IfTryDim fs As New FileStream(txtFileName.Text, FileMode.Open)Dim sr As New StreamReader(fs)Dim tempstr As Stringtempstr = Path.GetTempFileNameDim sw As New StreamWriter(tempstr)Dim s As StringDos = sr.ReadLineIf s <> Nothing Thens = s.Replace(txtFindText.Text, txtReplaceText.Text)sw.WriteLine(s)ElseExit DoEnd IfLoop While s <> Nothingsw.Close()sr.Close()fs.Close()File.Delete(txtFileName.Text)File.Move(tempstr, txtFileName.Text)If txtFileName.Text <> "" Thenreadfile(txtFileName.Text, txtContent)End IfMsgBox("替换完成。

VB实验报告

VB实验报告

VB实验报告《VB程序设计》实验单元一实验报告专业班级:姓名学号 2指导教师:王云侠完成时间: 3月22日实验一VB环境和可视化编程基础一、实验目的1 了解Visual Basic的安装2 掌握启动与退出Visual Basic3 掌握建立、编辑和运行一个简单应用程序的全过程4 掌握基本控件的使用二、实验环境VB6.0三、实验内容1、编写一程序,在文本框中统计在该窗口上鼠标单击的次数。

提示:对窗口编写两个事件:Form_Load事件对文本框初值设为空;Form_Click事件对文本框计数。

对文本框计数:Text1=Val(text1)+1 。

2、命令按钮、字号、内容和格式的复制练习。

按钮1:使得Text1中的文本按要求改变。

按钮2:将Text1中选定的文本复制到Text2. 控件名 Form1 Label1 Label2 Text1 属性 Ca ption=”实验2” 复制文本输入文本Text=“VB功能强大,但要下功夫学习才能学好。

” (每个同学文本框中内容可以不同) Text2 Command1 Command2 四、实验步骤1、编写一程序,在文本框中统计在该窗口上鼠标单击的次数。

从运用中点击vb6.0经典版Text=”” Caption=”隶书25磅” Caption=”复制=>” 打开标准 EXE 建立一个form 1添加一个Label和TextBox,Label的caption改为“你单击窗体的次数”,TextBox 的text改为空,然后编写代码如图点击运行即可。

2、命令按钮、字号、内容和格式的复制练习。

从运用中点击vb6.0经典版打开标准 EXE 建立一个form 1添加两个Label两个TextBox两个CommandButton,Label的caption改为“输入内容”和“复制效果”,TextBox的text改为“任意文字”和“空”,CommandButton的caption改为“隶书25磅”和“复制=>”。

VB实验8 数组及其应用

VB实验8 数组及其应用

第15页 Visual Basic程序设计实验指导
实验8-3
目的和要求 预备知识
上一页
下一页
退 出
【实验步骤】 (1)界面设计 请参照图8-7所示的界面设计窗体。 (2)完善程序代码 (3)运行工程并保存文件 运行程序,观察程序运行结果,最后将窗体文 件 保 存 为 F8-3.frm , 工 程 文 件 保 存 为 P83.vbp。
第11页 Visual Basic程序设计实验指导
实验8-2
目的和要求 预备知识
上一页
下一页
退 出
【分析】 二维数组的输入和输出一般利用二重循环实现, 外循环控制行的变化,内循环控制列的变化。 标准输出格式是在 Print语句的输出项之间用逗 号分隔。为了产生 4 行 3 列的效果,还要在内外 循环之间添加无参数的Print语句来实现换行。
实验8-3
目的和要求 预备知识
【题目】 编写程序,建立并输出一个 10×10的矩阵,该 矩阵对角线元素为1,其余元素均为0。
上一页
下一页
退 出
第14页 Visual Basic程序设计实验指导
实验8-3
目的和要求 预备知识
上一页
下一页
退 出
【分析】 在Visual Basic中矩阵常用二维数组来处 理,首先要定义一个二维数组 A(1 To 10,1 To 10 ),接着可以用二重 For 循环实现二维 数组的输入和输出。 处在正对角线上的数组元素,它的行列下标 相同,即i = j,处在副对角线上的数组元素, 它的行列下标之和等于11,即i + j=11。
第20页 Visual Basic程序设计实验指导
上一页
下一页
退 出

VB实验及答案

VB实验及答案

对象名称
属性名称
Form1
Caption
Command1 Caption
Label1
Caption
Label2
Caption
Label3
Caption
Text1、Text2 Text
属性值 象限判断 判断 X= Y=
(3)编写事件代码: Private Sub Command1_Click() Dim x!, y!
Private Sub Command2_Click() Dim f!, c! c = Val(Text2.Text) f = 9 / 5 * c + 32 Text1 = Str(f)
End Sub
(4)程序的运行及保存。 4 求圆的面积及圆柱体的体积,界面如图 2-3 所示。
【步骤】 (1)设计应用程序的界面:在窗体上创建两个命令按钮 Command1 和 Command2,四个标签 Label1、Label2、Label3 和 Label4,四个文本框 Text1、Text2、Text3 和 Text4。 (2)设置对象的属性
【步骤】
( 1 ) 在 窗 体 中 创 建 一 个 标 签 Label1 、 一 个 命 令 按 钮 Command1。
(2)在属性窗口中设置对象的属性:
对象名称
属性名称
属性值
Form1
Caption
设计界面
Label1
Caption
请留意此处
Command1
Caption
单击此处
(3)在 Command1 的 Click 事件中编写程序代码:
x = Val(Text1) y = Val(Text2) If x > 0 Then

VB实验报告1-9

VB实验报告1-9

实验一:设计简单的VB 应用程序一、实验目的1.掌握Visual Basic 启动和退出的方法。

2.熟悉Visual Basic 的集成开发环境。

3.掌握Visual Basic 程序设计的基本步骤,了解VB 程序的编写、保存和编译的方法过程。

4.初步了解几个常用基本控件控件(标签、命令按钮和文本框)的使用方法。

二、实验类型综合三、实验时间:2013-3-8四、实验任务1、启动Visual Basic ,然后创建一个“标准 EXE ”工程(保存在D 盘以自己学号命名的文件夹中,文件名和窗体名均为SJT ),并了解Visual Basic 集成开发环境下各组成部分及其作用。

2、编一程序,计算任意输入的正整数的平方根。

3、编写一个应用程序,界面如图1-1所示。

窗体中文字“VB 应用程序!”为一标签控件,单击标题为“放大”的命令按钮,则“VB 应用程序!”的字号放大一号,单击“缩小”按钮则反之;同时,窗体中还有4个含某种指向图案的按钮,若单击某个按钮,则使“VB 应用程序!”向该按钮所指向的方向移动50Twip 。

(提示:四种指向的图案可以在Visual Basic 安装目录中的“…graphics\icon\Arrows ”子目录中找到,名称分别为arw07dn.ico 、arw07lt.ico 、arw07rt.ico 和arw07up.ico )五、实验要求 写出实验报告,内容是:1、第1小题的操作步骤2、第2、3题1).程序的界面设计。

2).程序主要代码。

3).运行结果(输入与输出)。

4).实验总结。

(写上你自己的总结。

可以从以下几个方面来总结:你在编程过程中花时多少?时间是怎么分配的?多少时间在思考问题?遇到了哪些难题?你是怎么克服的?你对你的程序的评价?你的收获有哪些?)图1-1 实验1-2程序运行实验二:数据的输入和输出一、实验目的1.掌握常量和变量、表达式的基本概念和正确书写格式。

2.掌握基本语句(Print语句、赋值语句、Dim语句等)的使用;3、掌握常用函数的正确使用方法;4、掌握数据的动态输入InputBox和信息提示MsgBox的基本使用方法。

vb实验作业参考答案

vb实验作业参考答案

vb实验作业参考答案VB实验作业参考答案引言:Visual Basic(VB)是一种基于事件驱动的编程语言,广泛应用于Windows操作系统的软件开发。

在学习VB编程过程中,实验作业是非常重要的一部分,通过实践来巩固所学知识。

本文将提供一些VB实验作业的参考答案,帮助读者更好地理解和掌握VB编程。

一、VB基础知识实验作业参考答案1. 实验题目:编写一个VB程序,实现两个整数的加法运算,并将结果显示在文本框中。

参考答案:```Private Sub btnAdd_Click()Dim num1 As IntegerDim num2 As IntegerDim result As Integernum1 = CInt(txtNum1.Text)num2 = CInt(txtNum2.Text)result = num1 + num2txtResult.Text = CStr(result)End Sub```2. 实验题目:编写一个VB程序,实现输入一个数字,判断该数字是奇数还是偶数,并在消息框中显示结果。

参考答案:```Private Sub btnCheck_Click()Dim num As Integernum = CInt(txtNum.Text)If num Mod 2 = 0 ThenMsgBox "该数字是偶数"ElseMsgBox "该数字是奇数"End IfEnd Sub```二、VB控件应用实验作业参考答案1. 实验题目:编写一个VB程序,实现一个简单的计算器功能,包括加法、减法、乘法和除法操作。

参考答案:```Private Sub btnAdd_Click()Dim num1 As DoubleDim num2 As DoubleDim result As Doublenum1 = CDbl(txtNum1.Text) num2 = CDbl(txtNum2.Text)result = num1 + num2txtResult.Text = CStr(result) End SubPrivate Sub btnSubtract_Click() Dim num1 As DoubleDim num2 As DoubleDim result As Doublenum1 = CDbl(txtNum1.Text) num2 = CDbl(txtNum2.Text)result = num1 - num2txtResult.Text = CStr(result) End SubPrivate Sub btnMultiply_Click() Dim num1 As DoubleDim num2 As DoubleDim result As Doublenum1 = CDbl(txtNum1.Text) num2 = CDbl(txtNum2.Text)result = num1 * num2txtResult.Text = CStr(result) End SubPrivate Sub btnDivide_Click() Dim num1 As DoubleDim num2 As DoubleDim result As Doublenum1 = CDbl(txtNum1.Text)num2 = CDbl(txtNum2.Text)If num2 = 0 ThenMsgBox "除数不能为0"Elseresult = num1 / num2txtResult.Text = CStr(result)End IfEnd Sub```2. 实验题目:编写一个VB程序,实现一个简单的登录界面,包括用户名和密码输入框以及登录按钮。

VB实验教材习题答案 (1)

VB实验教材习题答案 (1)

第1章VB集成环境与VB概述一、选择题第2章常用控件与界面设计一、选择题第3章数据、表达式与简单程序设计一、选择题第4章选择分支与循环一、选择题二、填空题1.5 7 13 12 14 112. 3 1 5 3 4 13. right(a$,i)4. 45. 6-i6. 6 11 10 21 13 347. 5 14 138. Is else end select9. a*(2*i-1)*(-1)*x/(2*i+2) i+110. 0 n-111. 1 t*(-1)*x^2/((2*k-1)*(2*k)) Abs(t)>eps12. count1=count+1 count1>013. sum=0 sum+j st & k & “+”14. 9 x三、编程题1.Option ExplicitPrivate Sub Command1_Click()Dim s As String, i As Integer, ch As String * 1Dim a As Integer, b As Integer, c As Integers = Text1.TextFor i = 1 To Len(s)ch = Mid(s, i, 1)If (ch >= "0" And ch <= "9") Thena = a + 1ElseIf (ch >= "A" And ch <= "Z") Or (ch >= "a" And ch <= "z") Thenb = b + 1Elsec = c + 1End IfNextPrint "数字个数"; aPrint "字符个数"; bPrint "其他字符"; cEnd Sub2.Option ExplicitPrivate Sub Command1_Click()Dim i As Integer, n As IntegerDim a As Integer, b As Integer, c As IntegerFor i = 1 To 50n = Int(Rnd * 90 + 10)Print n;If i Mod 10 = 0 Then PrintIf n <= 40 Thena = a + 1ElseIf n <= 70 Thenb = b + 1Elsec = c + 1End IfNext iPrint "小于等于40的个数:"; aPrint "大于40小于等于70的个数:"; bPrint "大于70的个数:"; cEnd Sub3.Option ExplicitPrivate Sub Command1_Click()Dim x As SingleDim t As Long, n As Integerx = 1t = 1n = 1Do While 1 / t >= 0.0001x = x + 1 / tn = n + 1t = t * nLoopPrint xEnd Sub4.Option ExplicitPrivate Sub Command1_Click()Dim k As Integer, sum As Integer, i As Integerk = InputBox("请输入一个正整数k", "输入框")For i = 1 To Len(CStr(k))sum = sum + Mid(k, i, 1)Next iMsgBox k & "的各位数字之和" & sumEnd Sub5.Option ExplicitPrivate Sub Command1_Click()Dim i As Integer, iSum As LongFor i = 1 To 20iSum = iSum + i ^ 4NextPrint iSumEnd Sub6.Option ExplicitPrivate Sub Command1_Click()Dim a As Integer, b As IntegerDim sum1 As Integer, sum2 As LongDim i As Integer, j As IntegerFor a = 2 To 3000sum1 = 0sum2 = 0For i = 1 To a \ 2If a Mod i = 0 Then sum1 = sum1 + i Next ib = sum1For j = 1 To b \ 2If b Mod j = 0 Then sum2 = sum2 + j Next jIf sum2 = a And a < b Then Print a, bNextEnd Sub7.Private Sub Command1_Click() '打印菱形Dim i As Integer, j As IntegerClsFor i = 1 To 6 '打印菱形上边6行Print Tab(20);Print Spc(6 - i);For j = 1 To 2 * (i - 1) + 1If j = 1 Or j = 2 * (i - 1) + 1 ThenPrint "*";ElsePrint " ";End IfNext jPrintNext iFor i = 5 To 1 Step -1 '打印下半部分Print Tab(20);Print Spc(6 - i);For j = 1 To 2 * (i - 1) + 1If j = 1 Or j = 2 * (i - 1) + 1 ThenPrint "*";ElsePrint " ";End IfNext jPrintNext iEnd Sub8.Option ExplicitPrivate Sub Command1_Click()Dim i As Integer, j As Integer, iSum As IntegerPrint "连续和为1250的正整数是:"For i = 1 To 500iSum = 0For j = i To 500iSum = iSum + jIf iSum >= 1250 Then Exit ForNextIf iSum = 1250 ThenPrint i; " ~"; jEnd IfNextEnd Sub9.Option ExplicitPrivate Sub Command1_Click()Dim a As Integer, b As Integer, c As IntegerFor a = 1 To 50For b = a To 50For c = b To 50If a ^ 2 + b ^ 2 = c ^ 2 ThenPrint a, b, cEnd IfNext cNext bNext aEnd Sub第5章数组一、选择题二、填空题1.Variant2.ReDim A(N)A(1)If M < A(I) Then M = A(I)3.Int(26 * Rnd) + 65Chr(t)i + 1 To 10A(i) > A(j)4.InStr(s, ",")Right(s, Len(s) - n)s5.T – 1I + 16.k = 6 - i – jmax = m7.j = 48j = j-38.i + 1i = i + 19. 23710. 3103511.numi + 1a(j)=temp三、编程题1.Option ExplicitOption Base 1Private Sub Command1_Click()Dim a(10) As IntegerDim i As Integer, max As IntegerFor i = 1 To 10a(i) = Int(90 * Rnd) + 10Print a(i);Next iPrinti = 1max = 0Do While i <= 10If a(i) Mod 3 = 0 ThenIf a(i) > max Thenmax = a(i)End IfEnd Ifi = i + 1LoopIf max = 0 ThenPrint "无要找的数"ElsePrint max & "是最大的能被3整除的数"End IfEnd Sub2.Option ExplicitOption Base 1Private Sub Command1_Click()Dim A() As IntegerDim I As Integer, m As IntegerDim K As IntegerReDim A(10)Print "原数组:";For I = 1 To 10A(I) = IPrint A(I);Next IPrintm = InputBox("????m")K = 9 + mReDim Preserve A(K)For I = 11 To KA(I) = A(I - 10)Next IFor I = 1 To 10A(I) = A(I + m - 1)Next IPrint "平移后的数组:";For I = 1 To 10Print A(I);Next IPrintEnd Sub3.Option ExplicitOption Base 1Private Sub Command1_Click()Dim I As Integer, J As Integer, K As IntegerDim a() As Integer, n As Integer, p As Integer Dim s As String, Flag As Booleanp = 1For K = 10 To 100I = 1Do While I <= 10 And Not FlagJ = 1Do While J <= 10 And Not Flagn = I ^ 2 + J ^ 2If n = K ThenFlag = TrueReDim Preserve a(p)a(p) = Kp = p + 1s = I & Str(J) & Str(K)List1.AddItem sEnd IfJ = J + 1LoopI = I + 1LoopFlag = FalseNext KEnd Sub4.Option ExplicitPrivate Sub Command1_Click()Dim A(10) As IntegerDim B(10) As Integer, S As StringDim I As Integer, J As Integer, X As IntegerA(1) = Int(90 * Rnd) + 10S = A(1)For I = 2 To 10DoX = Int(90 * Rnd) + 10For J = 1 To I - 1If X = A(J) Then Exit ForNext JIf J = I ThenA(I) = XS = S & " " & A(I)Exit DoEnd IfLoopNext IText1.Text = SB(1) = Int(90 * Rnd) + 10S = B(1)For I = 2 To 10DoX = Int(90 * Rnd) + 10For J = 1 To I - 1If X = B(J) Then Exit ForNext JIf J = I ThenB(I) = XS = S & " " & B(I)Exit DoEnd IfLoopNext IText2.Text = SS = ""For I = 1 To 10For J = 1 To 10If A(I) = B(J) ThenS = S & " " & A(I)End IfNext JNext IIf S = "" ThenText3.Text = "没有重复"ElseText3.Text = SEnd IfEnd SubPrivate Sub Command2_Click()Text1.Text = ""Text2.Text = ""Text3.Text = ""Text1.SetFocusEnd Sub5.Option ExplicitPrivate Sub Command1_Click()Dim I As Integer, J As IntegerDim a() As Integer, K As Integer, Sum As Integer K = Val(Text1.Text)I = 1DoJ = K Mod 10ReDim Preserve a(I)a(I) = JSum = Sum + JK = K \ 10I = I + 1Loop Until K = 0Text2.Text = SumEnd Sub6.Option ExplicitPrivate Sub Command1_Click()Dim a(100, 2) As Integer, K As IntegerDim I As Integer, J As IntegerDim M As Integer, N As IntegerK = 1For I = 1 To 99For J = 1 To 99If I > J ThenM = I - JN = I + JIf Sqr(M) = Int(Sqr(M)) And Sqr(N) = Int(Sqr(N)) ThenList1.AddItem I & " " & Ja(K, 1) = Ia(K, 2) = JK = K + 1End IfEnd IfNext JNext IEnd Sub7.Option ExplicitOption Base 1Dim a(5, 5) As IntegerPrivate Sub Command1_Click() '生成数组并显示Dim i As Integer, j As IntegerPicture1.ClsPicture2.ClsPicture3.ClsRandomizeFor i = 1 To 5For j = 1 To 5a(i, j) = Int(90 * Rnd) + 10Picture1.Print a(i, j);NextPicture1.PrintNextEnd SubPrivate Sub Command2_Click()Dim i As Integer, j As Integer, max As IntegerDim b(5) As Integer, c(5) As IntegerFor i = 1 To 5max = a(i, 1)For j = 1 To 5If max < a(i, j) Thenmax = a(i, j)End Ifb(i) = maxIf max = a(i, j) Then c(i) = jNext jNext iFor i = 1 To 5Picture2.Print b(i)Picture3.Print c(i)NextEnd Sub8.Option ExplicitOption Base 1Dim a(5, 5) As IntegerPrivate Sub Command1_Click() '生成数组并显示Dim i As Integer, j As IntegerPicture1.ClsPicture2.ClsLabel3.Caption = "最大值?"Label4.Caption = "最小值?"RandomizeFor i = 1 To 5For j = 1 To 5a(i, j) = Int(90 * Rnd) + 10Picture1.Print a(i, j);NextPicture1.PrintNextEnd SubPrivate Sub Command2_Click() '交换并显示Dim i As Integer, j As Integer, t As IntegerDim maxi As Integer, mini As Integer, max As Integer, min As Integer max = 10: min = 99For i = 1 To 5For j = 1 To 5If max < a(i, j) Thenmax = a(i, j)maxi = iEnd IfIf min > a(i, j) Thenmin = a(i, j)mini = iEnd IfNextNextIf maxi <> mini ThenFor j = 1 To 5t = a(maxi, j)a(maxi, j) = a(mini, j)a(mini, j) = tNext jFor i = 1 To 5For j = 1 To 5Picture2.Print a(i, j);NextPicture2.PrintNextLabel3.Caption = "最大值" & max & "在第" & maxi & "行"Label4.Caption = "最小值" & min & "在第" & mini & "行"ElsePicture2.Print "最小值和最大值在一行"Label3.Caption = "最大值" & max & "在第" & maxi & "行"Label4.Caption = "最小值" & min & "在第" & mini & "行"End IfEnd SubPrivate Sub Form_click()Picture1.ClsPicture2.ClsLabel3.Caption = ""Label4.Caption = ""End Sub9.Option Base 1Private Sub Command1_Click()Dim i As Integer, j As Integer, n As Integer, a() As Integern = InputBox("请输入一个奇数N:")If n Mod 2 = 0 ThenMsgBox ("请重新输入奇数!")End IfReDim a(n, n)For i = 1 To nFor j = 1 To nIf i = (n + 1) / 2 And j = (n + 1) / 2 Thena(i, j) = -1ElseIf i = j Or i + j = n + 1 Thena(i, j) = 1Elsea(i, j) = 0End IfNext jFor i = 1 To nFor j = 1 To nPrint a(i, j);Next jPrintNext iEnd Sub10.Option Base 1Dim a(10) As IntegerPrivate Sub Command1_Click()Dim i As IntegerPrint "生成的数组:"RandomizeFor i = 1 To 10a(i) = Int(Rnd * 90) + 10Print a(i);NextPrintEnd SubPrivate Sub Command2_Click()Dim i As Integerx = InputBox("请输入要删除的数组元素下标:") Print "删除第" & x & "个数组元素后:"For i = x + 1 To 10a(i - 1) = a(i)NextFor i = 1 To 9Print a(i);NextEnd Sub11.Option ExplicitDim a(20) As Integer, i As IntegerPrivate Sub Command1_Click()RandomizeFor i = 1 To 20a(i) = Int(Rnd * 9) + 1Text1 = Text1 & a(i) & " "If i = 10 Then Text1 = Text1 & vbCrLf NextPrivate Sub Command2_Click()Dim j As Integer, k As Integer, b(20) As Boolean 'b(2)用来记录a(2)是否和前面的数相同,相同记为true,不再统计For i = 1 To 20k = 1If b(i) = False Then '如果b(i)=False,表示a(i)没有被统计过For j = i + 1 To 20If a(i) = a(j) Thenk = k + 1b(j) = TrueEnd IfNext jList1.AddItem a(i) & "出现次数:" & kEnd IfNextEnd SubPrivate Sub Command3_Click()Text1 = ""List1.ClearEnd Sub第6章过程一、选择题二、填空题1. 6 .2. 4 20 1013.第一行是 6 26 、第三行是-2 984.第一行10 6 、第二行 5 -55.第一行 6 5 、第三行8 76.第一行11 、第二行77.Fun(i)Fun=p8.第一行 4 、第二行2079.第一行29 、第二行28.710.J=kb( ) As Integerb( k-1) =b(k)i11.第一行gec 、第二行ge 、第四行 312.p1 = True And p2 = True 或p1 And p2= isp(i)Isp = Truem Mod i = 013.Convert(st)Len(s)"A" To "F"k = k + p * h14.isualVisualVisu15.s + an + 1x As Single, n As Integer 、p * (x + i) / ((2 * i - 1) * i * x)16.27617.Left(s, 1)Mid(s, i - 1, 1) = Mid(s, i, 1)n = 1c & CStr(n)18.chtempTrue19.val(mid(s,i,j))n as longprime=True20.A(2,2)的值是 6 ,A(3,1) 的值是8 ;A(4,2) 的值是 321.Option1(i)X22.1023.第一行7 6 ,第二行16 16 ,第三行,4524.第一行15 1 ,第二行35 3 ,第三行,50三、改错题1、Option Base 1Private Sub Command1_Click()Dim A() As Integer, I As Integer, J As Integer, Logic As Boolean Dim K As IntegerReDim A(1)A(1) = 50————————'K=1For I = 51 To 149K = 1 '位置错Logic = FalseCall Sub1(A, I, Logic)If Logic ThenK = K + 1ReDim A(K) 'ReDim Preserve A(K)A(K) = IEnd IfNext IFor I = 1 To UBound(A)Text1 = Text1 & Str$(A(I))If I Mod 5 = 0 Then Text1 = Text1 & vbCrLfNext IEnd SubPrivate Sub Sub1(A() As Integer, N As Integer, F As Boolean) Dim I As Integer, J As Integer, Ub As IntegerUb = UBound(A)For I = 1 To UbFor J = 2 To A(I)If A(I) Mod J = 0 And N Mod J = 0 ThenExit For 'Exit SubEnd IfNext JF = TrueNext IEnd Sub2、Option ExplicitOption Base 1Private Sub Command1_Click()Dim I As Integer, Flg As Boolean, S1 As Integer, S2 As IntegerDim J As Integer, K As Integer, P() As IntegerReDim P(1)P(1) = 2For I = 3 To 150 Step 2For J = 2 To Sqr(I)If I Mod J = 0 Then Exit ForNext JIf J > Sqr(I) ThenReDim Preserve P(UBound(P) + 1)P(UBound(P) + 1) = I 'P(UBound(P)) = IEnd IfNext IFor I = 80 To 125If fun(I, P, S1, S2) Then 'If fun(I, P, S1, S2)Text1 = Text1 & Str$(I) & "=" & Str(S1) & "*" & Str$(S2) & vbCrLf End IfNext IEnd SubPrivate Function fun(N As Integer, P() As Integer, S1 As Integer, S2 As Integer) As Boolean Dim I As Integer, J As IntegerFor I = 1 To UBound(P)For J = 1 To UBound(P) - 1If N = P(I) * P(J) ThenS1 = P(I)S2 = P(J)'fun = TrueExit Functionfun = True '位置错End IfNext JNext IEnd Function3、Option ExplicitPrivate Sub Get_Chess(Chess() As Integer, idx As Integer, Over As Integer) 'ByVal idx As IntegerDim Ub As Integer, Counter As Integer, K As IntegerUb = UBound(Chess)Chess(idx) = 0Counter = 1K = 0 '位置错Do Until Counter = Ub - 1Do Until K = 2idx = idx + 1If idx > Ub Then idx = 1K = K + Chess(idx)LoopChess(idx) = 0Counter = Counter + 1LoopFor Over = 1 To UbIf Chess(Over) <> 0 Then Exit ForNext OverEnd SubPrivate Sub Command1_Click()Dim Chess(32) As Integer, I As Integer, J As IntegerDim K As Integer, idx As IntegerFor I = 1 To 32For J = 1 To 32Chess(J) = 1Next JCall Get_Chess(Chess, I, K)If K = 23 ThenText1 = "从第" & Str$(I) & "号棋子开始取"Exit ForEnd IfNext IEnd Sub4、Option ExplicitPrivate Sub Form_Click()Dim S As String, Flg As BooleanDoS = InputBox("输入一个自然数")If S = "" Or Not IsNumeric(S) ThenMsgBox "请重新输入", 48 + vbOKOnlyElseExit DoEnd IfLoopjudge(S, Flg) ' Call judge(S, Flg) 或judge S, Flg If Flg ThenPrint S; "是回文数"ElsePrint S; "不是回文数"End IfEnd SubPrivate Sub judge(Ch As String, F As Boolean)Dim L As Integer, I As IntegerL = Len(Ch)F = True ' F = FalseFor I = 1 To LIf Mid$(Ch, I, 1) <> Mid$(Ch, L + 1 - I, 1) Then Exit Sub Next IF = False ' F = TrueEnd Sub四、编程题1.Private Function Prime(a As Integer) As BooleanDim i As IntegerFor i = 2 To Sqr(a)If a Mod i = 0 Then Exit FunctionNext iPrime = TrueEnd Function'方法一Private Sub Command1_Click()Dim m As Integer, i As Integerm = InputBox("请输入一个大于2 的偶数")If m <= 2 Or m Mod 2 <> 0 Then MsgBox "请输入大于2的偶数": Exit Sub If Prime(2) And Prime(m - 2) ThenPrint m & "=2 +" & m - 2ElseDoi = i + 1If Prime(2 * i + 1) And Prime(m - (2 * i + 1)) ThenPrint m & "=" & 2 * i + 1 & "+" & m - (2 * i + 1)Exit DoEnd IfLoop While 2 * i + 1 < m - (2 * i + 1)End If'方法二Private Sub Command2_Click()Dim m As Integer, i As Integer, p() As Integer, n As IntegerDim flg As Booleanm = InputBox("请输入大于2的偶数")If m <= 2 Or m Mod 2 <> 0 Then MsgBox "请输入大于2的偶数": Exit Sub ReDim p(1)p(1) = 2n = 1For i = 3 To m - 2 Step 2If Prime(i) Thenn = n + 1ReDim Preserve p(n)p(n) = iEnd IfNext iFor i = 1 To nFor j = 1 To nIf p(i) + p(j) = m ThenPrint m & "=" & p(i) & "+" & p(j)flg = TrueExit ForEnd IfNext jIf flg = True Then Exit ForNext iEnd Sub2.Private Function Fact(a As Integer) As LongIf a = 0 Or a = 1 ThenFact = 1ElseFact = a * Fact(a - 1)End IfEnd FunctionPrivate Sub Command1_Click()Dim n As Integer, m As Integer, result As Singlen = Val(Text1.Text)m = Val(Text2.Text)If n >= m Thenresult = Fact(n) / Fact(m) / Fact(n - m)Text3.Text = resultMsgBox "要求n>=m,请重新输入"Text1.Text = ""Text2.Text = ""Text1.SetFocusEnd IfEnd SubPrivate Sub Command2_Click()Text1.Text = ""Text2.Text = ""Text3.Text = ""Text1.SetFocusEnd Sub3.Private Function Istgs(n As Integer) As BooleanDim s As String, L As IntegerL = Len(CStr(n))s = CStr(n ^ 2)If Right(s, L) = n Then Istgs = TrueEnd FunctionPrivate Sub Command1_Click()Dim n As IntegerFor n = 10 To 300If Istgs(n) Then List1.AddItem n & "^2" & "=" & n ^ 2 Next nEnd SubPrivate Sub Command2_Click()EndEnd Sub4.Private Sub Command1_Click()Dim a(3, 4) As Integer, i As Integer, j As IntegerDim m As Integer, mj As IntegerRandomizeFor i = 1 To 3For j = 1 To 4a(i, j) = Int(900 * Rnd + 100)Print a(i, j);Next jPrintNext iFor i = 1 To 3m = 0Call max(a, i, m, mj)Print "第" & i & "行最大值为" & m & ",在第" & mj & "列"Next iEnd SubPrivate Sub max(a() As Integer, i As Integer, m As Integer, maxj As Integer) Dim j As Integerm = a(i, 1): maxj = 1For j = 2 To UBound(a, 2)If a(i, j) > m Thenm = a(i, j)maxj = jEnd IfNext jEnd SubPrivate Sub Command2_Click()EndEnd Sub5.Private Function Judge(n As Integer) As BooleanDim sum As Integersum = yz(n)If yz(sum) = 2 * n Then Judge = TrueEnd FunctionPrivate Function yz(n As Integer) As IntegerDim i As IntegerFor i = 1 To nIf n Mod i = 0 Then yz = yz + iNext iEnd FunctionPrivate Sub Command1_Click()Dim n As IntegerFor n = 1 To 500If Judge(n) Then Print nNext nEnd SubPrivate Sub Command2_Click()EndEnd Sub6.Private Sub Command1_Click()Dim n As Integer, j As Integer, flg As BooleanFor n = 2 To 30flg = FalseFor j = 2 To nIf pfs(j) And n Mod j = 0 Thenflg = TrueExit ForEnd IfNext jIf flg = False Then Print n;Next nEnd SubPrivate Function pfs(n As Integer) As BooleanIf Sqr(n) = Int(Sqr(n)) Then pfs = TrueEnd Function7.Private Function fxs(n As Long) As LongDim i As Integer, s As StringFor i = 1 To Len(CStr(n))s = Mid(CStr(n), i, 1) & sNext ifxs = sEnd Function'判断某数是否为回文数Private Function Hws(n As Long) As BooleanDim i As Integer, s As String, L As Integers = CStr(n): L = Len(s)For i = 1 To Len(s) / 2If Mid(s, i, 1) <> Mid(s, L + 1 - i, 1) Then Exit Function Next iHws = TrueEnd FunctionPrivate Sub Command1_Click()Dim x As Long, t As Longx = InputBox("请输入一个正整数:")t = xDo While Hws(t) = FalsePrint t; "+"; fxs(t); "="; t + fxs(t)t = t + fxs(t)LoopEnd Sub8.Private Function fxs(n As Long) As LongDim i As Integer, s As StringFor i = 1 To Len(CStr(n))s = Mid(CStr(n), i, 1) & sNext ifxs = sEnd FunctionPrivate Sub Command1_Click()Dim n As Long, t As LongFor n = 1 To 999t = fxs(n)If t ^ 2 = fxs(n ^ 2) And n Mod 10 <> 0 And n < t ThenList1.AddItem n & " " & tList2.AddItem n & "^2" & "=" & n ^ 2 & " " & t & "^2" & "=" & t ^ 2 End IfNext nEnd Sub9.Private Function fxs(n As Long) As LongDim i As Integer, s As StringFor i = 1 To Len(CStr(n))s = Mid(CStr(n), i, 1) & sNext ifxs = sEnd FunctionPrivate Function Judge(n As Integer) As BooleanDim i As Integer, L As Integer, a(9) As Integer, t As IntegerIf Sqr(n) = Int(Sqr(n)) ThenL = Len(CStr(n))For i = 1 To Lt = Mid(CStr(n), i, 1)a(t) = 1Next iFor i = 0 To 9Sum = Sum + a(i)Next iIf Sum = L - 1 Then Judge = TrueEnd IfEnd FunctionPrivate Sub Command1_Click()Dim a As IntegerFor a = 300 To 2000If Judge(a) Then List1.AddItem aNext aEnd Sub10.Private Function F(n As Integer) As BooleanDim i As IntegerFor i = 1 To Len(CStr(n))If i Mod 2 = 1 And Mid(CStr(n), i, 1) Mod 2 <> 1 Then Exit FunctionIf i Mod 2 = 0 And Mid(CStr(n), i, 1) Mod 2 <> 0 Then Exit Function Next iF = TrueEnd FunctionPrivate Sub Command1_Click()Dim a(8) As Integer, i As Integer, j As IntegerRandomizeDot = Int(900 * Rnd + 100)For j = 1 To iIf t = a(j) Then Exit ForNext jIf j = i + 1 Theni = i + 1a(i) = tList1.AddItem a(i)If F(a(i)) Then List2.AddItem a(i)End IfLoop Until i = 8End SubPrivate Sub Command2_Click()List1.ClearList2.ClearEnd SubPrivate Sub CmdEnd_Click()EndEnd Sub11.Private Function prime(a As Integer) As BooleanDim i As IntegerFor i = 2 To Sqr(a)If a Mod i = 0 Then Exit FunctionNext iprime = TrueEnd FunctionPrivate Function nx(n As Integer) As IntegerDim i As Integer, s As StringFor i = 1 To Len(CStr(n))s = Mid(CStr(n), i, 1) & sNext inx = Val(s)End FunctionPrivate Sub Command1_Click()Dim n As Integer, t As IntegerFor n = 100 To 900t = nx(n)If prime(n) And prime(t) And n < t ThenList1.AddItem "(" & n & "," & t & ")"End IfNext nEnd SubPrivate Sub Command2_Click()List1.ClearEnd Sub12.Option Base 1Dim a(4, 5) As IntegerPrivate Sub Command1_Click()Dim i As Integer, j As IntegerRandomizeFor i = 1 To 4For j = 1 To 5a(i, j) = Int(Rnd * 90 + 10)Picture1.Print a(i, j);Next jPicture1.PrintNext iEnd SubPrivate Sub Fp(a() As Integer, i As Integer, maxj As Integer, Flg As Boolean) Dim max As Integer, j As Integer, t As Integermax = a(i, 1): maxj = 1For j = 2 To UBound(a, 2)If a(i, j) > max Thenmax = a(i, j)maxj = jEnd IfNext jFor t = 1 To UBound(a, 1)If a(t, maxj) > max ThenFlg = FalseExit SubEnd IfNextFlg = TrueEnd SubPrivate Sub Command2_Click()Dim i As Integer, m As Integer, mj As Integer, f As BooleanFor i = 1 To 4f = Falsem = 0: mj = 0Call Fp(a, i, mj, f)If f = True ThenText1.Text = Text1.Text & "(" & i & "," & mj & "):" & a(i, mj) & vbCrLf End IfNext iEnd SubPrivate Sub Command3_Click()Picture1.ClsText1 = ""End Sub13.Private Sub Command1_Click()Dim a(30) As Integer, i As Integer, j As IntegerDim Flag As BooleanRandomizeDot = Int(900 * Rnd + 100)For j = 1 To iIf t = a(j) Then Exit ForNext jIf j = i + 1 Theni = i + 1a(i) = tText1.Text = Text1.Text + Str(a(i))If i Mod 10 = 0 Then Text1.Text = Text1.Text + vbCrLfIf IsDown(a(i)) ThenList1.AddItem a(i)Flag = TrueEnd IfEnd IfLoop Until i = 30If Flag = False Then List1.AddItem "无降序数"End SubPrivate Function IsDown(n As Integer) As BooleanDim i As Integer, S As StringS = CStr(n)For i = 1 To Len(S) - 1If Mid(S, i, 1) < Mid(S, i + 1, 1) Then Exit FunctionNext iIsDown = TrueEnd FunctionPrivate Sub Command2_Click()List1.ClearText1 = ""End Sub14.Option ExplicitPrivate Sub CmdFind_Click()Dim i As Integer, p As String, st As String, st1 As StringFor i = 100 To 999st = ""If csum(i) = zyz(i, st) Thenp = CStr(i)st1 = Left(p, 1) & "+" & Mid(p, 2, 1) & "+" & Right(p, 1)List1.AddItem i & ": " & st1 & "=" & Left(st, Len(st) - 1)End IfNext iIf List1.ListCount = 0 ThenList1.AddItem "无满足要求的数!"End IfEnd SubPrivate Function csum(m As Integer) As Integer '求各位数字之和Dim i As Integer, p As Stringp = CStr(m)For i = 1 To Len(p)csum = csum + Val(Mid(p, i, 1))Next iEnd FunctionPrivate Function zyz(ByVal m As Integer, st As String) As Integer '求所有质因子之和Dim i As Integeri = 2DoIf m Mod i = 0 Thenzyz = zyz + ist = st & i & "+"m = m \ iElsei = i + 1End IfLoop Until m = 1End Function15.Private Sub Command1_Click()Dim k As Integer, i As Integerk = InputBox("请输入要求的数列项数:")List1.AddItem "共输出前" & k & "项数列"For i = 0 To kList1.AddItem p(i)NextEnd SubPrivate Function p(n As Integer) As IntegerIf n = 0 Or n = 1 Or n = 2 Thenp = 1Elsep = p(n - 2) + p(n - 3)End IfEnd Function第7章文件一、选择题二、填空题1.顺序文件和随机文件2. EOF3. Write和Print4.返回或设置当前的工作目录5.5116.文件的写语句7.Append8.LOF9.关闭10.Pattern11.【1】For Input 【2】#2 【3】Not EOF(2) 12.【1】”END”【2】Text1.Text 或者Text113.【1】Input 【2】ch 【3】Len(mystr) 14.【1】Number 【2】s15.【1】For Append As #1 【2】"end" 【3】ct,nt 16.【1】For Input 【2】For Output As #2 【3】Not EOF(1) 【4】Line Input #1,str1 【5】Close #1,#2 【6】Kill “C:\old.txt 17.【1】Open "C:StuData.txt" For OutPut As #1 【2】Write 18.【1】"C:\data.txt" 【2】#1, a(i) 【3】k>1 And a(k-1)>b 【4】k = k -1三、综合题1.Option Base 1Dim arr(100) As IntegerPrivate Sub Command1_Click()Dim i As IntegerOpen "c:\in18.txt" For Input As #6For i = 1 To 100Input #6, arr(i)Next iClose #6End SubPrivate Sub Command2_Click()Dim i As IntegerText1.Text = ""Open "c:\out18.txt" For Output As #8For i = 1 To 100If arr(i) Mod 2 <> 0 ThenText1.Text = Text1.Text & Str(arr(i))Write #8, arr(i)End IfNext iClose #8End Sub2.Dim str As StringDim n As LongPrivate Sub Command1_Click()CommonDialog1.Filter = "文本文件(*.txt)|*.txt|All Files(*.*)|*.*"CommonDialog1.FilterIndex = 1CommonDialog1.Action = 1Open CommonDialog1.FileName For Input As #2n = LOF(2)str = Input(n, #2)Text1.Text = strClose #2End SubPrivate Sub Command2_Click()Dim i As IntegerFor i = 1 To Len(str)If Asc(Mid(str, i, 1)) <= Asc("Z") And Asc(Mid(str, i, 1)) >= Asc("A") Then Mid(str, i, 1) = LCase(Mid(str, i, 1))ElseIf Asc(Mid(str, i, 1)) <= Asc("z") And Asc(Mid(str, i, 1)) >= Asc("a") Then Mid(str, i, 1) = UCase(Mid(str, i, 1))End IfNext iText1.Text = strEnd SubPrivate Sub Command3_Click()Open "D:\out.txt" For Output As #3Print #3, strClose #3End Sub第8章程序调试一.选择题二.改错题1.a(i)=int(Rnd*19)+1 →a(i)=int(rnd*20)+1For l=1 to a(i)+1 →for i=2 to a(i)+1If l=a(i) →if l <> a(i)K=k+1 →k=k-1。

VB程序设计学习与实验指导书答案(包含实验答案)

VB程序设计学习与实验指导书答案(包含实验答案)

VB学习与实验指导测试题参考答案第一章第二章第三章第四章第五章第六章第七章第八章第九章综合测试题一综合测试题二下篇实验教程实验2 Visual Basic 变量、函数与表达式的使用实验2-1 算术运算符的使用13178332262-2-22007-10-153 2.857143 2.85714285714286实验2-2 字符运算符的使用20071020071020172007-10-10102007-10-20出错,类型不匹配实验2-3 关系运算符的使用FalseFalseFalseFalseFalseFalseFalseTrueFalseTrue实验2-4 逻辑运算符的使用TrueTrueFalseTrueFalseFalseTrueTrueFalse5-59实验2-5 常用函数的使用3.14 3.147.389056098930651 -1 .999999998205103 4-1 1 0.70554755825 251250 0A a65 9748 688 -98 -89 -9aaa 4.5 aaa4.516 5Visua 6.0sua Basic Basic 6.0abcde EFGBasic Basic BasicVisual Basic 6.0 Basic8 8aaa dd2011-3-152011-3-15 14:35:5215320113001.731.731.7317.32E-010173%实验3 算法基础及程序控制结构实验3-1 三个数的交换A=CC=BB=TBC实验3-2 求周长和面积Const PI=3.14159262*PI*RPI*R*RPicture1.ClsFormat(L, ".00")Format(M, ".00")实验3-3 求分段函数的值x=Val(Text1.Text)y=1+Sin(x)y=Log(x)Text1.Text = ""Text2.Text = ""实验3-4 求一元二次方程的根Val(Text2.Text)Val(Text3.Text)b ^ 2 - 4 * a * c"x1=" & (-b + Sqr(delt)) / (2 * a)"x2=" & (-b - Sqr(delt)) / (2 * a)Text2.Text = ""Text3.Text = ""End实验3-5 判断素数N Mod k = 0k=NN Mod i=0k=2实验3-6 求最大公约数和最小公倍数M<NL=ML=NM Mod k = 0 And N Mod k = 0Text3.Text = kExit ForM>NL=ML=Nk Mod M = 0 And k Mod N = 0Text4.Text = kExit For实验3-7 判断升序数、降序数CStr(N)Len(S) – 1Mid(S, k, 1) >= Mid(S, k + 1, 1)k = Len(S)N = Val(Text1.Text)S = CStr(N)For k = 1 To Len(S) - 1If Mid(S, k, 1) <= Mid(S, k + 1, 1) Then Exit For Next kk = Len(S)实验3-8 判断回文数1Len(s)\2-1Mid(S, k, 1) <> Mid(S, Len(S) - k + 1, 1)k = Len(S) \ 2Mid(S, k, 1) + S1S = S1实验3-9 求级数的值Val(Text1.Text)1x ^ ns * nt / s <= 10 ^ -6Text2.Text = y实验3-10 查找数字串并求和Text1.Text = ""Text2.Text = ""List1.ClearText1.TextFalseWhile Mid(s, i, 1) >= "0" And Mid(s, i, 1) <= "9" Flag = Truek = k * 10 + Mid(s, i, 1)i = i + 1Flag = Truesum + kText2.Text = sum实验3-11 随机产生20个奇数Int((99 - 10 + 1) * Rnd) + 10a Mod 2 = 1n Mod 5 = 0Picture1.Cls实验3-12 加密解密Chr(Asc("a") + (Asc(c) - Asc("a") + 3) Mod 26)c = Chr(Asc("A") + (Asc(c) - Asc("A") + 3) Mod 26) c & s2Text2.TextLen(s2)Mid(s2, i, 1)c = Chr(Asc("a") + (Asc(c) - Asc("a") + 23) Mod 26) c = Chr(Asc("A") + (Asc(c) - Asc("A") + 23) Mod 26) c & s1s1Text1.Text = ""Text2.Text = ""实验3-13 统计单词个数Text1.TextMid(s, i, 1) <> " " And i <= Len(s)i = i + 1Mid(s, start, i - start)nText1.Text = ""List1.Clear实验4 数组的使用实验4-1 一维数组的产生及输出i = 1 To 20Int((9 - 0 + 1) * Rnd + 0)i = 1 To 20Print a(i);Printi = 1 To 20Picture1.Print a(i);If i Mod 5 = 0 Then Picture1.Printi = 1 To 20Text1.Text & Space(2) & a(i)If i Mod 5 = 0 Then Text1.Text = Text1.Text & vbCrLf v In aIf i Mod 5 = 0 Then Picture2.Print实验4-2 选手得分Int((50 - 10 + 1) * Rnd + 10) / 10i = 1 To 6sum = sum + score(i)max = score(1)min = score(1)score(i) > max Then max = score(i)score(i) < min Then min = score(i)(sum - max - min) / 4实验4-3 产生10个互不相同的整数Int((999 - 10 + 1) * Rnd + 10)t Mod 10 = 5Then Exit Forn= n + 1a(i) = tFor i = 1 To 10Print a(i);If i Mod 5 = 0 Then PrintNext i实验4-4 统计数字出现的次数IsNumeric(S) = FalseExit SubLen(S)c >= "0" And c <= "9"A(c) = A(c) + 1A(k) <> 0m = m + 1实验4-5 排序1 To 10Int((99 - 10 + 1) * Rnd + 10)Text1.Text & A(n) & " "1 To 9i + 1 To 10A(i) > A(j)T = A(j)A(j) = A(i)A(i) = T1 To 910 - iA(j) > A(j + 1)T = A(j + 1)A(j + 1) = A(j)A(j) = T1 To 10Text3.Text = Text3.Text & A(i) & " "10T = A(i)ji - 1k + 11 To 10Text4.Text = Text4.Text & A(i) & " "实验4-6 二维数组的产生及输出1 To 41 To 5Int((9 - 0 + 1) * Rnd + 0)1 To 41 To 5Print A(i, j);Print1 To 41 To 5Picture1.Print A(i, j);Picture1.Print1 To 41 To 5Text1.Text = Text1.Text & A(i, j) & " "Text1.Text = Text1.Text & vbCrLf实验4-6 查找最大和最小元素及其位置1 To 31 To 4A(i, j) = Int((99 - 10 + 1) * Rnd + 10)Picture1.Print A(i, j);Picture1.PrintA(1, 1), 1, 1A(1, 1), 1, 1A(i, j)ijA(i, j) < minA(i, j)ij"最大元素" & "A(" & maxi & "," & maxj & ")=" & max "最小元素" & "A(" & mini & "," & minj & ")=" & min实验4-7 矩阵转置Dim A() As Integer"请输入N的值"ReDim A(N, N) As IntegerFor i = 1 To NFor j = 1 To NA(i, j) = Int((99 - 10 + 1) * Rnd + 10)Text1.Text = Text1.Text & A(i, j) & " "Next jText1.Text = Text1.Text & vbCrLfNext it = A(i, j)A(i, j) = A(j, i)A(j, i) = tFor i = 1 To NFor j = 1 To NText2.Text = Text2.Text & A(i, j) & " "Next jText2.Text = Text2.Text & vbCrLfNext i实验5 过程实验5-1 孪生素数和降序素数Dim i As IntegerFor i = 2 To N - 1If N Mod i = 0 Then Exit FunctionNext iPrime = TrueDim a As IntegerDim b As Integera = N \ 10b = N Mod 10If a > b ThenDecNumber = TrueElseDecNumber = FalseEnd If10 To 100Prime(i) = True And Prime(i + 2) = TrueList2.AddItem i & "和" & i + 2DecNumber(i) = True And Prime(i) = TrueList3.AddItem i实验5-2 求多项式和k = 1a = f(x, k)S + ak = k + 1Single As SingleDim i As Integer, a As Singlea = (x + 1) / xFor i = 2 To ka = a * (x + i) / ((2 * i - 1) * x)Next ia实验5-3 进制转换Asc(C) - Asc("A") + 10Left(S, k - 1)Mid(S, k + 1)Change(Mid(S2, i, 1)) * N ^ (0 - i)T1 + T2Tran(8, S)Tran(16, S)Not (C >= "0" And C <= "7" Or C >= "A" And C <= "F" Or C = ".")实验5-4 Armstrong数i As Long, a As Long, b As LongCombo1.Text实验5-5Option Base 1Dim a(5) As IntegerDim b(5) As Integerb(i) = i * i + 1Text2.Text = Text2.Text & b(i) & " "1 To 51 To 5Gcd(a(i), b(j)) = 1Gcd = KExit For实验5-6Create(a)Output(a)Sort(a)Output(a)GetMaxMin(a, MaxData, MinData)MaxDataMinDataAverage(a)Int((99 - 10 + 1) * Rnd + 10)1 To UBound(a)a(i);a(i) > a(j)t = a(j)a(j) = a(i)a(i) = t2 To UBound(a)a(i) > MM = a(i)a(i) < NN = a(i)s = s + a(i)Average = s / UBound(a)实验6 界面设计实验6-1 用户登陆MsgBox "请登录!"PassWordInput=TxtPassW.TextUserIdInput=UserId And PassWordInput=PassWordCmdReset_Click实验6-2 学籍登记OptXb(0).Value = TrueList1.AddItem Space(4) & xh & Space(6) & xm & Space(6) & xb & Space(12) & xy & Space(16) & zy & Space(4)List1.RemoveItem List1.ListIndex实验6-3 字体格式设置Select Case OpFontCheck2.Value = 1OpColor = IndexOpFont = Index实验6-4 兴趣调查List1.AddItem ItemEndSelect Case IndexItem = Text1.Text实验6-5 调色板。

vb实验总结通用模板(热门9篇)

vb实验总结通用模板(热门9篇)

vb实验总结通用模板第1篇一个月的时间非常快就过去了,这一个月我不敢说自己有多大的进步,获得了多少知识,但起码是了解了项目开发的部分过程。

虽说上过数据库相关的课程,但是没有亲身经历过相关的设计工作细节。

这次课程设计给我提供了一个很好的机会。

通过这次课程设计发现这其中需要的很多知识我们没有接触过,上网查找资料的时候发现我们以前所学到的仅仅是皮毛,还有很多需要我们掌握的东西我们根本不知道。

同时也发现有很多已经学过的东西我们没有理解到位,不能灵活运用于实际,不能很好的用来解决问题,这就需要自己不断的大量的实践,通过不断的自学,不断地发现问题,思考问题,进而解决问题。

在这个过程中我们将深刻理解所学知识,同时也可以学到不少很实用的东西。

这次的数据库课程设计,我们组负责的企业信息文档管理系统的设计。

这课题是自拟的。

我们组实行的分工合作。

我主要是负责数据库功能模块设计这部分。

从各种文档的阅读到需求分析、概要设计、数据库总体设计、代码编写与调试,我们都准备了好长时间。

组内分工合作的整个过程,我亲身体验了一回系统的设计开发过程,分工合作的好处。

很多东西书上写的很清楚,貌似看着也很简单,思路非常清晰。

但真正需要自己想办法去设计一个系统的时候才发现其中的难度。

经常做到后面突然就发现自己一开始的设计有问题,然后又回去翻工,在各种反复中不断完善自己的想法我想有这样的问题不止我一个,事后想想是一开始着手做的时候下手过于轻快,或者说是根本不了解自己要做的这个系统是给谁用的。

因为没有事先做过仔细的用户调查,不知道整个业务的流程,也不知道用户需要什么功能就忙着开发,这是作为设计开发人员需要特别警惕避免的,不然会给后来的工作带来很大的麻烦,甚至可能会需要全盘推倒重来。

所以以后的课程设计要特别注意这一块的设计。

经过组内讨论,我们确定的课题是企业信息文档管理系统。

说实话,我对这个系统不是很了解。

通过上网查找资料、相关文献的阅读,我对该系统有了大体的了解。

vb实验心得体会

vb实验心得体会

vb实验心得体会实验是科学研究的重要手段之一,通过对特定现象或问题进行观察、测量、控制和比较等一系列操作,可以验证假设,得到科学结论。

最近我在学校的实验室进行了一系列VB实验,以下是我的心得体会。

首先,VB实验需要严谨的实验设计和周密的计划。

在实验开始之前,我们需要明确实验的目的和问题,思考应该采取什么样的方法和步骤来回答这些问题。

这就要求我们对VB语言的特点和应用有一定的了解,并且要掌握实验所需的操作技巧。

在实验设计和计划的过程中,我充分发挥了自己的创造力和想象力,不断思考和尝试,以确保实验的顺利进行。

其次,VB实验需要耐心和细心。

VB语言的编写过程往往涉及到很多细节,比如变量的声明和赋值、条件语句和循环语句的使用、界面设计和布局等等。

在操作和编写代码的过程中,一不小心可能就会出现错误或bug,这就需要我们细心地排查问题,并进行错误的修复和调试。

有时,可能需要反复检查和修改代码,直到得到正确的结果。

在实验中,我深刻体会到了耐心和细心的重要性,这对于提高实验的效果和准确性非常关键。

另外,VB实验需要合作和协作的精神。

在实验室中,我和同学们一起进行实验,大家会相互讨论和交流,互相帮助和支持。

有时,由于个人的知识和经验有限,可能会遇到一些难题,这时就需要大家共同努力,共同解决。

通过合作和协作,我们可以互相借鉴和学习,提高自己的思维能力和解决问题的能力。

实验中,我也很愿意主动帮助他人,提出自己的观点和建议,通过与同学们的交流和合作,不仅解决了实验中的问题,更加深了我对VB语言的理解和掌握。

最后,VB实验需要反思和总结。

每一次实验的结束都是一个总结和反思的时刻,我们应该思考实验的过程和结果,分析其中的成功和失败,总结经验和教训。

通过反思和总结,我们可以及时发现问题和不足,提高实验能力和水平。

例如,我在实验中经常会遇到代码不够简洁和清晰的问题,导致程序的效率不高。

通过总结,我逐渐改善了自己的编码习惯,提高了代码的可读性和可维护性。

VB经典例题(附答案)

VB经典例题(附答案)

实验4:编写一个程序。

要求在窗体内设置7个标签(Label)及7个文本框(TextBox),将每个标签的Text属性值设置为如下表达式。

在程序运行时,单击窗体空白区,可在对应的文本框中输出这些表达式的值。

1)8*3*6\22)7/6*3.2/2.15*(5.5+3.5)3)34\4+4.0^5/124)65\3 mod 3.4*fix(3.8)5)“abg”+”34” & “erert”6)true or not (8+3>=23)7)7>2 or 4<9实验目的:学习VB运算符的使用。

Public Class Form1Private Sub Form1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.ClickTextBox1.Text = 8 * 3 * 6 \ 2TextBox2.Text = 7 / 6 * 3.2 / 2.15 * (5.5 + 3.5)TextBox3.Text = 34 \ 4 + 4.0 ^ 5 / 12TextBox4.Text = 65 \ 3 Mod 3.4 * Fix(3.8)TextBox5.Text = """abg""" + """34""" & """erert"""TextBox6.Text = True Or Not (8 + 3)>= 23TextBox7.Text = 7 > 2 Or 4 < 9End SubEnd Class实验5:编写一个程序。

设a=2,b=3,c=4,d=5,S="ABCDEFGHI]K",求下列表达式的值:(1) 5+(a+b)2(2) cos(b)(sin(a)+1) (3) 8e3ln2(4) Left(S,4) (5) Mid(S, 3,4) (6) Instr(S, "EFG")(7) Lcase(Right(S, 5)) (8) Len(Mid((S, 3)实验目的:学习VB中函数的使用。

vb程序设计教程课后答案与实验题答案(第三版)

vb程序设计教程课后答案与实验题答案(第三版)

习题一答案在教材上找。

习题二1.对象指现实世界中的实体。

每个对象有自己的特征(属性)、行为(方法)和发生在该对象上的活动(事件)。

类是对同一种对象的集合与抽象。

类包含所创建对象的属性数据,以及对这些数据进行操作的方法。

封装和隐藏是类的重要特性,将数据结构和对数据的操作封装在一起,类的内部实现细节对用户来说是透明的。

VB工具箱中的可视图标是VB系统设计好的标准控件类。

通过将控件类实例化,得到真正的控件对象。

在窗体上画一个控件,就将类转换为对象,创建了一个控件对象。

VB中常用的对象是控件。

此外,VB还提供了系统对象。

窗体是个特例,它既是类也是对象。

当向一个工程添加一个新窗体时,实质就由窗体类创建了一个窗体对象。

对象的三要素:属性、事件和方法。

属性:存放对象的数据(决定对象外观及功能)对象属性的设置方法:在设计阶段,利用属性窗口直接设置属性值;程序运行时,通过语句[对象名.]属性名=属性值。

若属性只能在设计阶段设置,在程序运行阶段不可改变,称为只读属性。

事件:发生在对象上的事情。

同一事件,对不同的对象,会引发不同的反应。

事件过程:应用程序处理事件的步骤。

应用程序设计的主要工作就是为对象编写事件过程的代码。

方法:面向对象的程序设计语言,为程序设计人员提供了一种特殊的过程和函数。

方法是面向对象的,调用时一定要指明对象。

2.窗体和控件具有的基本属性“(1) Name属性:名称所创建的对象名称,在程序中引用。

(2) Caption属性:标题该属性决定了对象上显示的内容。

(3) Height、Width、Top和Left属性决定对象的大小和位置。

(4) Enabled 属性:对象是否允许操作(5) Visible 属性:对象是否可见(6) Font 属性组:文本的外观FontName字体、FontSize大小FontBold粗体、FontItalic斜体FontStrikethru 删除线FontUnderline 下划线(7) ForeColor属性:前景颜色(8) BackColor属性:背景颜色(9) MousePointer属性:鼠标指针类型, 设置值范围0~15,由系统指定。

vb实验指导书上的联系

vb实验指导书上的联系
Text3.Text = Val(Text1) + Val(Text2)
Label1.Caption = "+"
End Sub
Private Sub Command2_Click()
Text3.Text = Val(Text1) - Val(Text2)
Label1.Caption = "-"
Next j
Print d
End Sub
实验5\实验五做一做6
Private Sub Command1_Click()
Text1.FontSize = 48
End Sub
Private Sub Command2_Click()
Text1.FontSize = 8
End Sub
j = j + 1
ElseIf w = " " Then
j = j
l = l
Else: l = l + 1
End If
Next i
Print "元音字母的数目:"; j
Print "其他字母的数目为:"; l
End Sub
实验7\实验七做一做1
Private Sub Form_Click()
y = (1 - x) * (2 - x)
Else: y = x - 2
End If
Label1.Caption = "Y=" & y
End Sub
实验6\实验六做一做3
Private Sub Text1_Change()

VB实验作业参考答案

VB实验作业参考答案
2.编程题:
1)单击窗体后在窗体上显示“您好!×××同学”。
要求:(1)程序中用自己的姓名替代“×××”。(2)文字以红色、仿宋体、加粗、三号字显示,并在字下加横线。(3)建立一个命令按钮,结束时单击此按钮退出。
答案参照课本P27的例1-6。
2)设计一窗体,窗体上有1个文本框(Text1)、1个命令按钮(Command1),运行时文本框中显示“Visual Basic程序设计”,命令按钮标题为“结束”,文本框及命令按钮能随窗体大小的调整而自动调整大小及位置,其中调整文本框使其:Left=0,Top=0,宽度和高度都为窗体的一半;命令按钮:始终位于窗体右下角位置。请编写:
Command1.Top = Form1.ScaleHeight - Command1.Height
End Sub
Private Sub Form_Resize()
Call Form_Load
End Sub
Private Sub Command1_Click()
End
Dim r1 As Single, r2 As Single, Rp As Single, Rs As Single
r1 = InputBox("请输入第一个电阻值:")
r2 = InputBox("请输入第二个电阻值:")
Rp = (r1 * r2) / (r1 + r2)
Rs = r1 + r2
程序代码:
Private Sub Command1_Click()
Dim sg As String, tz As String, bz As String
sg = Text1.Text
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验二、常用控件的认识和使用-程序设计基础
【实验目的】
1、掌握VB 的常量、变量、数组和表达式的定义和使用。

2、熟练掌握VB 语句的书写。

3、掌握基本的输入、输出语句的使用掌握各种常用函数的使用。

4、掌握简单算法的编程。

【实验内容】
1 .电路图计算
计算如图T2.1 所示电路图中的电流I ,已知电路图中电阻R1=200 Ω、R2=300 Ω、R3=600Ω。

图T2.1 电路
根据欧姆定律:R=R1+R3*R2/ (R3+R2 ),I=U/R 。

通过文本框txtInput 输入电压U ,单击按钮cmdStart开始运算,在文本框txtOutput 中输出计算的电流
I 。

(1) 新建一个“标准EXE ”工程
出现一个新的Form 窗口。

( 2 )设置属性
在Forml 窗口中放置两个Label 控件、两个TextBox 控件和一个CommandButton 控件。

对控件的取名采用前缀部分和控件名组合,例如txtInput 、CmdStart 、labOutput 等,属性设置如表T2.1 示。

表T2.1 属性设置
则界面安排如图T2.2 所示。

图T2.2 计算电流界面
( 3 )添加代码
双击Form 窗口或点击“工程资源管理器”窗口中的“查看代码”按钮开代码编辑器。

在单击按钮cmdStart 的过程中添加代码,点击代码编辑器的对象列表框下拉按钮选择cmdStart ,如图T2.3(a) 所示。

然后点击代码窗口的过程列表框下拉按钮选择Click 过程,如图T2.3(b) 所示,在“Private Sub cmdStart_Click ()”后添加代码。

(a) 对象列表框
(b) 过程列表框
图T2.3 列表框界面
程序代码如下:
Private Sub cmdStart_Click ()
' 单击“计算”按钮
Dim r1 ,r2 ,r3 ,r As Single
Dim U As Single
Dim I As Single
r1 =200 :r2 =300 :r3 =600
U =Val (txtInput.Text)
r=r1+r2*r3/(r2+r3)
I=U/r
txtOutput.text=I
End Sub
程序分析:
·由于文本框txtInput 的属性是字符型,因此在计算时须用Val 函数进行转换。

·定义r1 、r2 、r3 、r 、U 和I 为单精度型的变量。

( 4 )保存工程
单击“文件”菜单,选择“保存工程”命令,将窗体保存为“frmExe0201.frm ”, 将工程保存为“Exe0201.vbp ”。

( 5 )运行
单击“运行”菜单,选择“启动”命令,或单击工具栏的“启动”按钮,在窗体的文本框txtInput 输入电压值,然后单击按钮“计算”则出现运行结果,运行结果如图T2.4 所示。

练习:
·在电路图中,将变量r1 ,r2 ,r3 的数据类型设置为Double ,则在文本框中显示的数据会有何变化,如果数据类型为Integer 则在文本框中的数据如何显示。

图T2.4 运行结果
【上机参考练习题】
要求:利用课后空余时间自行练习,不需要提交。

1(基本应用题).如下图:编写程序,在文本框中输入英文字母,单击“大写”按钮把英文字符转换为大写,单击“小写”按钮把英文字符转换为小写。

此题知识点:主要涉及到两个函数(Lcase(str):"把字符串转换为小写字母")
(Ucase(str):"把字符串转换为大写字母")
2.(基本应用题)用文本框输入三角形三条边的长度a,b,c,计算并显示出三角形的面积。

公式为:
此题知识点:此题与实验内容方法类似,需要注意的是:用变量获取文本框的数据是字符类型,要完成下面的功能需用函数Val(str)将其转换为数据类型。

3.(提高应用题)如下图设计一个简易计算器,当单击对应的运算按钮,标签控件的Caption的值也同时跟着发生改变。

此题知识点:
1、变量获取文本框的数据是字符类型,要完成下面的功能需用函数Val(str)将其转换为数据类型。

2、在每一个按钮的click事件中都要改变lable控件的caption属性的值。

【实验报告】
1、无课后作业,无实验报告。

相关文档
最新文档