#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;
}
運行結果: