运行 再次函数的条件

Conditions for running a function again

这是我的代码

Sub Main()

    process()

    Console.WriteLine("Ulangi Pencarian? (Y/N)?")
    strUlangi = Console.ReadLine()

    'conditions for searching
    If strUlangi.ToUpper = "Y" Then

        Console.WriteLine()
        process()
        Console.WriteLine()

    Else

        Console.WriteLine()
        Console.Write("Press any key to exit")
        Console.ReadKey()

    End If

  End Sub

 Sub process()

    Console.WriteLine("Masukan Kode Mahasiswa : ")
    decKodeMhs = Console.ReadLine()

    Console.WriteLine("Masukan Kode Matakuliah : ")
    decKodeMatkul = Console.ReadLine()
    Console.WriteLine()

    Console.WriteLine("Hasil Pencarian : ")
    Console.WriteLine("Nilai Mahasiswa A.N " & strNamaMhs(decKodeMhs) & " untuk Matakuliah " & StrNamaMatkul(decKodeMatkul) & " adalah " & intNilaiMhs(decKodeMhs, decKodeMatkul))
    Console.WriteLine()

 End Sub

我想如果我输入 "Y" ,进程的功能将再次 运行 。它是工作的,但是当我输入 decKodeMatkul 的变量时,应用程序退出。为什么??请有人告诉我

我认为你应该把 Console.ReadKey() 代码末尾。

Sub Main()

    process()
    Console.WriteLine("Ulangi Pencarian? (Y/N)?")
    strUlangi = Console.ReadLine()
    'conditions for searching
    If strUlangi.ToUpper = "Y" Then
        Console.WriteLine()
        process()
    Else
        Console.WriteLine()
        Console.Write("Press any key to exit")
    End If
    Console.ReadKey()
End Sub

Sub process()
    Console.WriteLine("Masukan Kode Mahasiswa : ")
    decKodeMhs = Console.ReadLine()

    Console.WriteLine("Masukan Kode Matakuliah : ")
    decKodeMatkul = Console.ReadLine()
    Console.WriteLine()

    Console.WriteLine("Hasil Pencarian : ")
    Console.WriteLine("Nilai Mahasiswa A.N " & strNamaMhs(decKodeMhs) & " untuk Matakuliah " & StrNamaMatkul(decKodeMatkul) & " adalah " & intNilaiMhs(decKodeMhs, decKodeMatkul))
    Console.WriteLine()

End Sub

你的process()确实在工作,但是它执行得太快然后关闭,所以你认为它只是关闭了。