為什麼選D啊這是C語言程式選擇題

2021-05-02 22:18:53 字數 701 閱讀 4126

1樓:倒霉熊

首先 b[0]不會發生變化的。

因為在while( a[i++]!=』\0』) 後i變為1,所以b的元素從1開始變化。

a經過strcat(a,b);

變為ablmnp ,所以除第乙個外,其他的都賦值給b的相應的位置了。

2樓:

strcat(a,b);

while( a[i++]!=』\0』) b[i]=a[i];

這塊是關鍵點

strcat功能鏈結字串 執行後 a是ablmnp關鍵來了:while( a[i++]!=』\0』) b[i]=a[i];

a[i++]先做a[i]然後i再自加,b[i]=a[i] 這個時候i等於1 根據ablmnp就是b:b陣列lbnp

下一次 i=2 b陣列lblp

下一次 i=3 b陣列lblm

下一次 i=4 b陣列lblpm.....

3樓:

問題出在

while( a[i++]!=』\0』) b[i]=a[i];

a[i++] i=1了

b[1]=a[1] b[1]=b

原來 b中為 lmnp lbnp

下一次為 lblp

依次 結果為 lblmnp 結果為d

做程式得認真些!!!

這個C語言程式為什麼得不到想要的結果啊!求高手指教!在學校機房寫了一中午寫出來的老師留得作業

冷月笑星夢 下面的 輸出結果是 0 1 2 3 4 5 6 8lz主要的錯誤是 沒有跳出迴圈跟指標下標 具體看 include define maxlen 100 typedef struct sqlist int listinsert sqlist p,int i,int x int locate...

C語言問題為什麼選B過程求解大學C語言,為什麼選B,求解!

首先 是轉義字元,所以 的結果就是 其次,7s是指輸出字串佔7位,所以前方有空格。7s意思就是輸出後抄面的字串,襲 長度7 這裡如果bai7小於後du面字串長度則沒什麼意zhi義,dao還是按字串原樣輸出,如果大於後面字串,則會在字串前補空格 字串原本的雙引號是不會輸出的。所以a和c都不對,是轉義符...

c語言程式設計,這道題為什麼選B

switch語句bai內部只有遇到break才會退出du,否則會繼續執行zhi下一條語句。所以輸2的時候,dao 2 2 0,會把case 0 1 2三個條 專件都執行 case 0無輸出 case 1 2各輸出一屬個 2 4,就是兩個 6 然後遇到break退出 輸入4只執行case 2一次,輸出...