VB.net控制台应用程序打印数字的倒数

VB.net控制台应用程序打印数字的倒数,vb.net,Vb.net,我正在尝试使用VB.NET控制台应用程序打印数字的倒数,我有一个整数类型的变量。当我输入数字651时,它会打印1561。我已经把代码写成 Sub Main() Dim no, rev, temp As Integer Console.WriteLine("enter the no") no = CInt(Console.ReadLine()) rev = 0 temp = no While temp > 0 Dim t As

我正在尝试使用VB.NET控制台应用程序打印数字的倒数,我有一个整数类型的变量。当我输入数字651时,它会打印1561。我已经把代码写成

Sub Main()
    Dim no, rev, temp As Integer
    Console.WriteLine("enter the no")
    no = CInt(Console.ReadLine())
    rev = 0
    temp = no
    While temp > 0
        Dim t As Integer
        t = temp Mod 10
        rev = rev * 10 + t
        temp = temp / 10
    End While
    Console.WriteLine("Reverse number=>"+rev.ToString())
    Console.ReadKey()
End Sub

当我输入数字123时,它给出了正确的输出321,但当我给出678时,它给出了输出8761或其他垃圾值,请建议我你得到这样的结果,因为

将除法结果指定给整数值时,它将 自动四舍五入到下一个更高的整数

例如,
Dim no As Integer=68/10
会将结果显示为
7
, 如果您使用
选项对
进行编码,则不允许进行此转换。 最好的方法是比约恩·罗杰·克林斯杰(Bjørn Roger Kringsjå)你可以简单地将一个数字反转并打印出来

Console.Write("Reverse of {0} is : ", no.ToString().Reverse())
或者,您可以按照以下步骤操作:

    Console.WriteLine("enter the no")
    Dim no As Integer = CInt(Console.ReadLine())
    Console.Write("Reverse of {0} is : ", no)
    While no > 0
        Console.Write(no Mod 10)
        no = Math.Floor(no / 10)
    End While
    Console.ReadKey()

只需使用
\
而不是
/
,您的工作就完成了。

那么,当您单步执行代码时,调试器会告诉您什么?嗯,
String.Join(“,no.ToString().Reverse())
?这才是真正的工作。它还与我上面写的代码temp=Math.Floor(temp/10)一起工作