c語言中if 3 2 a 1 else a 2請問a是多少

2021-04-28 17:39:55 字數 4829 閱讀 5922

1樓:匿名使用者

a是1;在c語言中,除了0其它的值都代表邏輯1,所以if(3&&2)就是if(1&&1)

2樓:home奶茶溫泉

a=1if()裡面的表示式 3&&2為1 就是真 所以執行a=1

3&&2中3和2都是非0的數,所以&&操作就是1.

3樓:匿名使用者

在baic語言中,數值參與到邏輯du

表示式中時,zhi非0為 true,0為 false。

3 && 2,是一個邏輯與dao表示式,兩邊同時為 true 時,內表示式為 true。由於3和

容2都是非0的數,都翻譯為 true,因此 3 && 2 為 true。

因此 a 值為 1。

4樓:興趣缺缺的

13&&2:3和2都不是0,則此條件成立

c語言if語句為什麼這樣寫不對

5樓:匿名使用者

是對的啊

只要a是整型, 這個語句就是正確的。

表示是3的倍數,且模除2 和4都餘1

6樓:匿名使用者

用括號把每個子語句包裹。

7樓:匿名使用者

a是什麼型別的變數?

%符號兩邊必須都是整數

c語言中int a=3,b=2,c=1執行if(a>b>c)a=b;else a=c 後a=1

8樓:匿名使用者

執行的時候bai,應該寫a>b && b>c ,你du這樣寫的結果就是:先執zhi行a>b,結果為真,在c語言裡dao真用1表示,就

版是算式權a>b結果為1,接下來,1>c,結果為假,所以a=c。

比如你寫死迴圈的時候寫while(2>1){}的時候是死迴圈,寫while(1)的時候也是死迴圈,明白了吧。

9樓:匿名使用者

if(a>b>c)a=b;else a=c

a>b>c這個演算法是從左到右的,也就是先算a>b成立,為1,然後再算1>c,此時c=1,所以if條件不成立,執行else語句。也就是a=c=1.即a=1.

10樓:冬日秋巡春逐鹿

int a=2,b=3, x=1;

if(a>2)

if (b>2)

x = 2 ;

else

x = 3;

printf(抄"%d",x);如果是襲這個的bai話,else對的du

是第zhi二dao個if.

11樓:落月

if(a>b&&b>c)

else

a=1;

c語言if(1)&&(2) 怎麼解釋?

12樓:夏天的小紅花

這個bai寫法是錯誤的。在duc語言中整個邏輯表示式應zhi該被完整地寫在一dao個圓括號中。

所以,上回述表示式應答

當寫為:

if(1 && 2)

實際上,如果真就直接這麼寫的話,因為1和2都不為0,都是作為「真」來解讀的,所以,括號內的值就是「真」,條件總是滿足,這一部分就等同於沒寫,即直接執行後面所跟的語句。

如果是兩個不同的邏輯表示式,則表示,如果 條件1 滿足的條件下,條件2也同時滿足,才執行後面的語句。

13樓:匿名使用者

如果(1)成立並且(2)成立則。。。

如果(1)不成立,(2)就不做判斷直接算不成立

14樓:匿名使用者

1和2都表示邏輯真,所以if(1)&&(2)跟if (1)等價,if後面的語句要執行。

設int a=2,x=3;執行以下語句 if(a<5)if(a<4)if(a<1)x=0;else x=1;else x=2; 後x的值是 . a.0 b.1 c.2 d.3

15樓:匿名使用者

if和最近的else匹配,所以上面的**相當於:

if(a<5)

else x=2;

}a < 5正確

a <4正確

a<1 錯誤,所以else x = 1;

所以最後x的值是1選b

在c語言中,if(a==1&&b++=2)是什麼意思?

16樓:

若a=1並且b=2(執行該步操作後,b的值加1為3)。

邏輯運算子是根據表示式的值來返回真值或是假值。其實在c語言中沒有所謂的真值和假值,只是認為非0為真值,0為假值。

符號 功能

&& 邏輯與

|| 邏輯或

! 邏輯非

當表示式進行&&運算時,只要有一個為假,總的表示式就為假,只有當所有都為真時,總的式子才為真。當表示式進行||運算時,只要有一個為真,總的值就為真,只有當所有的都為假時,總的式子才為假。邏輯非(!

)運算是把相應的變數資料轉換為相應的真/假值。若原先為假,則邏輯非以後為真,若原先為真,則邏輯非以後為假。

還有一點很重要,當一個邏輯表示式的後一部分的取值不會影響整個表示式的值時,後一部分就不會進行運算了。例如:

a=2,b=1;

a||b-1;

因為a=2,為真值,所以不管b-1是不是真值,總的表示式一定為真值,這時後面的表示式就不會再計算了。

這是一類特殊的運算子,自增運算子++和自減運算子--對變數的操作結果是增加1和減少1。例如:

--couter;

couter--;

++amount;

amount++;

