C++ 條件判斷

我先舉個栗子

添柴很怕他的英文與數學成績不及格,

因為添柴的朋友跳跳說如果添柴的英文與數學都要補考,

就不能打code一個月,

但如果添柴兩科都及格了,

就可以得到葉葉的同屆愛。

((我以為是跳跳要請www

我們可以這樣想...

如果添柴兩科都及格->葉葉ㄉ同屆愛

如果添柴數學不及格->需要參加數學補考><

如果添柴兩科都不及格->需要參加英文跟數學的補考而且不能                                              打code一個月QAQ

  如果添柴英文不及格->需要參加英文補考><

判斷

輸出

簡單來說

條件判斷就是

如果(符合條件)就{做什麼事}

的句型

接下來就進入語法吧--------->

if判斷式-----單向選擇

語法

if(條件)

{

        //符合條件時要做的事

}

if(a) //條件
{
	  //a成立
    b;    //執行b
}

簡化剛剛的栗子

如果添柴的英文及格--->不用補考

如果添柴的英文不及格--->要補考

if(及格)
{
	不用補考;
}
if(不及格)
{
	要補考;
}

完整程式碼

#include <iostream>
using namespace std;
int main()
{
	int English_score;
    cin>>English_score;
    if(English_score>=60)
    {
    	cout<<"不用補考"<<endl;
    }
    if(English_score<60)
    {	
    	cout<<"要補考"<<endl;
    }
	return 0;
}

回到剛剛不知歡喜還是悲慘的故事...

if(兩科都及格){
       cout<"葉葉的同屆愛GET!"<<endl;
}
if(英文不及格){
       cout<<"噢no要參加英文補考"<<endl;
}
if(數學不及格){
       cout<<"噢no要參加數學補考"<<endl;
}
if(兩科都不及格){
       cout<<"噢不我一個月不能打code了嗚嗚嗚嗚嗚好sad"<<endl;
}

完整程式碼

#include <iostream>

using namespace std;

int main()
{
	int English_score,Math_score;
    cin>>English_score>>Math_score;
    if(English_score>=60&&Math_score>=60)
    {
    	cout<<"葉葉的同屆愛GET!"<<endl;
    }
    if(English_score<60)
    {
    	cout<<"噢no要參加英文補考"<<endl;
    }
    if(Math_score<60)
    {
    	cout<<"噢no要參加數學補考"<<endl;
    }
    if(English_score<60&&Math_score<60)
    {
    	cout<<"噢不我一個月不能打code了嗚嗚嗚嗚嗚好sad"<<endl;
    }
    return 0;
}

噢對了

如果你想要同時滿足兩個條件才執行,可以使用&&(and)

如果你想要滿足兩個條件中的其中一個就執行,

可以使用||(or)

if(a && b)
{
	//a,b皆滿足
    x;
}
if(c || d)
{
	//c,d其中一個或兩個滿足
    y;
}

if判斷式-----雙向選擇

語法

if(條件)

{

        //符合條件時要做的事

}

else

{

        //不符合條件時要做的事

}

if(a)
{
	   //a成立
    b;     //執行b
}
else
{
	   //a不成立
    c;     //執行c
}

回到是否需要補考的例子

我們可以改成

if(及格)
{
	不用補考;
}
else      //不及格
{
	要補考;
}

完整程式碼

#include <iostream>
using namespace std;
int main()
{
	int English_score;
    cin>>English_score;
    if(English_score>=60)
    {
    	cout<<"不用補考"<<endl;
    }
    else
    {	
    	cout<<"要補考"<<endl;
    }
	return 0;
}

if判斷式-----多項選擇

使用多項選擇,

就是從程式碼最上面讀下來,

如果條件符合了,

就會執行那個條件對應要做的事,

而後面所有的判斷式將不會執行。

 

如果都沒有任何一個條件符合,

則執行else裡要做的事,

ㄚ 痾 你說沒有else的話那程式就什麼都不會做囉

語法

if(條件1){                                     //如果符合

        //符合條件時要做的事,不執行接下來的程式碼

}                                                 //如果不符合

else if(條件2){                            //如果符合

        //符合條件時要做的事,不執行接下來的程式碼

}                                                 //如果不符合

else if(條件3){                           //如果符合

        //符合條件時要做的事不執行接下來的程式碼

}

...

else{                                       //還是沒符合的

       //不符合所有上述條件時要做的事

}

程式碼

if(a){                                     
        //a成立,不執行接下來的程式碼
        一;
}                                                 
else if(b){                            
        //b成立,不執行接下來的程式碼
        二;
}                                                 

else if(c){                           
        //c成立,不執行接下來的程式碼
        三;
}

...

else{                                       
        //不符合a,b,c
        十;
}

栗子

學期成績在90以上(含),可以拿到優;

學期成績在80-89,可以拿到甲;

學期成績在70-79,可以拿到乙;

學期成績在60-69,可以拿到丙;

學期成績在60以下,則會拿到丁

寫法

if(學期成績>=90){
        cout<<"優"<<endl;     
}                                          
else if(學期成績>=80){     
		//進到這裡代表學期成績<90
        cout<<"甲"<<endl;
}
else if(學期成績>=70){    
		//進到這裡代表學期成績<80
        cout<<"乙"<<endl;
}
else if(學期成績>=60){   
		//進到這裡代表學期成績<70
        cout<<"丙"<<endl;
}
else{                                 
 		//進到這裡代表學期成績<60
        cout<<"丁"<<endl;
}

完整程式碼

#include <iostream>
using namespace std;
int main()
{
	int score;
    cin>>score;
    if(score>=90){
        cout<<"優"<<endl;      //不執行後面的判斷式 
    }                                          

    else if(score>=80){       //如果進到這裡代表score<90
        cout<<"甲"<<endl;     //不執行後面的判斷式 
    }

    else if(score>=70){       //如果進到這裡代表score<80
        cout<<"乙"<<endl;     //不執行後面的判斷式 
    }

    else if(score>=60){       //如果進到這裡代表score<70
        cout<<"丙"<<endl;     //不執行後面的判斷式 
    }

    else{                    //如果進到這裡代表score<60
        cout<<"丁"<<endl;
    }
    return 0;
}

巢狀if

巢狀if就是

if裡面還有if

 

 

 

 

 

 

 

 

 

 

if

if

對 就醬

語法

if(條件1)

{

        if(條件2)

        {

                //條件1與條件2皆成立時要做的事

        }

}

if(a)
{
	if(b)
    {
    	//a,b皆成立
        c;
    }
}

阿剛剛那個你也4可以這樣寫喇

if(a&&b)
{

    //a,b皆成立
    c;
}

這是最初的栗子

如果英文及格---->

如果數學及格---->

同屆愛

---->否則---->

數學要補考

否則---->

((太sad了吧還好我都及格

英文要補考

英文數學都要補考而且不能打                                            code一個月

如果數學及格---->

---->否則---->

程式碼

#include <iostream>

using namespace std;

int main()
{
	int English_score,Math_score;
    cin>>English_score>>Math_score;
    if(English_score>=60)
    {
    	if(Math_score>=60){
        	cout<<"葉葉的同屆愛GET!"<<endl;
        }
        else{
        	cout<<"噢no要參加數學補考"<<endl;
        }
    }
    else
    {
    	if(Math_score>=60)
        {
            cout<<"噢no要參加英文補考"<<endl;
        }
        else
        {
            cout<<"噢不我一個月不能打code了嗚嗚嗚嗚嗚好sad還要參加英文跟數學的補考ㄟ好想自sa"<<endl;
        }
    }
    
    return 0;
}

END

就到這裡結束,謝謝大家聆聽(ノ´∀ ˋ*)

((東條希賽高

C++條件判斷

By Yeye Leaf

C++條件判斷

  • 183