代碼問題,為什么會同時輸出進入女子決賽和輸入錯誤啊
public class Exerc17 {
public static void main(String[] args){
int score=94;
String sex="女";
if(score>80){
if(sex.equals("女")){
System.out.println("進入女子決賽");
}if(sex.equals("男")){
System.out.println("進入男子決賽");
}else{
System.out.println("輸入錯誤");
}
}else{
System.out.println("不能進入決賽");
}
}
}
2016-04-21
public class Exerc17 {
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("不能進入決賽");
}
}
}
2016-04-21
public class Hello {
??? public static void main (String[] args) {
??????? int score = 90;
??????? String sex = "女";
??????? if (score >80) {
??????????? if (sex.equals("女")) {
??????????????? System.out.println("進入女子組決賽");
??????????? }else {
??????????????? System.out.println("進入男子組決賽");
??????????? }
??????? }else {
??????????? System.out.println("不進入決賽");
??????? }
??? }
}
注意縮進和對齊,這樣就不會看錯對應的if-else,條理很清晰!要養(yǎng)成一個好習慣,這樣可以避免很多不必的麻煩
2016-04-21
else在if(score>80)的條件下,如果程序進行到socre>80時,開始識別你之后if語句中的條件,其中string="女",輸出”進入女子決賽“;但程序是按照你編寫的順序一條條識別的,當進行完if(sex.equals("女"))的語句時,進入下一句if(sex.equals("男")),顯然這不是男的,所以進行下一個else的條件,輸出“輸入錯誤”。
2016-04-21
public class Exerc17 {
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("不能進入決賽");
}
}
}