看這些例子裡,運算子在前面還是在後面對本身的影響都是一樣的,都是加1或者減1,但是當把他們作為其他表示式的一部分,兩者就有區別了。運算子放在變數前面,那麼在運算之前,變數先完成自增或自減運算;如果運算子放在後面,那麼自增自減運算是在變數參加表示式的運算後再運算。這樣講可能不太清楚,看下面的例子:

num1=4;

num2=8;

a=++num1;

b=num2++;

a =++num1;這總的來看是一個賦值,把++num1的值賦給a,因為自增運算子在變數的前面,所以num1先自增加1變為5,然後賦值給a,最終a也為5。b=num2++;這是把num2++的值賦給b,因為自增運算子在變數的後面,所以先把num2賦值給b,b應該為8,然後num2自增加1變為 9。

那麼如果出現這樣的情況我們怎麼處理呢?

c=num1+++num2;

到底是c=(num1++)+num2;還是c=num1+(++num2);這要根據編譯器來決定,不同的編譯器可能有不同的結果。所以我們在以後的程式設計當中,應該儘量避免出現上面複雜的情況。

17樓:匿名使用者

就是如果a的值是一,而b的值是2的話就為真,然後b的值自已加一羅

c語言, int a=1,b=2,c=3,d=4; if((a=2)&&(b=1)) c=2;

18樓:匿名使用者

int a=1,b=2,c=3,d=4;

if((a=2)&&(b=1)) c=2;

a=2表示賦值2給a,同時檢查結果2是不是真, 當然是,所以又檢查b=1,

b=1 同上,結果也是真,所以執行c=2;

if((c==3)||(d==-1)) a=5;

c=2!=3 ,d=4!=-1,所以不執行a=5;

printf("%d,%d,%d,%d\n",a,b,c,d);

正確結果為:2 1 2 4

如果你的答案是5 1 2 -1,則說明你if((c==3)||(d==-1)) a=5;這句寫錯了,

應該是if((c==3)||(d=-1)) a=5; 是d=-1不是d==-1

c=2!=3為假,因為是||或關係,所以會再判斷d=-1,-1非0為真,會執行a=5

這樣結果為

a=5 b=1 c=2 d=-1

19樓:匿名使用者

我執行的結果是2,1,2,4

第一個if中a=2(b=1)是賦值,和a==2(b==1)是不一樣的

20樓:匿名使用者

if((a=2)&&(b=1)) 相當於if(2&&1) ,結果很明顯

21樓:雪月靈妖

1.結果是: 2,1,2,4

不知道你為什麼是5,1,2,-1

2.if((a=2)&&(b=1))

a=2 => 2 真

b=1 => 1 真

c語言中if判斷的條件裡可以加「||」嗎?比如if(a!=1||2||3||0)?如果不行,那怎樣達到相同效果?

22樓:匿名使用者

你這個用法我真沒用過。。。if((a!=0)||(a!=1)||(s!=2)||(a!=3))

23樓:匿名使用者

if(a!=1&&2&&3&&0)

你這個條件相當於(a!=1)&&2&&3&&0也就是 永遠是0了

你應這樣寫: if((a!=1)&&(a!=2)&&(a!=3)&&(a!=0))

24樓:匿名使用者

if(a!=1||2||3||0)完全可以。c標準規定,if(expression)中的表示式可以是任意的。

但是,該表達是看似晦澀,難懂哦。不清楚要表達什麼意思。

25樓:匿名使用者

可以加,最後你加的結果等於0就是假,大於0就是真

c語言中a1為什麼和a1等價,C語言中,a1為什麼和a1等價?

a 1 是陣列的第2個元素 第一個是a 0 所以 a 1 的地址是陣列的首地址 1,陣列的首地址也可以用 a 表示,所以 a 1是 a 1 的存放地址,所以 a 1 a 1 a 1 的值存在a 1這個地址中 a 1 就是取出這個地址中的內容,他們都是同一個東西當然值都一樣 c語言中,a 1和 a 1...

C語言中1f是什麼意思,c語言中 1f是什麼意思

c語言裡面的數字格式,f指float,佔用位元組數4,有效數字6 7,數值範圍 3.4 10 38 3.4 10 38 這個意思是用float的格式表示數字 c語言中 1f意思是 輸出資料是浮點數,佔一位空間,這樣輸出是沒有意義的,嚴重壞疑你寫鍺了,可能是 c語言中 4.1f是什麼意思,當然數字4可...

c語言中設a1b2c3d4執行,C語言中設a 1,b 2,c 3,d 4 執行printf d d d d n ,a b c,c a b,c a b ,b c 的結果是什麼

c語言提供一種特殊的運算子 逗號運算子。用它將兩個表示式連線起來專。如 3 5,6 8稱為逗號表示式,又屬稱為 順序求值運算子 逗號表示式的一般形式為表示式1,表示式2逗號表示式的求解過程是 先求解表示式1,再求解表示式2。整個逗號表示式的值是表示式2的值。例如,上面的逗號表示式 3 5,6 8 的...