我是C#编程的新手,我们仍然从循环开始。在今天的练习中,我们的任务是使用(while循环)创建程序。
问题是: 从用户那里读取5个标记,打印总和,如果标记大于或等于50,或者在标记中只有一个小于50的标记,则显示“通过”。 如果用户输入的2个标记小于50,则程序应打印STOP并结束程序。
这是我的尝试 不幸的是,我还没完成
能帮我吗?
int sum=0 , counter = 0, number=0 ;
while (counter < 5 || number < 50)
{
number = Convert.ToInt16(Console.ReadLine());
sum = sum + number;
counter++;
}
Console.WriteLine(sum + "\nPassed");
答案 0 :(得分:0)
在while循环中,您需要&&
(和)而不是||
(或)。
读取数字后,您可以检查数字是否小于50,还可以对它们进行计数。
因此,循环之后,您需要检查lessCounter
以决定打印Passed或STOP。
int sum = 0, counter = 0, number = 0, lessCounter = 0;
while (counter < 5 && lessCounter <= 1)
{
number = Convert.ToInt16(Console.ReadLine());
sum += number;
if (number < 50)
lessCounter++;
counter++;
}
if (lessCounter <= 1)
Console.WriteLine(sum + "\nPassed");
else
Console.WriteLine(sum + "\nSTOP");
答案 1 :(得分:-1)
感谢大家的辛勤工作和时间,特别感谢Szkup先生。
我能够这样做:
int number = 0, sum = 0, count = 0;
while (number < 5)
{
Console.Write("Input Number {0} : " , (number + 1));
int mark = Convert.ToInt16(Console.ReadLine());
if (mark < 50)
{
count++;
}
if (count == 2)
{
Console.WriteLine("\nStop\n");
break;
}
sum += mark;
number++;
}
if (count <= 1)
{
Console.WriteLine("\nsum = {0}\nPassed\n",sum);
}