1樓:匿名使用者
結果是copy0;
x=1,!x為false 所以再判斷x==0也不成立故y=0else if (x==0)
if (x) y+=2;
else y+=3;
和else if (x==0)
是一樣的意思
2樓:匿名使用者
最後輸出的結zhi果是0,還原一下程
dao序就可以看的更清楚
#include
int main()
else if (x == 0)
else
}printf("%d\n", y);
return 0;
}首先答x=1,所以!x=0為假,所以往下執行,而x=1,所以else if的條件也不滿足,所以最後y的值沒有改變
else先和他最近的if配對
3樓:我們必將知道
0第一個if不會執行,因為!x = 0 ,else if也不會執行,因為x = 1,並不等於0 。綜上,y的並未改變。
(25)有以下程式 main() { int x=0,y=0,i; for (i=1;;++i) { if (i%2==0) {x++;continue;} if (i
4樓:匿名使用者
兩個全都是a
第一bai
個:i=5時du結束,此zhi時y自加一次為1,x自加兩次(daoi=2和4時)為2
第二版個權:三個for迴圈後兩個為一個排序整體,作用是對第i列元素進行從小到大排序,(第一個for用來遍歷列),所以最後的結果是每一列按從小到大排序。
輸出為對角線元素 1 6 5 7
5樓:滄海雄風
#include
main()
if (i%5==0) }
printf (" %d,%d",x,y); }選dua
2,1press any key to continuemain()
,,,},i,j,k,t;
for(i=0;i<4;i++)
for(j=0;j<3;j++)
for(k=j+1;k<4;k++)
if(a[j][i]>a[k][i])/*按列zhi排dao序回
答*/for(i=0;i<4;i++)printf("%d,",a[i][i]);
} 選a
1,6,5,7,press any key to continue
6樓:手機人生
c語言愛好家,可是不懂啊!努力學習ing!呵呵!
c語言中 main() {int x=1,y=1,z=0; if(z<0) if(y>0 具體請看下邊程式。由於剛剛學習這門語言,請指教
7樓:迷夢錯亂
//你的**復bai製得很亂 完全看不懂
du,沒幾個人會回答zhi,因為浪費時dao間,花了15分鐘專才整理好**,看懂一些而已屬 之後的就懶得寫了不懂的再問int main(void)
8樓:forever那抹綠
你這個**太不規範了,得看第一個if的範圍是什麼
9樓:匿名使用者
由於baiz=10,所以
if(z<0)
if(y>0) x=3;
else x=5;
這段不du執行。 x初始為1,
zhiprintf(''%d\t'',x);列印1.
z=y=1>0所以
else if(y==0) x=5;
不執行,dao進入到版else x=7,列印出7.
其結權果為1 7
c語言中 main() {int x=1,y=1,z=0; if(z<0) if(y>0) x=3;
10樓:
z=y<0是先判斷y<0,此表示式值為0,即賦值z=0,然後表示式的值作為if判斷條件,它是0,自然不成立了,於是往下執行if(y==0) 這裡也不成立,再往下else執行了x=7,於是輸出7了
11樓:
你這y是大於0的吧,
if(z=y<0) x=3;
else if(y==0) x=5;
前面兩個if都不符合,就只能x=7;了
12樓:匿名使用者
if(z=y<0) x=3;
else if(y==0) x=5;
else x=7;
printf(''%d\t,x);
printf(''%d\t'');
其中抄 if(z=y<0) 執行bai的是先把y賦值給z.整個賦du
值表示式zhi的值(y的值)充當左值,相當dao與z=y; if(1<0) (顯然為假嘛),所以執行else print 7.
以下程式片段( ) 。 main ( ) { int x=0,y=0,z=0; if (x=y+z) printf(「***」); else printf(「###」); }
13樓:手機使用者
因為x=y+z是賦值語句,所以if (x=y+z)相當於if (x),因為x的值為y+z=0,所以x=0為假值,所以輸出###
14樓:匿名使用者
答案是b
因為c語言中"="是賦值號;if(x=y+z)是計算出y+z的值然後賦值給x,這個式子是永遠成內
立的,所以會輸出***;
如果說容要改錯的話,應該改為if(x==y+z),構成邏輯表示式後,才符合程式設計的初衷。
15樓:匿名使用者
選 b因為x=y+z為真,程式會一直執行 printf(「***」);
16樓:mxj抹香鯨
答案應該是a,因為:(x=y+z),y+z=0:x=0;0=0,該語句是真,所以執行第一個,所以輸出「***」,自己可以寫一下這個程式
有以下程式,有以下程式 include int abc int u,int v main int a 24,b 16,c c abc a,b printf d n ,c
這個是輾轉相除法 求最大公約數的,24和16的最大公約數就是8具體過程 a 24 b 16 於是函式abc中 u 24 v 16 while v 第一次迴圈 w 24 16 8 u v 16 v w 8第二次迴圈 w 16 8 0 u v 8 v w 0第三次 判斷v為0,退出迴圈 返回u值為8 首...
執行以下程式段後,abcint x 10,y 9int a,b,caxyxybxc
a 10 b 9 c你沒有給出,c y 或者c y c 11c x 或者x c 10 a x y x y 這條語句有語法錯誤,左邊不能是表示式x 自己放在程式裡試試不就知道了,問別人永遠不知道為什麼 5 執行以下程式段後 變數a,b,c的值分別是一。int x 10,y 9 int a,b,c a ...
有以下程式段 int k 0 while k 1 k則迴圈執行多少次?為什麼
迴圈會執行無數次,while k 1 表示式k 1是把1賦值給變數k,然後整個表示式k 1的值為1,即真,然後k自加,新的一輪迴圈開始時,k的值又變成1,即真,所以迴圈不會結束。有以下程式段 int k 0 while k 1 k 則while迴圈執行的次數是 程式段 int k 0 while k...