C++

運算子 & if-else

Index

運算子 (Operator)

算數運算子

符號 語法 名稱
+ ( - * / ) a + b 加 ( 減乘除 )
+= (- * / %) a += b 以加法賦值
++ ( -- ) a++ 後綴遞增 (減)
++ ( -- ) ++a 前墜遞增 (減)
% a % b 模數 (取餘數)

a - b

a * b

a / b

可替換加、減、乘、除

算數運算子

前綴?後綴?

前綴:先回到原值,再操作運算

後綴:先操作運算,再傳回原值

int a = 2 ;
int b = a++ ;
int a = 2 ;
int b = ++a ;

a = 3

b = 2

a = 3

b = 3

比較運算子

符號 語法 名稱
< ( > ) a < b 小於 (大於)
<= ( >= ) a <= b 小 (大) 於等於
== a == b 等於
!= a != b 不等於
! !a 取反
&& a && b
|| a || b

。。。更多其他運算子

判斷式 (if-else)

if (條件) {

     要執行的程式

}

 

代表如果達成小括號中的條件,執行大括號中的程式。

因此要 "判斷" 是否達成小括號中的條件式。

if-else

例如:

if-else

if(a > b){
	cout << a << b ; 
}

條件:a > b

是:輸出 ab

布林值,一種變數型態,代表 True or False ,因此可以設定一個變數型態為 "bool" 的變數,儲存 True/False 。

boolean

bool a = true ;
bool b = false ;

 同時,布林值也可以用數字表示, " 0 " 代表 " false ",其餘數字皆為 " true "。若在判斷式中放入數字,也會以此種形式判斷。

bool a = 1 ;
bool b = 0 ;
if(1){
	cout >> a >> b ;
}

這是一個一定會執行的程式

判斷式中,除了 " if " 以外,還有 " else " 的判斷,也就是如果並未達成 " if " 的條件,後面其他判斷式可以接續判斷。

if-else

if(a < 0){
	cout >> "a-"
}
else{
cout >> "a+"
}
if(a < 0){
	cout >> "a-"
}
else if(a <= 100){
	cout << "100a+"
}

" else if " 承接上一個判斷式,當上一個判斷結果為否定時,會進行下一個 else if 的判斷

if-else

if(a < 0){
	cout >> "a-" ;
}
if(a <= 100){
cout >> "100a+" ;
}

" else if " 承接上一個判斷式,當上一個判斷結果為否定時,會進行下一個 else if 的判斷

if(a < 0){
	cout >> "a-" ;
}
else if(a <= 100){
	cout << "100a+" ;
}

對比:

此時,輸出 "100a+" 的條件為何?

a >= 0 && a <= 100

a <= 100

if-else

if(score >= 90){
	if(score >= 95){
    	cout << "a+" ;
    }
    else if(score < 92){
    	cout << "a-" ;
    }
    else{
    	cout << "a" ;
    }
}
else if(score >= 80){
	cout << "b" ;
}
	

巢狀結構:判斷式裡面還有判斷式。

成績等第判斷

分數 >= 95   a+

92 <= 分數 < 95   a

分數 < 92   a-

if-else

if-else 簡化版表示法

variable = (condition) ? expressionTrue : expressionFalse;

string scoreresult = (score >= 90)? "a" : "b" ;

練習 & 作業

ㄑㄧˊ數 zerojudge d064

兩光法師占卜術 zerojudge a003

Sagit's計分程式  zerojudge a053

身分證檢驗 zerojudge a020

作業:任選 3 題

exersice

C++ 2nd

By laura07110717

C++ 2nd

  • 103