剛學,C語言題,請老師講解下

2025-01-05 17:25:13 字數 2883 閱讀 4403

1樓:鬥雪知識人

運算子的優先順序問題:

的優先順序最低,所以最後進行=運算。

的優先順序高於a?b:c的優先順序,所以先分別進行2*a和2*b的執行,這時代入數值後得到等式:

c=2?x?y:z的優先順序低於*而且高於=,所以這時應該進行這個運算,這個運算子的意思是:如果x的邏輯值為真(x不等於0)那麼取b的值,否則取c的值。

這裡x的位置是2,不為0(邏輯值為真),所以2?的運算結果應該為4,即c的值為4。

又因為c的float型的,所以輸出的結果為。

2樓:

關鍵在第三句。

float c = a ? 2*a : 2 * b若c 能賦值為a,則c賦為2*a,否則賦為2*b又因為c是浮點型數,c=, 而非c=4

3樓:網友

#include

#include

main()

int a=2,c=3;

float b=;

printf(a>b?"c=%f":"c=%f",a>b?2*a:2*b);

該成這樣你就好懂了。a和b都有值。

語句a>b?是判斷句如果a真的大於b則執行第乙個語句2*a;如果a< b則執行第2個語句;

float c=a?2*a:2*b;這個語句表示。

若c 能賦值為a,則c賦為2*a,否則賦為2*b又因為c是浮點型數,而a是 整型所以賦值不成功,據執行第二個語句。

4樓:陳易英

首先是?:這個三目運算子,它的優先順序高於=,先運算它,即把三目運算子的值賦給c,a是否為真,若為真則把2*a的值賦給c,若為假,把2*b的值賦給c,因為a=2,為真,所以把2*a的值賦給c,所以c=

5樓:網友

老大這個,你把c語言的課本翻開,去查一下?和*和定義就明白了啊!float為浮動數!!

初學c語言,請幫忙解答一下

6樓:程式設計師小熊貓

這題第一眼看上去好像很難,其實找個數試下馬上就出來了。

因為變數c的值不為時,所以假設c=7;

0b.(c>=2&&c<=6)為 0,所以0||1||1 = 1c.因為(c>=2&&c<=6)= 0,所以&&後面的不用判斷就知道(c>=2&&c<=6)&&c%2) =0

d.和c一樣的分析 也為0

所以正確答案為b.

希望對您有所幫助,謝謝~

7樓:夜的七絃

因為變數c的值不為時,所以假設c=7;

0b.(c>=2&&c<=6)為 0,所以0||1||1 = 1c.因為(c>=2&&c<=6)= 0,所以&&後面的不用判斷就知道(c>=2&&c<=6)&&c%2) =0

d.和c一樣的分析 也為0

所以正確答案為b.

c>=2&&c<=6)||c!=3)||c!=5)由於是邏輯或,只要有乙個表示式為1即為「真」

c不為,即有以下幾種情況。

1、c < 2,滿足 c !=3, 為「真」

2、c大於等於2小於等於6,即c只能為3或5,當c=3時,那麼滿足 c!=5, 為「真」

當c=5時,滿足 c!=3,為「真」

3、c > 6, 滿足 c !=3, 為「真。

8樓:網友

答案b(c>=2&&c<=6)||c!=3)||c!=5)由於是邏輯或,只要有乙個表示式為1即為「真」

c不為,即有以下幾種情況。

1、c < 2,滿足 c !=3, 為「真」

2、c大於等於2小於等於6,即c只能為3或5,當c=3時,那麼滿足 c!=5, 為「真」

當c=5時,滿足 c!=3,為「真」

3、c > 6, 滿足 c !=3, 為「真」

c語言題,求講解

9樓:網友

目測不管帶多少進去重複呼叫以後都會是3

c語言基礎題,請懂的人解答

10樓:蓉雪球

第一題,因為x,y是整型,所以x=1,y=4/5=0(對於int型而言,此處x,y都是擷取整數部分)

所以,不論d是多少,最後d*y肯定是0

第二題,從最右邊開始ⅹ=ⅹ*y=-4

y=y-ⅹ=2+4=6

y=y+y=6+6=12

11樓:丿艾瑞灬莉婭

(1)int x, y,x和y只能儲存整數x = 即 x = 1,y = (x+ = = 0,d*y = = 0

2)y += y -= x *= y ,從右往左x *= y, x = -2*2 = -4y -= x, y = 2-(-4) = 6y+= y, y = 6+6 = 12

一道c語言題,望詳解

12樓:網友

首先fun6傳入引數26,這是k=1,num=26do的第一次運算結果:k *=26%10=6(26除10取餘是6在乘以1)

後面num/=10得到num=2(因為之前num=26沒有改變過,取整也就是2了)

while判斷為真再次進入迴圈。

這時num=2,k=6

所以k *=2%10=12(2除以10,商零餘2,再乘以k=6)後面的num/=10---num=0

while條件為假返回k=12

輸出列印了。

13樓:糾結哥莫糾結

普通的整形是有符號的(正負),所以需要用乙個位來儲存符號(就是所謂的int型),而unsigned是無符號整形,無需儲存符號,可儲存的範圍比較大……您有什麼不懂的,歡迎追問。

14樓:多熟悉的陌生人

我也學這個的,不過我也不會。

c語言程式設計題,C語言程式設計題

首先分析問題 bai重複du輸出同一類語句肯定要用迴圈,zhi有關判斷肯dao定要用分支回。所以解決這個問題就是在一個答迴圈 用於重複讀取資料和輸出 裡面套一個分支語句 判斷密碼是數字還是字母 具體 include include include main else printf error n s...

C語言程式設計題c語言程式設計題

include include main if flag printf price 5.2f n price system pause include include int main void int area extra money 5 int area lenth 2 printf pleas...

C語言程式設計題,C語言程式設計題

long fun int k if i 2 return 1l return k fun k 1 或 include stdio.h main double h,c printf input h n scanf lf h c 5.0 9 h 32 printf c lf c 實驗一 簡單的c程式設計...