VBS练习题
练习题:
1、输入3个数,输出其中最大的那个值。
Option Explicit
Dim intA,intB,intC
intA=CInt(InputBox("请输入a:"))
intB=CInt(InputBox("请输入b:"))
intC=CInt(InputBox("请输入c:"))
If intA>intB And intA>intC Then
MsgBox "最大值是:"&intA
ElseIf intB>intC Then
MsgBox "最大值是:"&intB
Else
MsgBox "最大值是:"&intC
End If
2、判断输入的字符类型。
Dim a,b,c
a=InputBox("请输入一个字符:")
b=Asc(a)
If b>= And b<= Then
c=
ElseIf b>= And b<= Then
c=
ElseIf b>= And b<= Then
c=
Else
c=
End if Select Case c
Case
MsgBox "输入为数字:"&a
Case
MsgBox "输入为大写字母:"&a
Case
MsgBox "输入为小写字母:"&a
Case
MsgBox "输入为其它符号:"&a
End Select
3、输入一组数字,倒序输出。
Dim a()
For i= To
a(i)=InputBox("请输入第"&i+&"数字:")
Next
MsgBox "你输入的数字倒序输出为:"&a()&","&a()&","&a()&","&a()&","&a()
4、用VBS实现冒泡排序,输入10个数,按从小到大或从大到小的顺序排列。
Option Explicit
Dim i,j,usernum(),tempnum
For i= To
usernum(i)=CInt(InputBox("请输入第"&i+&"个数"))
Next
For i= To
For j= To -i Step
If usernum(j)>usernum(j+) Then
tempnum=usernum(j)
usernum(j)=usernum(j+)
usernum(j+)=tempnum
End If
Next
Next
For i= To
MsgBox(usernum(i))
Next
'方法二
Dim a()
For i= To
a(i)=cint(InputBox("请输入第"&i&"数字:"))
Next
Function change(x,y)
If x>y Then
tem=x
x=y
y=tem
End If
End Function
For i= To
For j= To -i
change a(j),a(j+)
next
Next
MsgBox a()&","&a()&","&a()&","&a()&","&a()&","&a()&","&a()&","&a()&","&a()&","&a()
5、用VBS实现用户名和密码的输入验证,先输入用户名再输入密码:用户名必须是4~10位的字符,否则提示用户名为空、少于4位或多于10位。密码必须是Mercury(不区分大小写),如果输入为空则提示用户输入密码,如果连续三次未输入正确密码则提示用户重新登录,然后退出。
Dim strUsername,strPassword
Do
strUsername=CStr(InputBox("please input your UserName!","Input Name"))
If Len(strUsername)< or Len(strUsername)> Then
MsgBox "用户名必须是4-10位字符!请重新输入!",,"用户名输入不正确!"
Else
Exit Do
End If
Loop x=
Do
strPassword=CStr(InputBox("please input the password!","Input password"))
strPassword=LCase(strPassword)
If strPassword="mercury" Then
MsgBox "用户"&strUsername&"登陆成功!",,"登陆成功!"
Exit Do
Else
MsgBox "密码不正确!",,"密码不正确!"
x=x+
If x= Then
MsgBox "请重新登陆!",,"请重新登陆!"
Exit do
End If
End If
Loop
6、计算两个数求余的结果,要求:计算出错时输出错误。
Option Explicit
On Error Resume Next Function getmod(a,b)
getmod=a Mod b
End Function Dim c,ua,ub
ua=CInt(InputBox("请输入一个数"))
ub=CInt(InputBox("请再输入一个数"))
c=getmod(ua,ub)
If Err Then '可以自主产生错误 Err.Raise 6
MsgBox Err.Number &"---"& Err.Description
Err.Clear
Else
MsgBox c
End If
7、随机数。
Dim strInput,arrg
strIput=InputBox("请输入5个词语,用,分开!")
arrg=Split(strIput,",")
For Each element In arrg
Randomize '初始化随机生成器,后面的值5也可以省略而是用系统的种子
MsgBox arrg(Int(*Rnd)) '随机输出数组中的元素值
Next
8、写日志到文本文件中。
Function Writelog(str)
Const ForReading=,ForWriting=,ForAppending=
Dim fso,fil,msg
' 创建一个文件系统对象(File System Object)
Set fso = CreateObject("Scripting.FileSystemObject")
' 创建一个文件对象,通过fso对象来打开指定的文件
Set fil = fso.OpenTextFile("C:\log.txt",ForAppending)
fil.WriteLine now &" "&str
' 关闭这个文件
fil.Close
' 释放这个文件对象
Set fil = Nothing
' 释放这个文件系统对象
Set fso = Nothing
End Function Writelog "hello lxl"
9、读文本文档.txt文件并显示出来。
Option Explicit
Const ForReading=,ForWriting=,ForAppending=
Dim fso,fil,msg
' 创建一个文件系统对象(File System Object)
Set fso = CreateObject("Scripting.FileSystemObject")
' 创建一个文件对象,通过fso对象来打开指定的文件
Set fil = fso.OpenTextFile("C:\f.txt",ForReading)
' 读取文件内容
' MsgBox fil.ReadAll ' 一次性全部读取
' 判断是否到了文件的最后面
Do While Not fil.AtEndOfLine '注意和AtEndOfLine的区别
' 只要没到最后,就读取一行,同时把游标向下移动一行
msg = msg & vbNewLine & fil.ReadLine
Loop
MsgBox msg
' 关闭这个文件
fil.Close
' 释放这个文件对象
Set fil = Nothing
' 释放这个文件系统对象
Set fso = Nothing
4、读取数据库查询的结果
Dim Cnn,Rst,strCnn,Msg, Sqlstr
strCnn="Provider=MSDASQL.1;Persist Security Info=False;Data Source=calc" '数据源字符串
Set Cnn=CreateObject("ADODB.Connection")
Cnn.Open strCnn
Set Rst=CreateObject("ADODB.RecordSet")
Sqlstr="select * from calc order by TestNumber1 asc"
Rst.Open Sqlstr,Cnn
Rst.MoveFirst
Do While Not Rst.EOF
Msg=Msg&vbTab&Rst.Fields("TestNumber1")&vbTab&Rst.Fields("TestNumber2")&vbTab&Rst.Fields("TestResult")&vbNewLine
Rst.MoveNext
Loop
Rst.Close
Cnn.Close
Set Rst=Nothing
Set Cnn=Nothing
MsgBox Msg
5、更新数据库中的数据
Dim Cnn,strCnn,Cmd,Sqlstr
strCnn=" Provider=MSDASQL.1;Persist Security Info=False;Data Source=calc "
Set Cnn=CreateObject("ADODB.Connection")
Cnn.Open strCnn
'Set Rst=CreateObject("ADODB.RecordSet")
Set Cmd=CreateObject("ADODB.Command")
Cmd.ActiveConnection = Cnn
Sqlstr="update calc set TestNumber1= 78901 where TestNumber1= 78900" Cmd.CommandText = Sqlstr
Cmd.Execute
Cnn.Close
Set Rst=Nothing
Set Cnn=Nothing
6、插入数据到数据库中
Sub inputaccess(tn1,tn2,tr)
Dim Cnn,strCnn,Cmd,Sqlstr
strCnn="Provider=MSDASQL.1;Persist Security Info=False;Data Source=lxl"
Set Cnn=CreateObject("ADODB.Connection")
Cnn.Open strCnn
Set Cmd=CreateObject("ADODB.Command")
Cmd.ActiveConnection = Cnn
Sqlstr="insert into calc(TestNumber1,TestNumber2,TestResult) values("&tn1&","&tn2&",'"&tr&"')"
Cmd.CommandText = Sqlstr
Cmd.Execute
Cnn.Close
Set Rst=Nothing
Set Cnn=Nothing
End Sub
inputaccess ,,"yezhaohui"
VBS练习题的更多相关文章
- vbs习题
练习题: 1.输入3个数,输出其中最大的那个值. Option Explicit Dim intA,intB,intC intA=CInt(InputBox("请输入a:")) i ...
- Linux基础练习题(二)
Linux基础练习题(二) 1.复制/etc/skel目录为/home/tuer1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限. [root@www ~]# cp -r ...
- shell 脚本之 shell 练习题汇总
整理了一些 shell 相关的练习题,记录到这里. 1. 请按照这样的日期格式 xxxx-xx-xx 每日生成一个文件,例如:今天生成的文件为 2013-09-23.log, 并且把磁盘的使用情况写到 ...
- C#调用vbs脚本实现Windows版Siri
最近新加入,把自己一些有意思的小东西分享给大家,我是一个学生,代码写得少,哪里不规范,希望大家见谅. 这事我封装好的一个类,可以直接实例化对象之后,调用"对象.Talk()"方法, ...
- MySQL练习题
MySQL练习题 一.表关系 请创建如下表,并创建相关约束 二.操作表 1.自行创建测试数据 2.查询“生物”课程比“物理”课程成绩高的所有学生的学号: 3.查询平均成绩大于60分的同学的学号和平均成 ...
- MySQL练习题参考答案
MySQL练习题参考答案 2.查询“生物”课程比“物理”课程成绩高的所有学生的学号: 思路: 获取所有有生物课程的人(学号,成绩) - 临时表 获取所有有物理课程的人(学号,成绩) - 临时表 根据[ ...
- mysql练习题-查询同时参加计算机和英语考试的学生的信息-遁地龙卷风
(-1)写在前面 文章参考http://blog.sina.com.cn/willcaty. 针对其中的一道练习题想出两种其他的答案,希望网友给出更多回答. (0) 基础数据 student表 +-- ...
- 在WinCC中通过VBS操作SQL Server2005
在项目中需要在一定条件满足时,保存一些数据到数据库中,并可根据条件查询.考虑到WinCC6.2以后采用的就是SQL Server2005数据库,所以直接利用该数据库即可,通过SQL Server Ma ...
- 使用vbs脚本进行批量编码转换
使用vbs脚本进行批量编码转换 最近需要使用SourceInsight查看分析在Linux系统下开发的项目代码,我们知道Linux系统中文本文件默认编码格式是UTF-8,而Windows中文系统中的默 ...
随机推荐
- java基础-控制流语句
浏览以下内容前,请点击并阅读 声明 一般情况下,代码的执行按照从上到下的顺序,然而通过加入一些判断,循环和跳转语句,你可以有条件地执行特定的语句. 接下来分三部分介绍Java的控制流语句,他们是判断语 ...
- NUC_HomeWork1 -- POJ1088(DP)
D - 滑雪 Description Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激.可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你.Mic ...
- Modify a Stored Procedure using SQL Server Management Studio
In Object Explorer, connect to an instance of Database Engine and then expand that instance. Expand ...
- BZOJ4537 : [Hnoi2016]最小公倍数
将边按$a$从小到大排序,每$\sqrt{m}$个取一个关键点. 对于每个关键点,将这个点之前的边以及要在这个关键点回答的询问按$b$排序. 依次加入这个关键点之前的每条边,用并查集维护每个连通块$a ...
- hadoop datanode 挂机恢复后,多复制的块删除的问题
发现: 如果到namenode,用start-all.sh启动datanode,则会删除该datanode上所有的数据 到datanode上用hadoop-daemon.sh start datano ...
- 支持向量机(SVM)
断断续续看了好多天,赶紧补上坑. 感谢july的 http://blog.csdn.net/v_july_v/article/details/7624837/ 以及CSDN上淘的比较正规的SMO C+ ...
- 使用TCMalloc优化OpenResty
1.安装依赖包 yum -y install wget gcc gcc-c++ -y 2.安装libunwind库可以从http://ftp.twaren.net/Unix/NonGNU//libun ...
- 【POJ】2891 Strange Way to Express Integers
http://poj.org/problem?id=2891 题意:求最小的$x$使得$x \equiv r_i \pmod{ a_i }$. #include <cstdio> #inc ...
- iOS 9之适配ATS(转载)
iOS 9系统已经出来了,而网络方面的ATS(App Transport Security)特性可以说每个人都要经历.而我这篇博客,就是结合我最近几天的经历,来谈谈从服务器到iOS客户端对ATS的适配 ...
- HttpClient_使用httpclient必须知道的参数设置及代码写法、存在的风险
结论: 如果使用httpclient 3.1并发量比较大的项目,最好升级到httpclient4.2.3上,保证并发量大时能抗住.httpclient 4.3.3,目前还有一些bug:还是用4.2.x ...