精慕门2153053
2019-01-01 17:30
public class HelloWorld {
public static void main(String[] args) {
int score = 94;
String sex = "金";
if(score>80){
if(sex.equals("男")){
System.out.println("进入男子组决赛");
}else if(sex.equals("女")){
System.out.println("进入女子组决赛");
}{
System.out.println("淘汰");
}
}
我想问的是最后一个System.out.println("淘汰"); //是表示当男女判定都不满足时候才输出淘汰的吗?
题目没说要输出“淘汰”的要求,只要程序不出错,就说明这个语法没有else也是成立的
你这个代码有问题,缺少外层if所对应的else,补全后代码如下:
public class HelloWorld {
public static void main(String[] args) {
int score = 94;
String sex = "金";
if(score>80){
if(sex.equals("男")){
System.out.println("进入男子组决赛");
}else if(sex.equals("女")){
System.out.println("进入女子组决赛");
}else {
System.out.println("请输入正确的性别");//当性别判断不是男也不是女的时候会显示错误提示
}
}else {
System.out.println("淘汰");//这是外层if的结构,判断分数<=80时会显示淘汰
}
}
}
最后这个输出是第一个if的判断,是成绩小于80时的输出
不管是男是女都会输出淘汰,因为{System.out.println("淘汰"); }前没有判断语句;加个else表示当男女判定都不满足时候才输出淘汰。
是表示男女判断定都不满足时候才输出淘汰
Java入门第一季(IDEA工具)升级版
1165171 学习 · 17581 问题
相似问题