【发布时间】:2023-01-20 22:54:28
【问题描述】:
我对 C# 或整体编码有 2 周的新知识,我正在尝试弄清楚以下内容: 编写一个显示每个数字的控制台应用程序,从最重要的开始,无论是奇数还是偶数。 对于输入数据:
5228
控制台将显示:
ODD
EVEN
EVEN
EVEN
运行我的代码时,我得到:
EVEN
EVEN
EVEN
ODD
你能帮我从最高位开始吗?
谢谢!
using System;
public class TestVariablesandExpressions
{
static void Main(string[] args)
{
string inputData = Console.ReadLine();
int num = Convert.ToInt32(inputData);
int reverse = 0;
while (num > 0)
{
reverse = reverse * 10 + num % 10;
num /= 10;
if (reverse % 2 == 0)
{
Console.WriteLine("EVEN");
}
else
{
Console.WriteLine("ODD");
}
}
}
}
【问题讨论】:
-
模 10 返回最后的数字,不是第一个。您的代码正在检查末尾的数字
-
您用于反转数字的代码会导致
reverse的以下值:8, 82, 822, 8225。显然这是错误的。
标签: c#