1樓:匿名使用者
這個問題嘛,其實比較簡單。
由於for迴圈裡面沒有趨近迴圈結束的語句,所以每次for迴圈都是要執行的。
i=0時,兩個if都不成立,所以直接執行i++和s+=1這兩句,使i=1
以此類推,i=2時,也是這樣執行,最後i=3i=3進入迴圈內的第乙個if語句判斷是成立的,所以執行continue,也就是跳出本次迴圈,繼續執行下次迴圈,這時i還是等於3的,下次執行for迴圈,第乙個if語句判斷仍然成立,仍然執行continue語句,所以就成了死迴圈了。
所以,它就是這麼死的。。。
2樓:灰色8酷
當i為3的時候,程式執行到
if(i==3 || i==5)
continue;
這步,然後滿足條件,直接continue掉,不會再執行下邊的i++了。
因此,i會一直等於3,也就不會跳出迴圈了。
3樓:丁榮衛
olive1986717正解
前三次都不執行if語句,直到i自增到3時執行第乙個if(且i以後一直都等於3,死迴圈)
4樓:匿名使用者
i == 3時,continue作用 跳過下面,繼續迴圈,程式進入死迴圈;
5樓:匿名使用者
continue; 直接跳到下次迴圈
以下程式的輸出結果是()。
6樓:表哥傻叼
main()
int adds( int x,int y)整個計算過程是這樣的:
第一次呼叫adds(a,b);
n*=++m //m=1 n=n*1=3
m=n%x+y++; // n%x+y++=n%x+y=3%5-1=2
return(m); //m=2,所以c=2,第一次結果為2
有以下程式: 程式執行後的輸出結果是_________________
7樓:匿名使用者
加上{} 你就非copy常容bai易明白
main( )
else }
8樓:匿名使用者
恩,是2啊。c語言規定,如果if後面沒有{},那就只包括if後面的那條語句內,但由於這道題if後面還是if else語句(他們是一條語容句)。所以相當於
main( )
printf("%d\n", d);
}第乙個if條件就不符合了,所以直接執行最後的輸出語句,所以是2
9樓:匿名使用者
樓主你執行來是4??可
源是剛我執行了下結果是bai2
個人看法此題可以如du下新增zhi括號,不影響結果daomain( )
//printf("%d\n", d);
}這樣新增括號的原因在於,else與相鄰最近的if相匹配,所以結果是2,若是與題目答案不符,只能是你貼錯了,或是題目錯了。望能幫助樓主
10樓:鱷魚幻幻
答案是2.
main( )
printf("%d\n", d);
}因為a件不成立只執行專printf("%d\n", d);
else與最近的if搭配。屬
11樓:匿名使用者
直接執行printf("%d\n", d);
答案是2,程式寫的亂。
(第乙個if是假所以不執行這四行)
if (b>c)
printf("%d",d++ + 1);
else
printf("%d",++d + 1);
12樓:風箏啟程
答案當然是四了啊
if假設的條件根本不成立只是d本身自增然後加一結果肯定是四啊
13樓:匿名使用者
我剛試驗過是「2」呀!
若有以下程式: 程式執行後的輸出結果是_____________
14樓:匿名使用者
這個程式是先判斷y的值,在進行y--運算的,當y=1的時候,先判斷進入下一迴圈,此時y=y--就是0,下一次迴圈的時候while判斷y=0結束迴圈,再進行運算y=y--就是-1了!
15樓:遺落的舊夢
y--是先使用在自減,當y等於零的時候就輸出,但是y還會再自減所以是-1,y--與--y不同。--y是先自減在使用。
16樓:匿名使用者
迴圈結束的條件是y=0;但是迴圈結束之後y還要進行y--操作,所以y變成-1,lz可以單步除錯一下
17樓:匿名使用者
去看一下i++和++i的區別吧
18樓:匿名使用者
while(y--); 意思是運算完y--
當y=0時 while(y--); 退出迴圈y-1=-1
希望有所幫助 可以追問
以下程式執行後的輸出結果是______________
19樓:
1 你答du
案不對,
是:zhi4 5 99
2 分析:
main( )
20樓:匿名使用者
答案不對,應該是:4599 也就是 a=4 b=5 c=99
分析:main( )
有以下程式: 執行後的輸出結果是_________________
21樓:天生我是水瓶座
就呼叫了一次 fun()裡的函式第乙個括號從左到右運算 a++ b++ 此時a+b值為5 c自增之前是3 結果是5+3=8 執行程式後a為2 b為3 c為4
以下程式執行後的輸出結果是__________________ 。
22樓:匿名使用者
題目寫錯了吧? 你確定第二個case是case 10? 我覺得應該是case 1吧?
第一次迴圈:
i=9,i/10=0,執行case 0,此時m=1,n=1;
第二次迴圈:
i=10,i/10=1,執行case 1,此時m=1,n=2;
第三次迴圈:
i=11,i/10=1,執行case 1,此時m=1,n=3;
第四次跳出迴圈了。
而k一致都沒有做自增的啊?
所以:m=1,n=3,k=0;
23樓:也許的貓
main函式裡面引用了庫函式printf,所以在前面要#include 。
加入了標頭檔案以後,再編譯執行該函式,結果為:1,3,2。
提醒一點:for迴圈後面最好加上{},把迴圈體加到大括號裡,省得錯。
24樓:匿名使用者
1 3 2
press any key to continue
有以下程式,程式執行後的輸出結果是( ) 求詳解!!!
25樓:匿名使用者
選 b
fun( (int) fun (a+c,b), a-c))先呼叫內層的fun(), fun(10,5) =15.000000
在呼叫外層的fun() , fun(15,-6) =9.000000
應為輸出 %3.0f 即輸出寬度為3為,小數點後為0位,所以是輸出 9
26樓:路媚閻玲然
fun函式是執行什麼功能的?main
函式為什麼沒有型別(void)。
27樓:薄依錯半蘭
程式執行後的輸出結果應選擇:
b.m=6
程式的執行結果正是:
分析:雙重迴圈的執行過程:
i=1j=3
i*j(=3)>3不成立,執行m=m*i*j=1*1*3=3,j--j=2i*j(=2)>3不成立,執行m=m+i*j=3*1*2=6,j--
j=1i*j(=1)>3不成立,執行m=m+i*j=6*1*1=6,j--
j=0退出j迴圈,i++
i=2,j=3
i*j(=6)>3成立,執行break,跳出j迴圈,i++i=3結束i迴圈。輸出的結果為:m=6
28樓:琴仙俎安宜
選aa是乙個陣列,開始傳的是每乙個下標的值,也就是每一次
*s的值為
g,第二三次都為o,第四次為d,因為
ascii碼中
g=103
o=111
d為100
三個數中只有d匹配
*s%2==0
所以輸出
d答案為a
以下程式執行後的輸出結果是maininta,b
我執行了下復 結果是3,10 include main 這裡面制的 a,b 是個bai逗號表示式du,a 和b 都執行了但最後輸出zhib 的結果所以daoa b c就是2 3 5 如果你在下面再加一句printf d,d n a,b a b c a,b的值就會變。而這樣的話應該printf函式對變...
以下程式執行後的輸出結果是mainint x 20 printf
答案是1,0 因為根據算數優先順序從左到右進行運算 0 x 為真,真就是1,1 20也為真所以為1,然後下一條0 x為真就是1,x 20為假就是0,1與上0就是0 以下程式執行後的輸出結果是 main int x 10 printf d,d n x,x c語言函式引數處理順序 從右向左 printf...
執行以下程式後,輸出的結果是mainint y 10 do ywhileyprintfd n ,y
雨落巴黎塔 選ddo while語句 先執行do裡面的迴圈體,再去判斷while條件是否成立,如果成立,一直執行下去,直到不成立終止迴圈 選d.c語言書上寫有,do 語句 while 表示式 其中語句是迴圈體,先執行後判斷,先執行一次指定的迴圈體語句,然後判別表示式,當表示式的值為非零 真 時,返回...