额 这 我倒是知道一款asp.net的=。 =叫KesionIexam它可以实现单选题多选题和简答题,还有填空题判断题等等,只要按格式把试题编写好整卷录入就可以在前台看到它咯!
专注于为中小企业提供成都网站设计、做网站服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业宝安免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千余家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
把你的问题放到一个数组里面,然后随机生成,你可以参考下面的代码
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim str As String
Dim sp() As String
Dim rnd = New System.Random()
str = "1+1=? 1+2=? 1+3=?"
sp = Split(str, " ")
Me.Text = sp(rnd.Next(0, 2))
End Sub
题1:
最简单了,高中就学过的等差数列,公式代过来就行拉
SUB A()
return 100*101/2
END SUB
题2:
更简单拉,小学初中就学过长度乘高度等于面积
FUNCTION B(Width as integer, Height as integer) AS INTEGER
return Width*Height
END FUNCTION
原则上是-1,但是如果是Cint(True)转Boolean,只要是非0的,都可以表示True...0表示False
新手不容易记忆,倒底是0是False还是-1是False还是别的,你可以这样记
整数型的变量定义后默认为0,而布尔定义变量后默认为False,因此0表示False,非0则表示True..
如果需要讲详细一点,那就加我QQ531412815
第4题,潜在的错误,这里的错误不是常规错误,属于那种只有在运行是才知道的错误:
Catch ex As Exception
MsgBox(ex.StackTrace)
'永远不会查找下面的错误
Catch ex As ArgumentNullException
MsgBox("Input Test box cannot be null.")
Catch ex As OverflowException
MsgBox("Input Test box 2 cannot be zero!")
Catch ex As FormatException
MsgBox("Input Test box should be numeric format!")
结构化错误处理永远达不到下面这里,因为Catch ex As Exception 已经处理了所有错误.
第5题:
00123
1000 60.50
2000 60.00
3500 59.50
---- -----
6500 60.00
00124
3000 60.50
---- -----
3000 60.50
00125
2000 59.50
1000 58.00
---- -----
3000 58.75
就是按照Ref_ID 分类,有一种方法就是按照Ref_ID 分组,也就是使用SQL语言,不过这里需要该很多,
我就不用了,那么就稍微复杂一点,使用FIND方法,不过有一点必须注意REF_ID必须排序,因为数据库中
已经排好序了,我就不用排了。
Dim rst as ADODB.Recordset
dim refID as string
Rst = GetRecordset
Do While Not rst.EOF
refid=rst(0)
Console.writeline(rst.Fields("Ref_ID")
do
Console.writeline rst.Fields("Qty") vbcrlf rst.Fields("Price"))
rst.MoveNext()
loop while rst(0)=refid
Loop
第6题:就是从一个集合中取元素输出的问题
比较简单的办法就是使用递归
以下是使用VB的方法(可以移植到VB.NET上,因为我对VB.NET的数组到现在还不太会,所以就将就一下)
Dim bUse() As Boolean
Dim lStr() As String * 1
Dim nCount As Byte
-----------------------------------------------------------------------------------
Public Sub Combination(lstStr As String)
Dim i As Byte
Dim j As Byte
Dim StrLen As Byte
StrLen = Len(lstStr)
ReDim bUse(1 To StrLen) As Boolean
ReDim lStr(1 To StrLen) As String * 1
For i = 1 To StrLen
lStr(i) = Mid(lstStr, i, 1)
Next
For i = 1 To StrLen
nCount = i
GoWith StrLen, 1, 0, ""
Next
End Sub
------------------------------------------------------------------------------------
Public Sub GoWith(ECount As Byte, nStart As Byte, Deep As Byte, lastStr As String)
Dim i As Byte
If Deep = nCount Then
Debug.Print lastStr
Exit Sub
End If
For i = nStart To ECount
If Not bUse(i) Then
bUse(i) = True
GoWith ECount, i, Deep + 1, lastStr lStr(i)
bUse(i) = False
End If
Next
End Sub
--------------------------------------------------------------------------------------
Private Sub Form_Load()
Combination "wxyz"
End Sub
--------------------------------------------------------------------------------------
其中GOWITH是真正的递归函数,而Combination是用来预处理字符的
全局变量:
BUSE:用来确定是否使用过这个元素
lSTR:用来保存字符元素
NCOUNT:用来限制递归函数的深度,换句话说,就是输出元素组中的元素个数
实际测试成功,另外我对前三题很感兴趣,希望能够传给我
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款