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