1樓:
先判斷括號中的真假,--a是先將a自減1,得到值0,然後b++的意思是取得b的值和--a判斷後才將b+1,括號中的表示式為真,所以x的值是--a,因為已經將a自減1了,此時再減1得到-1,賦給x。將a的值賦給y,然後a+1,所以y的值也是-1,在(--a==b++)因為已經將b+1了,所以z的值為1.
2樓:匿名使用者
++i ;是執行前+1
i++;是執行後+1
我們一起來分析下:
先看這個。x=(-a==b++)a:++b;
1)這是乙個三目運算。
表示式1?表示式2:表示式3
表示式1 是條件,他的值 是乙個邏輯值,就也0和1表示式2 是為真的話,就執行 ;否則就執行表示式3(--a ==b++)a 等於0 ,b++ 等於0 所以這兩個變數的值相等!所以執行--a
再把 (-a==b++)a:++b 這個表示式的值 賦給x也就是x = 1;
現在 b = 1,a= -1;
y = a++;
所以y = 1;
3)現在 a = 1,b=1;
z = b 那麼。
z=1. 如果有什麼不懂,還可以再問。
求同學 呵呵。
c語言程式設計問題 5
3樓:有柴公尺呀呀呀呀
提問怎麼改。
把replace函式提到main函式外面。
提到main函式的前面。
或者在main前面寫乙個replace函式宣告宣告報告裡面呢,還寫了呼叫時的型別是衝突的。
c語言程式設計問題
c語言程式設計問題?
c語言程式設計問題
4樓:貳彤雲憑懌
我解釋下遞迴函式吧:f(6)中有f(6/2)即f(3)和printf函式,但要等f(3)執行完後才執行printf函式(輸出6),f(3)中有f(3/2)即f(1)和printf函式,但要等f(1)執行完後才執行printf函式(輸出3)
5樓:粘代卉普煦
這是個遞迴問題,fun()函式在函式體內部又呼叫了自己。
具體解法可以這樣理解:
1、執行if(x/2>0)
2、若結果為真,執行fun(x/2);,後面那句printf("%d",x);暫時不執行。
3、當執行完fun(x/2)[裡面可能還包含了fun()這樣的呼叫],再執行第2步中未執行的printf("%d",x);
舉例:fun(6);
1、執行if(6/2>0)
2、由於6/2=3,所以,執行fun(6/2),即fun(3),這時,printf("%d",x=6)這句暫時不執行,等fun(3)執行完了再執行。
3、執行fun(3),這又是乙個fun()函式,所以,仍然先判斷if(3/2>0),4、顯然,3/2=1,大於0,這時,先執行fun(1/2),printf("%d",x=3)暫不執行,等fun(1/2)執行完了再執行。
2=0,所以,不符合要求,執行printf("%d",x=1);
6、這時,fun(1/2)便執行完了,接著,需要執行剛才未執行的printf("%d",x=3)
7、printf("%d",x=3)也執行完了,需要執行剛才未執行的printf("%d",x=6)
最後,得到的結果就是136
對於main0
這個是乙個判斷條件的問題。關鍵是要看這幾個符號的結合順序。
00(x<20),左邊是真,右邊是假,&&要兩邊是真,結果才是真,所以,這個表示式的結果是假,即0
c語言程式設計問題? 5
6樓:自我程式設計
1、輸入有範圍,兩個變數輸入都需要驗證,方法變數處置範圍以外,迴圈判斷輸入。
2、天數迴圈計數,日期0~6週期自增。用變數累加計數結果。
下面是演示**:
printf("請輸入a的值(0~6):"scanf("%d",&a);
while(n<0 ||n>365)
printf("請輸入n的值(0~365):"scanf("%d",&n);
for(i=0,j=a;iif(j==4) cnt++;
if(j==6) j=-1;
printf("上機次數%d次",cnt);
return 0;
7樓:嘉嘉設計師
你好,是什麼問題呢?
提問>
怎麼改。你是在後面宣告了乙個replace函式。在前面應用了。
把replace函式提到main函式外面。
提到main函式的前面。
或者在main前面寫乙個replace函式宣告宣告。
報告裡面呢,還寫了呼叫時的型別是衝突的。
8樓:小
這個程式不就是列印從11開始的第5個素數嗎?
c語言程式設計的問題?
9樓:匿名使用者
這個語句的末尾有乙個分號,因此後面的。
不在迴圈體內。
這裡反映了乙個重要的習慣:迴圈體始終用大括號括起來,不要省略大括號,即使只有一句。
c語言程式設計問題,c語言程式設計問題?
include int main int i,n double sum 0 scanf d n for i 1 i n i sum i i 1.0 i 1 printf f n sum return 0 include void main c語言程式設計問題 解題思bai路 完全跟百錢買百雞的問題是...
c語言程式設計,求兔子問題,c語言程式設計問題
因為只有6年,定義乙個陣列儲存第n年各歲兔子的數量 include int sum int n return a 0 a 1 a 2 a 3 a 4 a 5 void main 壽命是6年,也就是還是要掛掉的。遞迴光加了,沒有考慮死掉的哦 include include void main if r...
C語言程式設計問題
1.二樓的回答有錯。空格是字元沒錯,但是用 s,例如 scanf s a 輸入字串是將空格專視為輸入結束的標誌屬 所以用 s輸入,是無法將空格輸給陣列的。2.定義時的下標是指該陣列的元素個數,而引用時的下標,例如a 1 指的就是第2個元素。有點看不懂你的問題哈 我隨便說說,輸入資料流中輸入空格代表著...