C語言題目,c語言題目

時間 2023-04-27 15:00:09

1樓:匿名使用者

3、若有兩條語句。

static char x abcde";

static char y

x存的是a,b,c,d,e,'\0'

比y多了一個\0

p2)就是將p2串到p1上去啊。

所以是abcabc

陣列名不能作為左值。

要與最近的if配對。

再分析下吧。

2樓:善初藍

static char x abcde";

static char y

x存的是a,b,c,d,e,'\0'

比y多了一個\0

p2)就是將p2串到p1上去啊。

所以是abcabc

陣列名不能作為左值。

要與最近的if配對。

再分析下吧。

3樓:匿名使用者

我對以上幾道題不懂,有幾道還是能看懂的。

c語言題目 5

4樓:匿名使用者

f=5這是一個逗號表示式,逗號表示式作為一個整體,它的值為最後一個表示式的值。

f=(,為一項,,,為另一項。

所以f=(3,4,5)的最後一個,也就是5整個表示式的值為0

5樓:網友

f是浮點型的話 就等於; 是整型的話,就等於0

6樓:鑽時封芯

一:printf("%x)的意思是,輸出結果左對齊,一共6位,小數部分佔2位,即結果為:。

二:輸出pass啊。n++是先使用再自加。

7樓:匿名使用者

第一題:執行結果【

#include

int main()

貌似是控制輸出格式的,好長時間沒接觸,不太清楚了。

第二題:題目有問題,寫的有點亂,不知道你要表達什麼效果,執行了下,結果為pass

#include

int main()}

8樓:暮雨花幽

首先說第一個問題:簡單地說%e為科學計數法輸出,在計算機上表示為:數字e+n、數字e-n(10的n次方或負n次方)。

至於%與e之間的內容為對輸出的控制。此處:-6.

2 -代表左對齊,6代表整個數字佔六個格(若佔不滿空格補充代表小數點後保留兩位。

所以結果為:

第二個問題:default語句預設在所有case之後執行(前提是沒有case中的條件符合輸入值)

另外case與if的區別就是一旦輸入值滿足了一個case的條件,在執行完這個case以後,會自動執行下一個case中語句(需要手動break跳出)。倒數第二行中沒有break語句,所以程式執行case『c』後直接執行case『d』

最後說明一點case 'a':case 'a':case 'b'=printf("good");break;

由於剛才說的特點,case『a』後面沒有任何語句,所以一旦滿足了case『a』後,程式會自動往下進行,執行case 'a',依次類推,直到遇到break。所以以上語句等價於。

case『a』:printf("good");break;

case『a』:printf("good");break;

case『b':printf("good");break;

結果:passwarn

c語言 題目

9樓:聽不清啊

答案是選d的話,說明你用的是16位的編譯器,每個int佔2個位元組。

因為p的值是194h,所以p+9=194h+2*9h=194h+12h=1a6h

上面以h結尾表示是16進位制數。

10樓:匿名使用者

此處p值為&a[0],而p+9即&a[9]

已知&a[0]值用16進製表示為194,那麼&a[9]值用16進製表示即為a[0]地址再偏移9個sizeof(int)個位元組。

此處題目ms是將int做2位元組處理的,所以偏移18個位元組,16進製表示也就是12,也就是194h+12h==1a6h

11樓:匿名使用者

int型資料在不同的編譯系統所佔的位元組數不同,我想你的編譯系統所給int型資料的位元組數為2個。如果p列印出為194,則p+9則應該為以p為開端往後偏移9個單位容量的數值,由於你這個陣列是int型,所以單位容量為2位元組,9*2=18,即194+18,記住輸出要求為%x,即十六進位制,所以這是十六進位制的加法,結果為1a6

12樓:召走刀文

這道題選d的前提是sizeof(int)等於2。也就是int型的大小為2位元組。如果是4位元組的話,應該是1b8

第一個列印,所名陣列a的首地址是0x194。

第二個列印的是首地址向後偏移9次,因為是int型的,所以每次偏移int型的位元組數。如果int型的大小為2位元組則,列印的就是0x194+9*2,十六進位制就是0x1a6。

13樓:匿名使用者

這個輸出,肯定是指標值。不是指標指向的值。因為陣列是int型的。int的長度是4.所以指標指向下一個單元的值要加4.

第二個輸出,做了個+9的操作。那麼用十進位制運輸就是比第一大了4×9=36的。轉換為16禁止再加上194.我算怎麼沒有符合的呢??

14樓:匿名使用者

結果是-1。

char x=0xddff; 最前面0x表示後面的數是十六進位制。ddff是兩個位元組的一個數。而x是字元型別char,只能儲存一個位元組。

按照微機原理,x儲存了低位的ff,而最後列印出來的是%d,就是將x轉化為整數型別,因為整數型別是兩位元組,所以x=,最後輸出-1

ff 到 -1 怎麼算。

應該是ffff到-1怎麼算。

四位16進位制數的無符號的範圍是:0——65536有符號的範圍是:-32768--32767計算機儲存資料時是採用二進位制(可以跟16進位制轉化)的補碼儲存的ffff(1111111111111111)就是-1的補碼為什麼?

1)明確:正數的原碼、反碼、補碼是其本身,例如:1是0000000000000001.

負數的原碼是正數的原碼最高位符號位變為1,如-1是1000000000000001.負數的反碼是正數的原碼按位取反,如-1就是1111111111111110.負數的補碼是負數的反碼加1,如-1就是1111111111111111(2)

15樓:測繪地理資訊

輸出結果是-1。解釋如下:

0xddff是一個十六進位制數的整數,把它賦值給一個字元型變數,會造成資料丟失。字元型變數佔一個位元組,那麼擷取的就是低位一個位元組的資料,也就是十六進位制的ff,用二進位制表示就是11111111,而二進位制的11111111轉換成十進位制的整數,就是-1。所以輸出結果是-1。

16樓:網友

答案:c. break 能結束迴圈,而continue只能結束本次迴圈。

while(1)

17樓:匿名使用者

c啊!書上肯定有,自己看看吧。

18樓:暢景彰

答案應該是c

因為陣列a賦值的是一個字串,所以除了xyz3個字元元素以外最後還有一個表示字串結束的\0符號。

而陣列b僅僅是一個字元的陣列,所以只有xyz3個元素。

所以a的長度是4,b的長度是3,所以a陣列的長度大於b陣列。

19樓:若冰炎

答案是c,原因:a陣列為字串陣列型別,系統預設其以'\0'結束的,故佔4位元組,而b陣列只佔3位元組。

20樓:帳號已登出

c a是字串,b是個字元陣列,字串自動會在結尾處加個結尾符'\0',字元陣列是不加的 ,所以這題前面比後面長度大了一個 也就是多了個結尾符。

21樓:匿名使用者

a.陣列訪問越界,定義的陣列長度為10,索引從0開始計算,最大隻能是9

c.和a類似,pt的地址指向陣列x的第一個元素,則pt+10指向x陣列的第11個 元素,而x只有10個元素,*(pt+10)訪問的x的第11個元素,所以越界了。

是x陣列的第4個元素的地址值,而不是資料為 x陣列的第一個元素的地址值,x+3即為x陣列的第4個元素的地址值,所以*(x+3)訪問的是x陣列的第4個元素的值。

22樓:哥不帥你砍我

x是一個引用,指向陣列的首地址。

將引用x賦值給pt之後,pt也指向陣列的首地址a)x陣列的長度為10從int[0]~int[9]b)中x+3為元素第四個元素的地址 操作*(x+3)取地址內容即int[3] 正確。

