// 【算術運算子】- C語言運算要注意型態
// 不同型別運算-自然轉換(double> float> int> short> char)
printf("%.0f\n" , 9.0 / 5*100); // = 1.8*100 = 180
// 相同型別運算-不會轉換(計算可能有誤)
printf("%d\n" , 9 / 5*100); // = 1*100 = 100
// 強迫型別(暫時性)轉換
printf("%.0f\n" , (float)9 / 5*100); // = 1.8*100 = 180
//【關係運算子】- C語言只會有 1 (ture), 0 (false)
printf("%d > %d 結果 %d\n", num1, num2, num1 > num2);
printf("%d >= %d 結果 %d\n", num1, num2, num1 >= num2);
printf("%d < %d 結果 %d\n", num1, num2, num1 < num2);
printf("%d <= %d 結果 %d\n", num1, num2, num1 <= num2);
printf("%d == %d 結果 %d\n", num1, num2, num1 == num2);
printf("%d != %d 結果 %d\n", num1, num2, num1 != num2);
// 【條件運算子】- (條件式 ? 真的結果 : 假的結果 ;)
printf("請輸入分數: ");
short score;
scanf("%d",&score);
(score>=60 ? printf("%d分,及格\n",score):printf("%d分,不及格\n",score));
// 【邏輯運算子】- And = &&(&) ; Or = ||(|) ; Not = !
printf("請輸入西元年: ");
short year;
scanf("%d",&year);
(year % 400 == 0 || (year % 4 == 0 && !(year % 100 == 0) )?
printf("\n西元%d年是閏年",year):printf("\n西元%d年是平年",year));
// 【遞增遞減運算子】-前置:++a,--a / 後置:a++,a--
//若有執行(printf或指定)
//前置:變數本身先+/-1,再執行
//後置:先執行,再變數本身+/-1
//若沒有執行
//前置/後置:變數本身皆+/-1
int a = 100;
printf("%d\n",a++); // a=100
printf("%d\n",a); // a=101
int a = 100;
printf("%d\n",++a); // a=101
printf("%d\n",a); // a=101
int a = 100;
int b = a++;
printf("%d\n",a); // a=101
printf("%d\n",b); // b=100
int a = 100;
int b = ++a;
printf("%d\n",a); // a=101
printf("%d\n",b); // b=101
// 【複合運算子】-遞增 / 遞減 > 1
// a = a + 1 ==> a +=
// a = a - 1 ==> a -=
// a = a * 1 ==> a *=
// a = a / 1 ==> a /=