1樓:匿名使用者
當x為真時,因為是||號,後面的就不進行判斷了,就不進行計算了。
2樓:暗影水歌
a=++x||++y&&z++就是a=++x或++y和z++
計算從左到右,或左邊為真時,結束運算,即x=2+1,y、z不計算,直接輸出。
結果為3,2,0
3樓:沐夏依晴
因為是||運算,計算了++x,已經為真,後面的內容不計算了,此時x=3,y z不變
請教這段c語言程式輸出結果為什麼是1 0 2 3 沒有6個0?
4樓:自我程式設計
靜態全域性變數初值是0。所以arr初值是0。
最後輸出迴圈是10次,包含10個陣列元素1111000000對於迴圈巢狀邏輯,要是理不清,在原程式迴圈的地方加printf語句把對於的一些變數列印處理會更清晰。比如我下面把原碼新增了printf。
#include
int change(int n,int s,int c)static int arr[10];
void solve(int man,int dis)printf("第%d次i迴圈結束前執行arr[i-1](arr[%d])=temp(等同於a[%d]的值)\n\n",i-2+1,i-1,j-1);
arr[i-1]=temp;}}
int main()
c語言程式,為什麼這道題的輸出結果是2,3 ??我覺得應該是3和乙個隨機數才對啊??
5樓:雙月夜雪
->的優先順序高於++
所以,++p->x 是 ++(p->x)
c語言中的一道題 求程式的輸出結果 為什麼我求出來是1 2 2 呢?而答案是1 2 3 啊
6樓:匿名使用者
你的情況是:來
while(n++<=1)中是先取n值判斷源後再n++,因此第一次n=0判斷有效,n變為1並執行迴圈體;
第二次n=1判斷仍有效,n變為2並執行迴圈體,第三次n=2判斷無效,n++被忽略。
但實踐中由於編譯器的實現不同,可能導致第三次半段無效時n++未被忽略-理論上是不應該忽略的。所以給的答案是1 2 3。
所以問題可能出在你使用的編譯器上。
我用tc2.0編譯器、tcc編譯器和cygwin下的gcc編譯器執行結果均為:1 2 3。
不知道你用的什麼編譯器?
難怪。這主要是編譯器的問題。 我用vc6.
0測試了,如果debug模式沒有問題,release模式有問題,只有1 2。 我估計是release優化出錯。所以檢視了一下,如果以速度優化,則輸出1 2。
預設模式則跟debug一樣。最小尺寸優化也只輸出兩個。自定義優化跟預設模式一樣。
所以問題出在編譯器及project設定上。
所以正確答案應是三個:1 2 3。
7樓:光明左右二使
你忽略了最後一次,n = 2的時候,還是會計算n++ <= 1的,這個時候 因為n > 1,所以沒有進迴圈(在括號處求的值),但是編譯器還是對n++求了一次值,不然,怎麼知道n++ 已經不符合條件了
8樓:匿名使用者
當n=1時(第二次迴圈),1<=1滿足,那麼n加一,然後執行迴圈體
此時n=2,進入n++<=1中,由於2<=1不成立,應該跳出迴圈啦,但n還要加1的,因為n++<=1是乙個語句。此時n=3了。
c語言編寫函式求:1-1/2+1/3-1/4+1/5-1/6+...1/n的值怎麼做?結果是什麼呢?
9樓:幻翼高達
需要準備的材料分別有:電腦、c語言編譯器。
1、首先,開啟c語言編譯器,新建乙個初始.cpp檔案,例如:test.cpp。
2、在test.cpp檔案中,輸入c語言**:。
int n = 100;double s;
for (int i = 1; i <= n; i++)if (i % 2 == 0)
s -= 1.0 / i;
else
s += 1.0 / i;
printf("%lf", s);
3、編譯器執行test.cpp檔案,此時成功輸出了擺動符號多項式的結果。
10樓:匿名使用者
#include
int main()
printf("%f",t);
}我不知道你要哪乙個的答案,我給你些了第二個,好像你的答案不對第乙個上面那位同志寫的沒有什麼問題,我看了一下
11樓:沉冥想
#include
int main()
return 0;}
12樓:匿名使用者
#include"stdio.h"
main()
13樓:ooo孤雁
#include
#include
int main(void)
printf("%f",t);
system("pause");}
C語言有以下程式程式執行後的輸出結果為
一看到這種題目就是讓你看的這個書,不是什麼好書。正經的書不會寫乙個這麼不符合書寫規範的題目。你工作以後寫成這樣會 正規寫法 c語言問題!若有以下程式 輸出結果是?include main int argc,char argv 主函s是程式名,所以不列印.現在dos提示符下鍵入s aa bb cc後字...
c語言讀下列程式,寫出程式的輸出結果
1,1因函式 void swap int a,int b 的第乙個引數a 不是指標,所以 它不會把 函式體內 對 a 的改變 帶回 函式呼叫語句 所在地。而第二個引數b 是指標,所以它能把 交換 結果 帶回來。int a 1,b 2 a,b初值int p b p 指向 bif a printf d,...
c語言閱讀下面的程式,寫出程式執行輸出結果
include int f int x int main for迴圈迴圈3次,依次呼叫三次f 1 而f中的z和y是static靜態變數,只初始化一次,而且在退出函式的時候還會保持它們的值。知道這個就可以走一次迴圈了 比如k 1,即f 1 開始 x 1 z 3,y 0 y z 這行結束後y為1,z為4...