1樓:匿名使用者
答案選a,即輸出「2空格0空格」。
這題有兩個自減運算子,一個是字首,一個是字尾。
字尾,n--,是先使用 n 的值,再 -1。即先判斷 n 的值,再 - 1。
字首,--n,是先 -1,再使用 n 的值。即 n 先 -1,再輸出 n 的值。
while(n--),n = 4,結果為真,n 再 -1,此時 n = 3。
執行 printf 語句,先執行 --n,此時 n = 2,輸出「2空格」。
while(n--),n = 2,結果為真,n 再 -1,此時 n = 1。
執行 printf 語句,先執行 --n,此時 n = 0,輸出「0空格」。
測試結果
2樓:關桖風
a當一個非布林變數出現判斷框裡,0為false,非0為true。
而這裡判斷框裡的是n--,--和++一樣,在變數前就是先遞減在執行對變數的操作,在變數後就是先執行對變數操作後再遞減。
所以第一次迴圈:4 true 4--,3-- 輸出2;
第二次:2 true 2--,1-- 輸出0;
第三次:0 false 未進入迴圈,跳過迴圈體,主函式結束
c語言,求過程
3樓:匿名使用者
這題的重點是在迴圈中理解陣列的變化,即陣列和迴圈的組合使用,這類問題很常見。
先看迴圈,起始i=1,條件i<9,即i的變化為1到8,所以陣列a也是從a[1]到a[8]的變化,陣列的下標是從0開始的,即a[0]=0、a[1]=1...a[9]=9,沒有a[10]。
接著看迴圈體語句:a[i]=a[i-1]+a[i+1],這條語句就像一個公式,代入一個數字,例如i=1,那麼有:a[1]=a[0]+a[2],即:
已知i是1到8,根據a[i]=a[i-1]+a[i+1],
陣列原來的值:a[10]=
當i=1時,那麼有:
a[1]=a[0]+a[2],即a[1]=0+2=2
此時a[10]=
原來a[10]=
當i=2時,有:
a[2]=a[1]+a[3],即a[2]=2+3=5
此時a[10]=
原來a[10]=
當i=3時,有:
a[3]=a[2]+a[4],即a[3]=5+4=9
此時a[10]=
原來a[10]=
當i=4時,有:
a[4]=a[3]+a[5],即a[4]=9+5=14
此時a[10]=
原來a[10]=
當i=5時,有:
a[5]=a[4]+a[6],即a[5]=14+6=20
此時a[10]=
原來a[10]=
當i=6時,有:
a[6]=a[5]+a[7],即a[6]=20+7=27
此時a[10]=
原來a[10]=
當i=7時,有:
a[7]=a[6]+a[8],即a[7]=27+8=35
此時a[10]=
原來a[10]=
當i=8時,有:
a[8]=a[7]+a[9],即a[8]=35+9=44
此時a[10]=
原來a[10]=
迴圈結束,根據輸出語句printf("%d%d",a[5],a[7]),那麼a[5]=20,a[7]=35,即輸出結果為「2035」,答案選b。原始碼
4樓:匿名使用者
a[0]=0,a[1]=1依次類推。
for迴圈,當i=1時,a[1]=a[0]+a[2]=0+2=2,當i=2時,a[2]=a[1]+a[3]=2+3=5,當i=3時,a[3]=a[2]+a[4]=5+4=9,當i=4時,a[4]=a[3]+a[5]=9+5=14,當i=5時,a[5]=a[4]+a[6]=14+6=20,當i=6時,a[6]=a[5]+a[7]=20+7=27,當i=7時,a[7]=a[6]+a[8]=27+8=35,依次類推
最後輸出a[5]和a[7]的值,分別為20和35,所以選b
5樓:愛
首先解釋一下迴圈的意思
a[i] = a[i-1] +a[i+1]它的意思是陣列中當前位的值等於前一位與後一位的和第一個次進迴圈
a[1] = a[0] +a[2]
所以a[1]=2
以此類推
陣列a為0,2,5,9,14,20,27,35,44所以輸出20和35
c語言程式,求過程?
6樓:匿名使用者
continue;使n=n+i;一次也不會執行。所以,迴圈結束後n的值不變還是1,選d。
7樓:匿名使用者
迴圈體一開始就是continue,所以後面的語句n=n+i;從來沒有執行過一次,n依舊是原值1
c語言程式(3)求過程?
8樓:匿名使用者
第1次迴圈時:
i=0,j=1,0<=1+1成立,執行迴圈。然後i=2,j=0第2次迴圈時:
i=2,j=0,2<=0+1不成立,不執行迴圈。
所以,只執行迴圈1次,選c。
9樓:匿名使用者
i=0,j=1,i<=j+1為真,執行一次
i=2,j=0,i<=j+1為假,退出迴圈
所以只執行了1次
c語言求過程 100
10樓:匿名使用者
3.#include
int main()
//執行示例:
4.//發工資,錢的張數儘量少。
#include
int main()
//執行結果:
11樓:琉光飛月
3.char ch;
int d;
ch=scanf("%c");
d=ch-"0";
print("%d",d);
如果覺得可以,我給你寫第四題
12樓:手冢米奈雙子
會是會不過這寫一個程式也太麻煩了吧
13樓:放肆柏鞀
補遺(二十四卷抄本未收回目)補遺 楊千總 瓜異 產龍 龍無目 龍取水 螳螂捕蛇 餺飥媼 縊鬼閻羅 商婦 男生子 黃將軍(28) 藏蝨 蚰蜒 牛犢 李檀斯
c語言,求過程及結果 10
14樓:
第一步,sum=0+5*5=25;n=2345/10=234;因為n大於0,所以繼續迴圈
第二步,sum=25+4*4=41;n=234/10=23;因為n大於0,所以繼續迴圈
第三步,sum=41+3*3=50;n=23/10=2;因為n大於0,所以繼續迴圈
第四步,sum=50+2*2=54;n=2/10=0;因為n=0,停止迴圈
所以最後列印sum=54
15樓:shi於初夏
完了,我老了,我大概知道什麼意思,也知道是幹啥的,可是就是說不出來了,t_t才幾年而已啊
c語言,求過程,極其執行結果?
16樓:匿名使用者
結果應該是10010
應該就是18的二進位制
y%2 是 y的二進位制最低位 存入a
y/2是去掉剛才的最低位
比如6的二進位制是110
a中的值為011
執行第一遍後u為11 a[0]為0 i為1後面依些類推
17樓:匿名使用者
不錯的 程式,應該是 十進位制數 轉換 為 二進位制數
有個變數 定義了,但根本沒有使用 ,就是 v
c語言程式(2)求過程?
18樓:匿名使用者
注意是k=0
=是賦值,==才是判等
k賦值為0(假),所以判斷的條件為0(假),迴圈體不執行
19樓:匿名使用者
c,while一開始就沒有執行
C語言詳細過程,C語言的學習過程
首先說一聲,這個程式不需要break,你這個do while 迴圈中的一系列case的作用是 你輸入的字串中只要出現aeiou 大小寫 中每一個字母一次,進行v1 出現非aeiou的其他字母一次進行v0 v2 因此v1就是原音的個數,v0是子音的個數,貌似你沒有定義v2呀,你再看看你原來的程式。你的...
C語言求程式框圖,C語言求程式框圖
include main int min int min j for i 0 i 8 i min a i 0 min j 0 for j 1 j 4 j if a i j c語言,求大神將源程式 轉化成程式框圖 流程圖 初學者多謝 15 就是賦值和列印,全是順序執行,就一條線,如此簡單還需要流程圖嗎...
c語言程式閱讀題,求答案有,但是不知道過程求詳細解答。本人
fun函式的主要功能是將二維陣列中每一行的最大值放到每一行的首列,其他列的值不變。最終將結果在main函式中輸出。求救一道c語言的題目,求詳細解答過程!非常感謝!1.int i int f 20 程式定義了一個變數i和一個長度 為20的整型一維陣列並把陣列的前兩個值均初始化為1後面初始化為02.fo...