c語言,以下程式的輸出結果是,C語言問題 以下程式的輸出結果是?

時間 2021-08-30 11:19:49

1樓:

輸出1 3

這是遞迴了,所以先是fun(3),進入後發現3/2=1,所以又繼續func(3/2),也就是fun(1),進入發現1/2=0,就執行prinft,輸出1,然後fun(1)就返回了;返回出去正好是fun(3)的prinft,輸出3

進入fun(3)

進入fun(1)

輸出1退出fun(1)

輸出3退出fun(3)

2樓:匿名使用者

fun(3); 進入 fun()函式時

x = 3

x/2 ==1 大於0; 於是遞迴呼叫函式,遞迴呼叫前x 的值為3fun(x/2) 即 fun(1); 此時進入fun函式,呼叫fun(1)時 ,1/2 ==0 不大於0 故直接列印x的值,此時x =1

然後 遞迴呼叫fun函式 之前 x的值 3,列印輸出最後結果為:空格1空格3

3樓:銀雯

1 3fun(3)

3/2=1>0轉到fun(1)

1/2=0往下繼續輸出1

然後返回上層,輸出3

4樓:

1 3 這是一個函式遞迴呼叫。

fun(3) 3/2=1 呼叫fun(3/2)---fun(1) 1/2>0不成立,輸出1,返回,再輸出3

c語言問題:以下程式的輸出結果是?

5樓:polaris北斗

陣列a中的值沒有改變,所以a[2]的值還是6,選a

c語言填空題,以下程式的輸出結果是?

6樓:這個名有人取了

第一次進while迴圈num為0,然後自增1變成1,不等於3所以輸出1

第二次num自增1為2,不等於3所以輸出2

第三次num自增1為3,然後就break了,所以輸出為12

7樓:id_塵風

先輸出了1 下一次迴圈輸出2 第三處迴圈退出了

以下程式的輸出結果是,C語言問題 以下程式的輸出結果是?

c語言函式引數都是單向傳遞的,直接傳值是不可能改變原來的數值的。此題答案30,20 你的printf好像有點問題 include void fun int p1,int p2,int p3 main 按lz所寫 輸出為30,20,因為函式的引數為所宣告變數的副本,這樣不會改變原有的變數。如果想改變原...

c語言以下程式的輸出結果是a為什麼

輸出結果是字元z 位元組是20是因為 10 定義了你為x資料組準備了10個位子,沒個位子可以存放乙個資料 佔2節 10 2 20 位元組 printf c 由於沒有輸出列表所以c編譯器不知道是列印哪個變數裡的值 他產生的當然是個隨機數.假定int型別變數占用兩個位元組,其有定義 int x 10 則...

C語言初級有以下程式段輸出結果是

for i 1 i 15 j 4 一定是給錯了,應該是for i 1 i 15 i 4 取4個值1,5,9,13 for j 3 j 19 j 4 m 會執行5次m 也就是m 5,j分別取3,7,11,15,19 兩個迴圈是巢狀關係,合計執行為4 5 20。 外層迴圈應該是 for i 1 i 15...