【发布时间】:2017-01-02 19:06:47
【问题描述】:
int num = Convert.ToInt32(Console.ReadLine());
通过上面的代码,我得到了正确的整数值,并且能够对这个数字进行运算并得到正确的结果。
但是使用下面的代码,为什么 Convert.ToInt32(o) 方法没有将其转换为整数值。为什么我们需要减去 48。
int[] numarr = number.ToString().Select(o => Convert.ToInt32(o)-48).ToArray();
如果我不减去 48,我就没有得到正确的整数值。
请谁能解释这是为什么?每次都需要做吗?因为我在其他地方计算的结果没有减去 48,我得到了正确的结果。
我正在做一个程序来打印一个数字中出现的次数。 这是我的代码:
Console.WriteLine("Enter the number:");
int number = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter the number to search:");
int searchnumber = Convert.ToInt32(Console.ReadLine());
int cnt = 0;
int[] numarr = number.ToString().Select(o => Convert.ToInt32(o)-48).ToArray();
for (int i = 0; i < numarr.Length; i++)
{
Console.WriteLine(numarr[i]);
}
for (int i = 0; i < numarr.Length; i++)
{
if (numarr[i] == searchnumber)
{
cnt++;
}
}
Console.WriteLine("Number of occurence of given number is:{0}", cnt);
【问题讨论】:
-
您到底想完成什么?举个例子说明“number”和“o”是什么。
-
@AsheraH- 我解释了。