如圖,C語言的問題,看講解也沒明白

2022-04-17 16:20:14 字數 2826 閱讀 7858

1樓:匿名使用者

s首先指向字串"12134"

//這是6個字元(序號從0~5,包括最後一個空字元,注意這些都是數字字元,而不是數字)

while( ) //從字元2開始判斷,也就是直到空字元(while條件為假)

//迴圈體的作用從第二個數字開始相加,一直加到空字元;如果陣列序號是偶數,則將其數字+1,否則按原來的數字相加:

a=0 k=0

while迴圈

第一次:

判斷『2』 // 不是空字元,可以執行迴圈體

'2'的序號k為1,所以a=a+2; //數字2是由'2'-'0'得來的,是ascii碼相減的結果

結果 :a=2 k=1

第二次:

判斷『1』 // 不是空字元,可以執行迴圈體

'1'的序號k是2,所以a=a+1+1;

結果 :a=4 k=2

第三次:

判斷『3』 // 不是空字元,可以執行迴圈體

'1'的序號k是3,所以a=a+3;

結果 :a=7 k=3

第四次:

判斷『4』 // 不是空字元,可以執行迴圈體

'1'的序號k是3,所以a=a+4+1;

結果 :a=12 k=4

第五次:

判斷『\0』 // 空字元,跳出迴圈體

結果 :a=12 k=4

2樓:這名誰敢和我重

#include

main()

a = a +(s[k]-'0'); // 對應奇數位(1,3位)不變,加上之前a的值

} printf(" k = %d a = %d\n",k, a); //列印k和a}

3樓:回憶在上輩子

是**不懂呢

只要跟著它的步驟算下去就好了

如果沒有這個耐心可以在迴圈中新增printf函式列印資料加深理解當然如果你還是不明白的話

如果你肯支付寶給我3元紅包我可以詳細給你講解哦^_^

c語言 如圖 不明白 求講解答案怎麼來的

4樓:匿名使用者

這是一個結構體陣列,裡面的三個元素為結構體變數,這裡的2是第二個元素裡的成員i,元素索引值為1,所以a[1].i

c語言的一些問題,研究了幾個小時也沒明白。求指導。

5樓:匿名使用者

多處scanf 語法錯誤。

應為scanf("%d", &i);

一個c語言的問題,我看了好長時間都看不懂,結果是(1)166(2)266 麻煩給詳細解釋下

6樓:匿名使用者

這**考察指標和變數的作用域 記不太清楚了 大致情況是:

p=&b 說明p指向回b的儲存空間,而

答且p、b統一,就是一個地址,兩個名字。一個值變了,另一個也變。

然後pp函式形參4和2

*p=*b+c即p指向的地址賦值為*b也就是2 ,又因為c=4所以*p=6 同時*b=6

a=*p-c 也就是2

(2)輸出a=2 *b=6 *p=6

因為引用賦值 所以值不會變

(1)輸出b=6 *p=6

而a是整形,作用域不包括pp函式 所以值是不變的 a=1注意:雖然pp和main都有變數a但是兩者不同

7樓:

1,先執行「 pp(a+c,&b);」輸出一個結果,printf("(2)%d%d%dn",a,*b,*p);條件格式輸出,

顯然a=*p-c,即a=*p-4.

其中*p=*b+c,即2+4=6,

所以a=6-4=2,

*b=...

貌似不對版,建議自己除錯一權

下,看看。

8樓:匿名使用者

#include

pp(int a,int *b);

main()

pp(int a,int *b)

上面是du改寫的zhi,也是

p=&b;這行去掉的效果

dao內

希望對你有幫助容

9樓:90後小白

很簡單先算函式內的

*p=b+c 等價*p =2+4=6

a=*p-c=6-4=2

輸出2,6,6

主函式輸出

1,6,6

b傳送的是地址

10樓:匿名使用者

是先輸出(2) 266

再輸出(1) 166 吧...

c語言問題 24題 希望可以詳細講解下

11樓:尋秦記記

如**的標註,a、b選項就是最常見的函式呼叫方式,c、d選項代表的是兩種不同的使用方式,c代表的是函式指標(指向函式的指標),與a等價,d代表的是指標函式(返回指標的函式,其返回值是某種型別的指標),建議看看c語言教程,好好琢磨指標函式和函式指標的區別

12樓:匿名使用者

當然錯誤的是 d,因為函式指標 f 要求函式的返回值是 int,而不是指標 int *

a、b 和 c 在作用上都是相等的

C語言的問題,C語言問題。。。

呵呵,除了第三題,其他都不容易。有空的編吧,我看著 如果你真正掌握了c語言,其實也不是很難 c語言問題。double 在輸入 輸出時,要使用 lf 格式符。scanf lf lf f1,f2 include int main else for i lower i upper 2 i 2 return...

C語言的問題,C語言的問題

p a sizeof a sizeof int 1 這句把陣列a最後一個元素的地址賦給指標p 然後利用迴圈讓指標p不斷地前移,每前移一次把對應的陣列元素值加一 最後指標p移動到陣列a的前一個位置,所以 p 1 就是陣列的第一個元素,並且加過1的.所以 p 1 就是 11 1 12.以上是程式的總體思...

C語言問題,C語言報錯的問題?

printstar 返回值為void a是int變數,不能這樣賦值 這樣就好了 void printstar main 給你個呼叫函式賦值的例子int add int a,int b int main printstar 函式,返回值為void,不能賦值給int型的a 在printstar 函式裡返...