c語言一道選擇 char cabc int i

2022-02-26 01:40:55 字數 2019 閱讀 6419

1樓:及訊新**

核心解釋是:i++的使用規則是 ,先使用 i的值再對i進行++運算

執行的過程為:

第一次迴圈,i=0,執行do裡面的空語句,c[0]='a',i++,while的判斷成立

第二次迴圈,i=1,執行do裡面的空語句,c[1]='b',i++,while的判斷成立

第三次迴圈,i=2,執行do裡面的空語句,c[2]='c',i++,while的判斷成立

第四次迴圈,i=3,執行do裡面的空語句,c[3]=='\0',i++,while的判斷不成立,跳出迴圈,此時i=4,故輸出i-1的結果是3。

本題程式的關鍵在於i++的使用規則,先使用i的值,進行c[i]的運算,再進行i++的運算。下面是用vc6.0跑一遍該程式的結果,結果證明答案是d且論證過程沒錯。

2樓:

迴圈過程為:

i c[i]

0 a

1 b

2 c

3 \0

此時結束迴圈 ,因為是i++ ,故是先使用 i 再遞加 i ,3再加1為4

輸出i-1為 3,

3樓:我是達浪啊

c語言一道選擇 char c="abc";int i=0;

以下程式段的輸出結果為().charc="abc";inti=0;dowhile

char c[]=「abc」; int i=0; do; while(c[i++]!='\0');

4樓:匿名使用者

do-while就是先執行一遍do之後的指令,然後判斷while的條件,符合則迴圈至do的位置繼續執行。i++就是i=i+1的意思

5樓:嘎嘎的壞壞先生

你do後面跟了:就沒有執行了,不執行任何操作;

下一步是執行在while裡的判斷。

i++表示先執行判斷再執行i=i+1,

c[3]='/0',所以i=3這一次判斷時跳出迴圈,並且再執行一次i=i+1,結果是4

最後輸出i-1,就是3啦

char s[ ]="abc";int i;for(i=0;i<3;i++)printf("%s",&s[i]);執行結果是什麼?為什麼?原理!

6樓:匿名使用者

abcbcc,s陣列實際上是'a','b','c','\0',而列印時%s是列印字串,迴圈過程中&s[i]依次從'a','b','c'為字串開始,以'\0'為結束,所以依次列印出字串"abc","bc","c"

7樓:匿名使用者

編譯出錯,char型陣列,陣列元素必須是字元型,而你模abc是字串,必須寫成「a,b,c」用豆號隔開,如改過來,結果是abc不改變。

8樓:匿名使用者

結果是abc bc c

%s是從起始位置輸出字元直到遇到\0為止

i=0 時 abc

i=1 bc

i=2 c

9樓:匿名使用者

這個陣列好像不對吧,你沒有常量表示式。main()

main() { char p[][4]={"abc","def","ghi"}; int i; for(i=0;i<3;i++) puts(p[i]); }

10樓:匿名使用者

char p[3]=; 這種定義是錯誤的

char p[4]=; 這種定義相當於

char* p[3]=;

那麼: p[1]="abc\0" p[2]="def\0", p[3]="ghi\0"

c語言,int a[]="string"可以是對的,而char a[]={0,1,2}卻是錯的,把

11樓:墨明棋妙

試試這樣不就是可以了,char a=; 0,1,2是數字,不是字元型

一道c語言題,解釋一下,求解一道C語言選擇題解釋一下怎麼做出來的

結果是8 define n 2 define m n 1 define mun m 1 m 2巨集定義的帶入 是直接帶入 也就是如下 mun m 1 m 2 n 1 1 n 1 2 後一個n 1沒有括號,這是規則。2 1 1 2 1 2 8 d 列印結果是8所以 define 巨集定義 define...

一道c語言指標問題,一道C語言的指標問題

int a 10 是指標陣列,每個a i 都是指向 int型的指標 比如 int abc a 0 abc int a 10 是陣列指標,a 是指向一個有10個元素的int型陣列 比如int abc 10 a abc int a 10 a是陣列,a裡存放的是10個int型指標 int a 10 a是指...

誰能幫我解決一道C語言題目C語言一道題目,誰能幫我解得

include include include include define eps 1e 6 用於控制商的精確度 main else printf 回答錯誤 n break case 2 for i 1 i 10 i while c 0 printf d.d d n i,a,b scanf d d...