java猜数字这个程序有什么问题吗,最后的break为什么报错
package first;
import java.util.Random;
import java.util.Scanner;
public class caishuzi {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = new Random().nextInt(100);
System.out.print("游戏开始,请猜一个1-100之间的数字");
int a = sc.nextInt();
if (a >= 1 && a <= 100)
;
{
int i;
int count = 1;
for (i = 1; i < 101; i++)
count++;
if (a > num) {
System.out.println(a + "不对,有点太大了");
a = sc.nextInt();
} else if (a < num) {
System.out.println(a + "不对,有点太小了");
a = sc.nextInt();
} else {
System.out.println("猜对了!答案就是" + num + ",您一共猜了" + count
+ "次");
sc.close();
int count1 = count + 1;
if (count1 >= 1 && count1 <= 5) {
System.out.println("送您称号『登峰造极』");
} else if (count1 >= 6 && count1 <= 8) {
System.out.println("送您称号『炉火纯青』");
} else if (count1 >= 9 && count1 <= 10) {
System.out.println("送您称号『略有小成』");
} else {
System.out.println("送您称号『初出茅庐』");
break;
}
}
}
}
}
程序看上去逻辑混乱,结构完全不对啊
if (a >= 1 && a <= 100)
; //这个分号意义是什么?
for (i = 1; i < 101; i++)
count++;
//这个循环,结果count就为101,也没有意义
最后的break;不在循环中,当然是错的
估计你没有搞清if和for的区别
另外.,类似这样的程序.,做为新手,先画一个流程图,把逻辑判断关系先理清再做