基本上,我需要编写一个C#控制台应用程序,它将采用3位数字,并将执行以下操作: 1.所有3位数的总和(例如,如果数字是123那么它将是6) 2.“重构”他的数字: 数百,数十,一。 例: 365 300 + 60 + 5 = 365 3.扭转数字
非常感谢。
答案 0 :(得分:0)
我觉得冒风险回答你的问题,但黑客是什么......
“重构”他的数字:数百,数十,1。
int i = 123, reverse = 0;
while (i > 0)
{
reverse = (reverse * 10) + (i % 10);
i /= 10;
}
Console.WriteLine(reverse); //321
所有3位数的总和(例如,如果数字是123,那么它将是6)
int i = 123, total = 0;
while (i > 0)
{
total += i % 10;
i /= 10;
}
Console.WriteLine(total); //6
谢谢,但这不是我所说的'重构'。例如, 对于输入389,它将打印出来:数百:3十:8:9:
int i = 389, houndreds = 0, tens = 0, ones = 0;
ones = i%10;
i /= 10;
tens = i%10;
i /= 10;
houndreds = i%10;
Console.WriteLine("Hundreds: {0} Tens: {1} Ones: {2}", houndreds, tens, ones); //Hundreds: 3 Tens: 8 Ones: 9
答案 1 :(得分:0)
这假设你有一个3位数的重构部分:
static void Main(string[] args)
{
int num = 365;
char[] digits = num.ToString().ToCharArray();
Console.WriteLine(digits.Sum(x=>char.GetNumericValue(x)));
Console.WriteLine(new string(digits.Reverse().ToArray()));
Console.WriteLine(string.Format("Hundreds: {0} Tens: {1} Ones: {2}", digits[0], digits[1], digits[2]));
Console.Read();
}