C#中 怎么再给出的三个三位数中数中 判断出只有一个奇数的组合的个数

问题描述:

C#中 怎么再给出的三个三位数中数中 判断出只有一个奇数的组合的个数
例如 123 ,456 ,789 中最多有一位奇数 结果为11中组合 请问怎么算
就是 123,456,789 可以组合成147 148 149 .等 如果是147的话 里面有两个奇数 不符合 请问代码怎么写

private void Form1_Load(object sender, EventArgs e)
{
bool b = IsSingleOdd(146);
}
private bool IsSingleOdd(int numeric) {
int oddCount = 0;
string s = numeric.ToString();
for (int i = s.Length - 1; i >= 0; i--) {
int num = Int32.Parse(s.Substring(i));
s = s.Substring(0, i);
if (num % 2 != 0)
oddCount++;
if (oddCount > 1)
return false;
}
return true;
}
调用IsSingleOdd这个函数就可以判断了.不仅仅限制3位数