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

時間 2022-05-01 19:40:08

1樓:匿名使用者

輸出結果是字元z

位元組是20是因為 [10] 定義了你為x資料組準備了10個位子,沒個位子可以存放乙個資料(佔2節) 10*2=20 (位元組)

2樓:匿名使用者

printf("; %c");

由於沒有輸出列表所以c編譯器不知道是列印哪個變數裡的值...他產生的當然是個隨機數...

假定int型別變數占用兩個位元組,其有定義:int x[10]=;,則陣列x在記憶體中所佔位元組數為 20

它的裡面當然是20個位元組拉~

陣列的長度是10

int x[10]=;

從第二個元素開始系統會自動補0

3樓:星雲

你定義的是整型陣列有十個元素,每個整形元素佔兩個位元組,所以2*10=20.你上面的哪個程式輸出語句寫錯了應寫為printf("%c",c);之所以出a或z可能是你們機子的記憶體位址動態分配的結果吧!

4樓:匿名使用者

printf("c%",c);

輸出語句是這樣用的,你沒有設定輸出列表,當然輸出不定量了。

int型系統自定義每個字佔兩個位元組,即使為零。

5樓:匿名使用者

你怎麼執行的啊,我輸出z

int x[10]有10個元素當然佔20位元組,即使它們全為0,佔記憶體的的儲存空間仍是20

6樓:

當然是輸出z啊!!

陣列x中有10個元素當然是20個記憶體位元組了

雖然都是0

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

7樓:匿名使用者

結果是1:

「? :」是三目運算子

問號前面的是條件。如果條件成立就得到冒號前面的結果;不成立就是冒號後面的結果。

這裡是雙三目運算子:由於w

8樓:匿名使用者

輸出結果是1

首先判斷w

w

這個就相當於if else語句

9樓:匿名使用者

1條件運算子是三目運算子,執行時從右從左執行先進行第一次判斷z

可知 得1

繼續執行,w

可知輸出 z,即1

c語言的,下面的程式輸出結果是什麼?為什麼?

10樓:遮天灬傲屹

a=2,b=1

從case1語句開始執行

由於沒有break;終止

所以繼續執行case2

所以a++兩次,b++一次

得答案如上

11樓:匿名使用者

output: a=2,b=1

因為程式在case 1之後執行a++, 接著沒有break, 程式繼續進行, 雖然有case 2, 但只要case 1符合, 只要接下來沒有break, 程式就接著執行. 所以接著執行了a++, b++.

所以最後結果是a=2, b=1.

下面程式段的輸出結果是??為什麼??c語言

12樓:楊兵

a=100;

while(a>120); //請注意這裡有沒有bai「;」a=a+1;

printf(″%d″,a);

如果有du的「;」話,zhi答案就是101,因dao為while迴圈的是空回語句答,a=a+1;是下一條語句,一定會執行的。

如果沒有「;」的話,答案就是100,因為while的迴圈語句是a=a+1;,當不滿足判定條件a>120時,不執行a=a+1;,所以a的值不變,仍為100

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

13樓:polaris北斗

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

14樓:沃仁鹿雀

你的第乙個小程式有一點小問題,你多打了個'}'.第一題a=4,b=5,這道題的目的就是統計1~9之間能被2整除的數的個數(2.4.

6.8),和不能被2整除的數的個數(1.3.

5.7.9),第二道題的值為91,第二道題的目地是統計1~49中既能被3整除,又能被5整除的數(15.

30.45)又因為s初值為1.所以最後值為91

c語言:以下程式的輸出結果

15樓:郝在益

第一題:

第二題:

第三題:

第四題:

第五題:

ps:寫程式要注意格式,而且你打的標點符號都有好多錯誤的。

16樓:匿名使用者

第一道題:611

15第二道 題:

1020304050678910

第三題:

10 10 10

10 10 10

第四題:

48第五題:

5,6,7

13,6,19

c語言中,以下程式的輸出結果是什麼?

17樓:888愚公

6 15

這是我一步步想出來的。這題是考查對變數作用域的!

首先,main 函式中的d 就是int d = 1的這個d .所以printf ( "%d\n" , fun ( a + fun ( d ) ) ) ;

相當於 printf("%d\n", fun(a + fun(1))) ;

這樣子就呼叫了fun(1) ;

在fun函式中的d則是static int d = 5這個d,因為這個d是在函式內部,優先於int d = 1 ;的這個全域性變數。而且這個d(fun中的)是static型的,即靜態型的,退出fun之後,他的值會保留到下次再呼叫這個函式時!

c語言:下列程式執行後的輸出結果是-1為什麼?

18樓:

36 輸出:-1

x=0xffff 如果用十六進製制表示的話,數前面要加0x以表示是十六進製制。

ffff用二進位制表示就是16個1,1111111111111111,轉換成十進位制就是2^16-1,即65535。因為int型資料範圍是+32767~-32768,二進位制在計算機中表示時,第一位是符號位(這些知識如果學了原碼、補碼、反碼就會了解了),65535超了範圍,第一位變成了符號位,1代表負數,所以變成了-1

x--是x先計算,再減一,所以先輸出-1,x的值再減一,變成-2.

37 a case後面不能是實型

b a是整形,case後面是實型

d swith()括號裡面不能是表示式

c語言 閱讀以下程式,當輸入資料的形式為 25,13,10 正確的輸出結果 為 (d) 。 為什麼不是a?

19樓:匿名使用者

先說一點需要的知識

scanf:

① 遇空格、「回車」、「跳格」鍵,結束當前輸入② 遇寬度結束,結束當前輸入

③ 遇非法輸入,結束所有輸入

scanf的返回值表示輸入成功的數的個數,若遇到輸入意外返回eof你的這個程式,輸入逗號是遇到非法字元,scanf結束所有輸入同時返回1(因為第乙個值是正確的)

也就是說

如果

printf("%d",ret);

如果輸入的是

25,13,10

則程式會列印1,x的值是輸入的第乙個數25,但y z卻是申請空間時的隨機數,所以最後的printf("x+y+z=%d",x+y+z);輸出是不確定的

20樓:匿名使用者

23 52 12

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

輸出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退出...

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

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

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...