c語言簡單題哦,幾道簡單的C語言題目

2023-04-13 21:35:03 字數 5153 閱讀 3069

1樓:匿名使用者

樓上的亂講!第一題你答對了。

第2,3題全打錯了(我是說2樓的)

答案幫你編譯執行過,肯定不會錯。

結果:2理由:

#00 int m=13;

#01 int fun(int x,int y) ##

#07 main( )

##00的m是全域性變數,但在函式fun(int x,int y)中由於定於了區域性變數#

所以,在fun函式中m是3而不是13

程式由#07處進入,到#10處引用fun(7,5),跳到#01.在#04處返回7*5-3即32,返回後回到#10,執行32/m.這裡m是全域性變數,所以是32/13,又因是int型,且列印符號為%d,所以結果不是2.

4615...而是取整變成2.

所以結果為2

結果:45理由:

#00 main()

#01 ,i=0,j=0;

#03 while(i++<7)

#04 if(p[i]%2)

#05 j+=p[i]; j=j+p[i];

#06 printf("%d",j);

#程式從#00進入,因i被定義為0,進入while迴圈後,(i++是先用i的值後,i再加一)

變數: i++ p[i] p[i]%2 if(p[i]%2) j

值: 0 12 0 false 0

1 13 1 true 0+13

2 14 0 false 13

3 15 1 true 13+15

4 16 0 false 28

5 17 1 true 28+17

6 18 0 false 45

7 (i<7)條件不滿足 跳出while

列印j的值,即是45

結果:18理由:

##define s(x) 1+4*x*x

#01 main()

#本題目考察對引數巨集的理解!(切忌,巨集就是字串替換)

即根據#00處定義,凡出現s(x),由1+4*x*x替換。

所以,#04處s(i+j),不是1+4*(i+j)*(i+j)得1+4*5*5=101

而是1+4*i+j*i+j 得1+4*2+3*2+3=18

所以本題輸出18

2樓:匿名使用者

int m=13;

int fun(int x,int y)

/*就是fun(x,y)=x*y-3嘛*/main( )

/*所以這裡列印的是fun(7,5)/13=2,是整型數作結果*/main() i=0,j=0;

while(i++<7) if(p[i]%2) j+=p[i]; 就是從i=0開始到i=6結束,對陣列p中偶數項進行相加,就是從p[0]加到p[4]o為止,得數j=11+13+15=39*/

printf("%d",j);

(3)fdjg

#define s(x) 1+4*x*x

main()

3樓:匿名使用者

上第乙個m全域性變數,第二個區域性變數只在fun()裡有效。

(5*7-3)/13取整形得2;

(2) 可以寫成 main() i=0,j=0;

while(i<7)

printf("%d",j);

結果是45.

把x換成i+j,直接換。

幾道簡單的c語言題目

這個c語言題怎麼做?

4樓:上海長英

a. char ch='\x2a' 錯誤。

\x2a 是4個字元,只能用乙個字元 進行初始化賦值。

b. char ch="c" 錯誤。

字元只能用單引號不能用雙引號,雙引號 是字串,編譯器自動在 後面加乙個空字元'\0'

c. char ch=65; 是正確的。

因為字元 對應的是其ascii 碼值 ,十進位制的65對應的是字元 『a'

d. char ch=null; 是正確的。

