C語言,這題解析是不是錯了,C語言,這題的解析有問題把??

2022-11-05 15:51:32 字數 1770 閱讀 4172

1樓:童之新

因為指標是*p與*s是int,因為指標p=c,即*p=c[0],那麼*(p+1)=c[1],指標之間的加減運算是根據指標的型別進行調整的,所以雖然s-p地址之間相差20,但是這兩個地址之間只相差5個地址。倘若你把*p與*s改成short或char型別,那麼答案卻變成了10或20了

2樓:洪冷鬆

028.5e-3 可以,但加上 -0xf 就組成了表示式,0xf 是16進位制常數。

0003.e5 等同 0003.0e5, 等同 3.0e5 是數值常量.

b 的 2個 數用 逗號分隔,前面是合法的16進位制數,後一個是 e 格式的常數。

3樓:匿名使用者

*p=10,*s=60

p是a[0]的地址,s是a[5]的地址

s-p=(s與p的算術差值)/sizeof(int)s-p實際上是地址s與地址p直接有多大的空間,再按照int型別的大小分,得出結果5沒毛病的

4樓:老猴子不會胖

指向同一陣列的指標之間 僅可進行 加 減 操作

結果為整形,大小為陣列個數

兄弟 書要好好看才行

5樓:聽不清啊

題目的解析是完全正確的。

c語言,這題的解析有問題把??

6樓:莊政警

注意那條件是*p!=0,而不是*p!='0' , 數值0和字元'0'不一樣,字元'0'的值是48

所以不管是"0abcdef"還是"oabcdef", 迴圈都會執行,答案是c

c語言,這題的答案是a,解析怎麼說c也是對的?

7樓:匿名使用者

是和p='\0';等價,注意是字元,有單引號的

c裡面的是\0,沒有單引號,什麼都不是

c語言,這題printf輸出是不是有問題?

8樓:匿名使用者

不需要加*,按%s格式是輸出一個字串,需要的就是一個地址啊,是字串的起始地址。如果按%c輸出,就需要加*,這是輸出一個字元。

9樓:匿名使用者

printf的%s格式只需要給出char陣列的首地址就可以完整的輸出整個字串

如果把%s換成%d就是輸出的地址

c語言,這題c答案不是也有問題?

10樓:匿名使用者

c確實是錯的。s++後面一定要+;

11樓:不__如

while迴圈又不需要加;

c語言,,巨集是什麼?? 看不懂題目,求解析題目要求,,

12樓:金色潛鳥

#define sq(x) 這裡不要漏了空格 ((x)*(x))sq(x) 是計算 x 的平方。

----------

求兩個數的最大值,巨集是 mm(a,b) 那一行。注意空格符號不要漏了。

#include"stdio.h"

#define mm(a,b) a>b?a:bvoid main( )

c語言,這一題是答案錯了嗎?

13樓:匿名使用者

答案沒錯。

else中的a是塊級變數,離開else語句塊,這個a就釋放了。

而return中的a才是靜態區域性變數a。

C語言問題,解析就採納哦,C語言問題,解析就採納哦

a 0 指向2 a 1 指向6 a 2 指向10 在不嚴謹的編譯器,對變數型別不做嚴格檢驗的話,會將int 1 和int 1 等同起來 只用於int 或char,因為是預設型別 這種編譯器實際上是將 int a 3 2 與 int a 6 等同的,嚴格的編譯器必須顯示宣告強制型別轉換的 a 1 1指...

c語言題解釋

第一道題 第一行,是你定義下面程式多要用到的變數,int是整型,也就是說只能是整數,比如2 float型別,就是小數,比如2.3等,下面的scanf是讓你輸入數值的意思,括號後面有三個字母變數,也就是說你要輸入三個數字,分別賦給a,b,c printf是輸出你剛才的數值。解答完畢。第二道題意思差不多...

c語言題目求答案解析,C語言題目,,求答案解析。

請參bai考du這zhi 篇回dao答專 屬 求一道c語言題目解答 pow 函式原型是 double pow double,double n pow 1 rate,year 這句裡year 是int 型,改為double 另外輸入函式 將 f 改為 lf 這句話的意思是 你輸入的時候要用這種形式 m...