不确定什么用于哨兵控制的while循环 - Java

时间:2015-08-09 03:05:15

标签: java loops while-loop

我目前是Java编程的初学者。

我的while循环中有一个带有标记值的麻烦。 一切都有效,直到我添加while循环,但它是必需的,所以我可以在值'999'进入了。

我也不确定要为' if'添加什么?值。

任何帮助将不胜感激!

int n;
int count = 0;
char byte;
n = recv(socket_d, &byte, 1, 0);
if (n <= 0)
{
    if (WSAGetLastError() != WSAEWOULDBLOCK) 
    {
        cout << "Terminated " << WSAGetLastError() << "\n";
        return;
    }
}
else
{
    cout << (char) byte;
    if ((char) byte == '\r')
        cout << "\n";
}

2 个答案:

答案 0 :(得分:0)

您可以通过以下方式完成此操作:

import java.util.Scanner;

public class SumAverage {
static Scanner keyboard = new Scanner(System.in);

public static void main(String[] args) {

 int input,sum,avg,count;
 do{
    System.out.printf("Please enter number" + (count+1) + "%n");
    input = keyboard.nextInt()
    sum += input;
    count += 1;
    avg = sum/count;
 }while(input != 999);
 //Do whatever is to be done once sentinel is input.
}

答案 1 :(得分:0)

您可以按如下方式修改while循环

while(num1 !=999 || num2 !=999 || num3 !=999)
||用作OR运算符。因此,只要任何输入值为999,循环就不会执行。