在c語言編譯器中null被巨集定義為0(#define null 0)0在ascii碼表中 對應的字元 就是'\0'

希望我的對你有所幫助,很高興和你一起討論和學習c語言。

5樓:匿名使用者

b,字元變數不能用字串(雙引號常量)初始化。

6樓:_i快樂每一天

b,字元不能用雙引號初始化;

a的話其實是可以這樣寫的,但有的編譯器只認\x小寫的x,這種寫法是轉義字元,其後跟的是十六進位製數,代表ch的ascii碼,比如ch='\x2a' 就是42,代表'*'

c同理,因為字元其實它的值都是用ascii碼儲存的,比如ch='a',用int強制型別轉換後的輸出就是65;

c語言題.

7樓:洋桂花風娟

這題選d在c語言中實數。

也就是浮點數,有兩種表示形式:

1、十進位制形式,它是由數字和小數點組成,注意:必須有小數點;

2、指數形式,注意:e或者e之前必須有數字,且。

e或者e之後必須是整數。

根據這兩個規則。d

既沒有小數點。

也不是指數形式。所以。選d

乙個簡單的c語言題

8樓:匿名使用者

為什麼需要編碼?因為計算機世界只有0和1之分,而現實世界,我們常用的是十進位制。為了讓計算機和現實世界聯絡起來,編碼便誕生了。

計算機中,採用位元組來儲存資訊,乙個位元組有8個二進位制位組成。

首先需要知道,編碼方式有很多種,如ascii編碼,bcd編碼等等。最後被人們廣泛接受和使用的,才是最經典的。你說的bcd碼用的不多,至少我是這麼認為的。

說說bcd編碼規則,它是用4位二進位製數來表示乙個十進位製數。如,41的bcd碼為 0100 0001,這個好理解吧!0100表示4,0001表示1.

而原碼、反碼和補碼是計算機世界採用的編碼方式,現在bcd碼在計算機中用的很少。計算機實際存放的是資料的補碼,原碼和反碼是為了讓人們好理解,弄出來的概念。

為什麼是這樣的呢,先看三個規則:

1.所謂原碼就是二進位制定點表示法,即最高位為號符位,「0」表示正,「1」表示負,其餘位表示數值的大小。

2.反碼表示法規定:正數的反碼與其原碼相同;負數的反碼是對其原碼逐位取反,但符號位除外。

3、補碼表示法規定:正數的補碼與其原碼相同;負數的補碼是在其反碼的末位加1。

41 = 32+8+1,因為是正數,所以最高位為0,這樣得出來的是原碼。反碼呢,按照規則,也是這麼多,好理解吧!補碼就稍微麻煩點,如果原數是乙個正數,則補碼和原碼相同,如果原數是乙個負數,則結果是其反碼的最後一位加1.

9樓:密碼比較簡單

說不清楚,自己去看本叫數位電路的書。

10樓:星桂花類淑

scanf裡的是%2d%f接受模式。

所以最先輸入的兩個字元(即87)被擷取。

送給變數a然後是%f

將緊跟輸入的乙個字元(即6)擷取送給變數bfloat型預設保留7位有效數字。

所以b是。

一道簡單的c語言題

11樓:匿名使用者

typedef 型別 型別名;只要知道型別是什麼,就知道答案了,型別有整形,浮點型,字元型以及指標,結構體,共用體。題中的型別是int *,也就是整形的指標,那麼integer就代表整形的指標,由integer定義的變數就叫int的指標變數(b對。a錯),因為q是integer *定義的,也就是整形指標的指標,故c錯,integer 代表的是int *(整形的指標),d錯。

12樓:匿名使用者

typedef int *integer 可以看成 typedef int* integer;

假如這樣定義 int* p;

那麼p就是基型別為int的指標變數。

typedef的作用是定義乙個別名。

typedef a b 那麼以後b就是a的別名 可以當成a使用。

c語言簡單題幫忙看看?

13樓:匿名使用者

a.不可以以數字開頭,否則編譯程式區分數字和識別符號發生困難。

b.底線開頭和使用是允許的。

語言區分大小寫,因此int與int不同,int是保留字,int可以用。

d.這個單詞並非保留字,因此可用。

14樓:月光下的

您好,很高興您的問題。

c語言規定,識別符號只能由數字、字母和下劃線組成,且第乙個字元不能為數字,也就是只能是字元或者下劃線,所以這個題目中a是不符合條件的,故答案選a

15樓:網友

c語言中,識別符號只能以字母、下劃線和$開頭,後面可以跟字母、陣列、下劃線和$符號的組合。此外,識別符號不能是程式語言的保留關鍵字。

所以選項a錯誤,不能以陣列開頭作為識別符號。

選項c中int不同於關鍵字int,因為c語言中是區分大小寫的,因此int可以作為識別符號。

16樓:豆豆在路上吃飯

識別符號命名規則。

1、 識別符號由26個英文本元大小寫(a~za~z)、數字(0~9)、下劃線(_)和美元符號($)組成。

2、 不能以數字開頭,不能是關鍵字。

3、 嚴格區分大小寫。

4、 識別符號的可以為任意長度。

第二點就是你的問題答案。

17樓:纜索

在c語言中,識別符號只能由字元,下劃線開頭。

不能以c語言的關鍵字作為識別符號。

識別符號可以包含任意多個字元,但不同的編譯器會有不同的長度限制,一般情況下,不會達到此限制。

18樓:匿名使用者

識別符號可以是大小寫字母、下劃線_和數字的有序組合,而且識別符號不能以數字開始。

19樓:方螢

開頭只能是字母或下劃線(_)

三道C語言題目,幾道簡單的C語言題目

這個是函式的巢狀呼叫,子函式sub反覆呼叫自己,由程式可知,sub 1 的值為1,當sub 2 sub 1 2 1 2,同理sub 3 sub 2 3,所以當i 5時,sub 5 sub 4 5 sub 3 4 5 sub 2 3 4 5 sub 1 2 3 4 5 所以最後輸出的是15 c語言的幾...

c語言簡單小題,乙個簡單的C語言題

樓主把 return n 這句給刪除了,這句沒有用。要返回值幹嘛,刪除了就能輸出結果了4000多。過早地遇到了return n,致使main函式執行提前結束,不會再執行printf return可以立即結束幾乎任何乙個函式,無論後面還剩下什麼語句,都不會再被執行。這裡的main 前面沒有給出返回型別...

c語言簡單習題,C語言簡單習題 auto int b 0 。。。。

auto宣告後,每次呼叫這個函式都會將這個b重定義為0 而進行stable宣告後,c將不會被改變,所以值是不同的 第一次迴圈 a 5 這個是固定的 b 0 1 1 自增運算子 c 1 3 4 返回乙個值並輸出a b c 10 第二次迴圈 a 5 b 0 1 2 在這裡重置 c 4 3 7 而它並沒有...