1樓:匿名使用者
首先這裡的for迴圈沒有打{}號括起**來,所以他只是迴圈緊跟著下面的一句**,也就是這句,s =10*s +ch [ i ]- 『0』;這裡的整形運算加字元還是整形
i == 0,s == 0,for第一次迴圈:ch[0] =『1』滿足for迴圈條件, s = 10*s +ch[i]- '0'; 所以s=10*0+1-0,s的結果為1,再運算 i+=2 ,所以i=i+2,i的結果為2
i==2,s==1,for第二次迴圈:ch[2] =『a』不滿足迴圈條件,迴圈結束,執行下一句,printf (「 %d\n」 , s);所以列印結果為1
希望能對你有所幫助,建議你去用除錯的工具,來執行**,你加了我為好友的,呵呵
2樓:匿名使用者
放到程式裡除錯一下就知道了。
3樓:過段時間換個
你應該就這一句不好理解吧?
for (i =0; ch[i]>=』0』 &&ch[i]<=』9』;i+=2 )
s =10*s +ch [ i ]- 『0』;
printf (「 %d\n」 , s);
分下格式,容易看。
for迴圈,迴圈進行的條件是 ch[i]是'0'字元到'9'字元之間。首先i=0,ch[0]就是 char ch[7] = ; 這個字串的第一個字元,就是'1'符合條件,進入迴圈的下一條語句s =10*s +ch [ i ]- 『0』; s = 0,所以10*s是0,ch[0]-'0'='1'-'0' =1,2個字串進行算術運算,取他們的asc 編碼進行運算,你查下編碼表就知道了,『1』比『0』大1.然後相加 s = 0+1 =1。
然後進入迴圈更新式,也就是i+=2 這一條了,這個簡單吧,i = i+2,開始i = 0, 現在 i=2了,然後i=2代入測試式ch[i]>=』0』 &&ch[i]<=』9』,ch [2]這次是字元陣列的的第3個元素,也就是'a'了,不滿足迴圈條件,所以不執行迴圈的下一條語句s =10*s +ch [ i ]- 『0』,迴圈結束。
然後輸出s的值,s = 1,輸出1
下面程式的輸出結果是什麼?
4樓:溼潤的風
當i=0時,ch[i]='1',符合迴圈條件,進入迴圈體;
此時,s=0;
s=0+ch[0]-'0'='1'-'0'=1然後是i+=2,即i=2.
而ch[2]='a',不符合迴圈條件,所
版以退出迴圈體,執權行輸出語句
printf("%d\n",s),
即顯示整數「1」後結束程式
c語言:下面程式的執行結果是()
5樓:匿名使用者
因為i=3;進入switch(i)後,執行a+=3;後a的值是3;因為沒有break語句,它並沒退出switch()語句,所以又執行到a+=2。a值變成了5。接著,執行break語句,退出switch(),執行printf()。
所以選b
6樓:匿名使用者
case 3和case 1後面都沒有用break,所以不會跳出switch而是繼續執行,
所以case 3 a+=3,case 1,case 2 a+=2.然後break,結果為5
下面程式的輸出結果是
7樓:匿名使用者
執行結果:
5160
21程式
#include
struct st //原程式多了個分號*p;int dt[4]=; //定義陣列dtstruct st aa[4]=;
//定義結果陣列aa
void main()
8樓:闕晶種春翠
這是一段c++的程式
我口算算不出來。你可以把它放進編譯器裡,再按ctrl+f5
c語言:下面程式段的執行結果是()
9樓:匿名使用者
for(i=0;i分別
是i=0和i=1
for(j=0;j次,
內是x[1]加1操作2次,
又因為x[0]、
容x[1]初值為0
所以x[1]=2
10樓:匿名使用者
1、第一行是宣告變
bai量,整型陣列dux[3]和整型變數ijk2、第二行zhi和第三行for迴圈dao對陣列x進行初始化,數內組元素全都為0
3、第四
容行給整形變數k賦值2
4、第五行第六行第八行這樣看
for(i=0;i<2;i++);
//當i=1時,再進行一次x[0]=x[0]+1,和x[1]=x[1]+1,此時陣列內容是
//x=;此時x[1]=2,所以選a}}
下面程式的執行結果是_______。
11樓:匿名使用者
選a第一次迴圈
i=0,ch[0]=『1』,ch[0]>=『0』&&ch[0]<=『9』 成立,s=0+1=1
第二次迴圈
i=2,ch[2]=『a』,ch[0]>=『0』&&ch[0]<=『9』 不成立,迴圈結束
s最後結果為1
下面程式的執行結果是includestdio hmainchar a
sun 3 moon 4 sun 3 moom 4 15.寫出下面程式的執行結果 include main int a 1,b 2 printf d n a a 15.輸出表列有三項,格式控制字元只有一項,對應表示式a a 1 2,所以輸出2 1.a b c 所以表示式值為非零,為真,執行print...
下面程式段執行的結果是intiinta
首先,a是一個3 3的二維陣列 然後我們看下 稍微調整一下 得到如下的格式 for i 0 i 3 i printf d a 2 i i 也就是在for迴圈中,輸出陣列的一個變數,具體是哪個值呢?我們繼續看 for迴圈中,i從0開始直到i 2迴圈結束,每次迴圈取的值為陣列中的第 2 i 行,第i列的...
下面程式的執行結果是多少,求詳細解釋
一步步來呀 從b 到f 你試一下 k 經歷過 1 0 1 2 0 1 10 11 3 4最後是4哦 將每一步執行的值輸出 則 為 include int main k printf d n k while c g printf k d n k return 0 結果也為如圖 下面程式的執行結果為 c...