这可能只是我,但我一直在尝试在 c# 中做一个 do...while 循环,如果两个条件之一为真,循环将结束。
我正在使用 ||运算符(operator)。谷歌告诉我那是 OR,但我的循环只有在两个条件都为真时才结束。我究竟做错了什么?
这是一个代码示例:
int sugar=0, salt=0, value=0;
string tLine;
Console.WriteLine("Enter integer values to add to Sugar and Salt.");
Console.WriteLine("The loop should end when either one reaches 10 or more.");
do {
Console.Write("Sugar? =");
tLine = Console.ReadLine();
int.TryParse(tLine, out value);
sugar =sugar+value;
Console.Write("Salt? =");
tLine = Console.ReadLine();
int.TryParse(tLine, out value);
salt =salt+value;
}while ((sugar<10) || (salt<10));
Console.WriteLine("Sugar={0}, Salt={1}", sugar, salt);
Console.ReadKey();
最佳答案
每次满足条件时执行循环。所以你必须把它改成:
while ((sugar<10) && (salt<10))
或者
while (!((sugar>=10) || (salt>=10)));
关于C# .net - || OR 运算符不正常。似乎作为 AND 工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37628017/