Lea un número entero indeterminado del teclado y juzgue el número de números positivos y negativos leídos, y el programa finaliza cuando la entrada es 0.
Descripción del título:
lea un número entero indeterminado del teclado y juzgue el número de números positivos y negativos leídos, y el programa finaliza cuando la entrada es 0.
Idea para resolver problemas:
debido a que el número de lecturas es incierto, se requiere un ciclo infinito. Cuando la entrada es 0, saldrá del bucle.
Resumen:
① El formato de bucle "infinito" más simple: while (verdadero), para (;;) , la razón de la existencia de un bucle infinito es que no sabes cuántas veces se repite y necesitas controlar el final del bucle de acuerdo con algunas condiciones dentro del cuerpo del bucle.
② ¿De cuántas formas hay de terminar el ciclo?
Método 1: La parte de la condición del bucle devuelve falso.
Método 2: En el cuerpo del bucle, ejecute break
El código Java para esta pregunta:
import java.util.Scanner;
public class ForWhileTest {
public static void main(String[] args) {
System.out.println("请输入一个整数:");
Scanner scan = new Scanner(System.in);
int positiveNumber = 0; //记录正数的个数
int negativeNumber = 0; //记录负数的个数
for (;;) {
//或者是while(true)
int number = scan.nextInt();
//判断number的正负情况
if (number > 0) {
positiveNumber++;
} else if (number < 0) {
negativeNumber++;
} else {
System.out.println("输入的正数的个数为:" + positiveNumber + ",负数的个数为:" + negativeNumber);
break;
}
}
}
}