c)pt+10 錯誤原因同a 陣列越界。

d)pt+3屬於對地址的操作,不是陣列元素的應用。

23樓:匿名使用者

a.不存在x[10],最多隻有x[0],所以錯c.同上,越界了,最多隻有pt+9,也錯。

是x[3]的地址,*(pt+3)才是x[3],還是錯所以,b

c語言題目

24樓:暢景彰

答案是a,*p的值是字元'p',str[0]的值也是字元'p'

b的話,str只是一個指標常量,p是指標變數c的話,str的長度是20,p指向的字串只是"program",長度只是7+1

d的話,str陣列的內容是20個字元(program後面的字元是空字元),而p指標的內容是str[0]的地址值而已。

25樓:匿名使用者

正確的是:

a:因為*p和str[0]都是『p』

錯誤的是:b:一個是指向字元的指標變數,另一個是常量。

d:str存放的是陣列,包括起始地址和長度資訊;p是指標變數存放的是機器的字長,32位機器就是4個位元組,64位機器就是8個位元組。

求c語言題目,求C語言題目

c語言經典100題 程式1 題目 有1,2,3,4個數字,能組成多少個互不相同且無重複數字的三位數 都是多少 1.程式分析 可填在百位,十位,個位的數字都是1,2,3,4.組成所有的排列後再去 掉不滿足條件的排列.2.程式源 main 程式2 題目 企業發放的獎金根據利潤提成.利潤 i 低於或等於1...

幾道C語言題目,一道c語言題目

1.為了方便敘述,現將程式的沒一行進行編號。注 語句 for i 0 i void main 注 n j n i 1 等效於n j n j n i 1 1 4 比較簡單,就不說了。具體說說 5 7 是怎麼執行的。具體過程如下 首先,對 i 進行賦值,i 0時,j 分別等於 0,1,2.把 i,j 的...

求詳解c語言題目,求詳解c語言題目

7.簡單,c 8。題目不全 9.b,sizeof不是一個函式,是一個關鍵字。在編譯器會為常量 10.c 2b即2 16 0 65535 11,d,double型別。c語言有隱式型別提升char short int float double,對於型別有疑惑的問題,最簡單的驗證方法是寫一段 用sizeo...