我怎样才能reudce数量如果要是statments 2

我怎么降低这个代码我怎样才能reudce数量如果要是statments 2

for (int i = 1; i < number;i++) 

{

if (i % 3 == 0 && i % 5 != 0)

{

Console.WriteLine(i + " Fizz");

}

else if (i % 5 == 0 && i % 3 != 0)

{

Console.WriteLine(i + " Buzz");

}

else if(i % 3 == 0 && i % 5 == 0)

{

Console.WriteLine(i + " FizzBuzz");

}

else

{

Console.WriteLine(i);

}

}

回答:

你可以尝试有条件的经营者的if语句的数量。

(i % 3 == 0) 

? (i % 5 == 0)

? Console.WriteLine(i + " FizzBuzz")

: Console.WriteLine(i + " Fizz");

: (i % 5 == 0)

? Console.WriteLine(i + " Buzz");

: Console.WriteLine(i);

回答:

你可以做到以下几点:

for (int i = 1; i < number;i++) 

{

Console.WriteLine(string.Format("{0} {1}{2}", i, i % 3 == 0 ? "Fizz":"", i % 5 == 0 ? "Buzz":"");

}

而且不使用,如果;-)

回答:

string output = i % 3 == 0 

? (i % 5 != 0 ? $"{i} Fizz" : $"{i} FizzBuzz")

: i % 5 == 0 && i % 3 != 0

? $"{i} Buzz"

: i.ToString();

Console.WriteLine(output);

回答:

变量和conditional operator有助于使代码更易读:

for (int i = 1; i < number;i++) 

{

bool isMod3 = i % 3 == 0;

bool isMod5 = i % 5 == 0;

string fizz = isMod3 ? "Fizz" : "";

string buzz = isMod5 ? "Buzz" : "";

string result = $"{i} {fizz}{buzz}";

Console.WriteLine(result);

}

这是另一个ap proach随着更值(理论上umlimited)工作原理:

var modDict = new Dictionary<int, string> { { 3, "Fizz" }, { 5, "Buzz" } }; 

for (int i = 1; i < number; i++)

{

string text = string.Join("", modDict.Select(kv => i % kv.Key == 0 ? kv.Value : ""));

Console.WriteLine(i + " " + text);

}

回答:

尝试:

string str; 

for (int i = 1; i < number; i++)

{

str = i + " ";

if (i % 3 == 0)

str += "Fizz";

if (i % 5 == 0)

str += "Buzz";

Console.WriteLine(str.Trim());

}

回答:

for (int i = 1; i < number;i++) 

{

string result = i + " ";

if (i % 3 == 0)

{

result += "Fizz";

}

if (i % 5 == 0)

{

result += "Buzz";

}

Console.WriteLine(result);

}

这将显示例如1_3 Fizz5 Buzz15 FizzBuzz

请参见下面的JavaScript等价的代码片段:

var number = 20;  

for (var i = 1; i < number;i++)

{

var result = i + " ";

if (i % 3 == 0)

{

result += "Fizz";

}

if (i % 5 == 0)

{

result += "Buzz";

}

document.write(result+"<br>");

}

回答:

我们可以像下面,但它不利于可读性

for (int i = 1; i < number; i++) 

{

var x = i % 3 == 0;

var y = i % 5 == 0;

string istr = i.ToString();

string a = x ? (y ? istr + " FizzBuzz"

: istr + " Fizz")

: (y ? istr + " Buzz"

: istr);

Console.WriteLine(a);

}

以上是 我怎样才能reudce数量如果要是statments 2 的全部内容, 来源链接: utcz.com/qa/264283.html

回到顶部