实战案例一:计算器程序
案例描述
编写一个简单的计算器程序,能够实现加、减、乘、除四种基本运算。
代码实现
Module Module1
Sub Main()
Dim num1, num2 As Double
Dim operator As Char
Dim result As Double
Console.Write("请输入第一个数:")
num1 = Convert.ToDouble(Console.ReadLine())
Console.Write("请输入第二个数:")
num2 = Convert.ToDouble(Console.ReadLine())
Console.Write("请选择运算符(+、-、*、/):")
operator = Convert.ToChar(Console.ReadLine())
Select Case operator
Case "+"
result = num1 + num2
Case "-"
result = num1 - num2
Case "*"
result = num1 * num2
Case "/"
If num2 <> 0 Then
result = num1 / num2
Else
Console.WriteLine("除数不能为0!")
Return
End If
Case Else
Console.WriteLine("无效的运算符!")
Return
End Select
Console.WriteLine("结果是:{0}", result)
Console.ReadLine()
End Sub
End Module
案例解析
- 使用
Console类获取用户输入。 - 使用
Convert类将字符串转换为数字。 - 使用
Select Case语句根据用户选择的运算符进行运算。 - 使用
Console.WriteLine和Console.ReadLine输出结果。
实战案例二:学生成绩管理系统
案例描述
编写一个简单的学生成绩管理系统,实现添加学生信息、查询学生成绩、修改学生成绩、删除学生信息等功能。
代码实现
Module Module1
Dim studentList As New List(Of Student)()
Structure Student
Dim id As Integer
Dim name As String
Dim score As Double
End Structure
Sub Main()
' 添加学生信息
studentList.Add(New Student() With {.id = 1, .name = "张三", .score = 90})
studentList.Add(New Student() With {.id = 2, .name = "李四", .score = 85})
studentList.Add(New Student() With {.id = 3, .name = "王五", .score = 95})
' 查询学生成绩
QueryStudentScore(1)
' 修改学生成绩
ModifyStudentScore(2, 92)
' 删除学生信息
DeleteStudent(3)
' 打印所有学生信息
For Each student As Student In studentList
Console.WriteLine("ID:{0}, 姓名:{1}, 成绩:{2}", student.id, student.name, student.score)
Next
Console.ReadLine()
End Sub
Private Sub QueryStudentScore(ByVal id As Integer)
For Each student As Student In studentList
If student.id = id Then
Console.WriteLine("学生姓名:{0}, 成绩:{1}", student.name, student.score)
Return
End If
Next
Console.WriteLine("未找到该学生!")
End Sub
Private Sub ModifyStudentScore(ByVal id As Integer, ByVal newScore As Double)
For Each student As Student In studentList
If student.id = id Then
student.score = newScore
Console.WriteLine("学生姓名:{0}, 成绩已修改为:{1}", student.name, student.score)
Return
End If
Next
Console.WriteLine("未找到该学生!")
End Sub
Private Sub DeleteStudent(ByVal id As Integer)
Dim studentIndex As Integer = -1
For i As Integer = 0 To studentList.Count - 1
If studentList(i).id = id Then
studentIndex = i
Exit For
End If
Next
If studentIndex <> -1 Then
studentList.RemoveAt(studentIndex)
Console.WriteLine("学生姓名:{0} 已被删除!", studentList(studentIndex).name)
Else
Console.WriteLine("未找到该学生!")
End If
End Sub
End Module
案例解析
- 使用
List(Of Student)存储学生信息。 - 定义
Student结构体,包含学号、姓名、成绩三个属性。 - 使用
With关键字简化对象初始化。 - 使用循环遍历
studentList实现查询、修改、删除等功能。 - 使用
Console.WriteLine输出结果。
实战案例三:猜数字游戏
案例描述
编写一个猜数字游戏,程序随机生成一个1到100之间的整数,用户有10次机会猜测这个数字,猜对则游戏结束。
代码实现
Module Module1
Sub Main()
Dim randomNumber As Integer = New Random().Next(1, 101)
Dim guessCount As Integer = 0
Dim guessNumber As Integer
Console.WriteLine("欢迎来到猜数字游戏!")
Do
Console.Write("请输入一个1到100之间的数字:")
guessNumber = Convert.ToInt32(Console.ReadLine())
guessCount += 1
If guessNumber = randomNumber Then
Console.WriteLine("恭喜你,猜对了!你共猜了{0}次。", guessCount)
Exit Do
ElseIf guessNumber < randomNumber Then
Console.WriteLine("太低了,再试一次。")
Else
Console.WriteLine("太高了,再试一次。")
End If
Loop While guessCount < 10
If guessNumber <> randomNumber Then
Console.WriteLine("很遗憾,你已用完所有机会。正确答案是{0}。", randomNumber)
End If
Console.ReadLine()
End Sub
End Module
案例解析
- 使用
Random类生成随机数。 - 使用
Do...Loop循环实现游戏逻辑。 - 使用
Console.ReadLine结束程序。
