#include <stdio.h> int main() { int age; float score; printf("請輸入你的年齡和成績:"); scanf("%d %f", &age, &score); if(age >= 18){ if(score >= 60){ printf("你滿足條件,歡迎使用該軟件\n"); }else{ printf("抱歉,你的成績不及格,不能使用該軟件\n"); } }else{ printf("抱歉,你還未成年,不能使用該軟件!\n"); } return 0; }這種方法雖然能夠行得通,但不夠簡潔和專業,我們可以將其壓縮為一條 if else 語句:
#include <stdio.h> int main() { int age; float score; printf("請輸入你的年齡和成績:"); scanf("%d %f", &age, &score); if(age>=18 && score>=60){ printf("你滿足條件,歡迎使用該軟件\n"); }else{ printf("抱歉,你還未成年,或者成績不及格,不能使用該軟件!\n"); } return 0; }
&&
是一個新的運算符,稱為邏輯運算符,表示age>=18
和score>=60
兩個條件必須同時成立才能執行 if 後面的代碼,否則就執行 else 後面的代碼。5&&0
5為真,0為假,相與的結果為假,也就是 0。(5>0) && (4>2)
5>0 的結果是1,為真,4>2結果是1,也為真,所以相與的結果為真,也就是1。10 || 0
10為真,0為假,相或的結果為真,也就是 1。(5>0) || (5>8)
5>0 的結果是1,為真,5>8 的結果是0,為假,所以相或的結果為真,也就是1。!0
0 為假,非運算的結果為真,也就是 1。!(5>0)
5>0 的結果是1,為真,非運算的結果為假,也就是 0。#include <stdio.h> int main(){ int a = 0, b = 10, c = -6; int result_1 = a&&b, result_2 = c||0; printf("%d, %d\n", result_1, !c); printf("%d, %d\n", 9&&0, result_2); printf("%d, %d\n", b||100, 0&&0); return 0; }運行結果:
賦值運算符(=) < &&和|| < 關系運算符 < 算術運算符 < 非(!)
&& 和 || 低於關系運算符,! 高於算術運算符。a>b && b || 9>c
,a || c>d && !p
。#include <stdio.h> int main(){ char c='k'; int i=1,j=2,k=3; float x=3e+5,y=0.85; printf( "%d,%d\n", !x*!y, !!!x ); printf( "%d,%d\n", x||i&&j-3, i<j&&x<y ); printf( "%d,%d\n", i==5&&c&&(j=8), x+y||i+j+k ); return 0; }運行結果: