一道C語言選擇判斷題,希望能給出詳細解答

2021-03-04 08:54:42 字數 2878 閱讀 4717

1樓:匿名使用者

a. s 是乙個陣列,雖然直接引用 s 可以視為指標,但不能修改 s 的值。

b. 同a。

c. p 指標

沒有初始化,沒有指向任何乙個陣列或者記憶體空間。不能對它的位址進行任何寫操作。

d. 因為 p 指向 s 了,所以可以 strcpy 了。

2樓:樹皚

a:宣告裡將s聲為字串麵量,字串麵量是不可以改變的,所以s=p錯

c:p只是被申明了指標空間,沒有存放「abc」的空間,它的更改就是d

3樓:匿名使用者

a:陣列的位址是乙個常量,不能改變,所以s=p是錯的

c:指標最好初始化,不然就會遇到c中沒有給指標申請記憶體空間就賦值的錯誤。

一道c語言選擇題,希望高手給出詳細解答!

4樓:匿名使用者

我覺得輸出的是「89」這個字串。

5樓:匿名使用者

這根本就個錯的程式,char*s="aa89gggh",得到的s指向唯讀資料;應該是char s="aa89gggh";

執行結果見樓上。

6樓:

s是字串常量,存放在字串常量區,是不可修改的!

有一道c語言的選擇題,希望能幫忙給出詳細解答,謝謝了

7樓:匿名使用者

struct s

;static struct s a[3]=;

static struct s *ptr;

ptr=&a[1];

第5句相當於

static struct s a[3]=,,};

然後看答案

a.ptr->i++

ptr指向a[1]然後指向屬性i 此時i=2執行完這句時候才執行i++

b.ptr++->i

結構體中沒有i這個屬性

c.*ptr->i

->的優先權大於*指標 所以相當於*(ptr->i)而i屬性是int 不能用*指標去修飾

d.++ptr->i

->的優先權大於++所以相當於++(ptr->i)而使用這句之前使用了i+=1

所以此時a[1]的i=3

所以正確答案是d

8樓:匿名使用者

da = 2

b = 2

c 估計語法應該過不到

9樓:匿名使用者

d.++ptr->i

一道c語言的選擇題 希望高手給出詳細解答

10樓:is誰在看

字元常量是用單引號括起來的單個字元構成。有兩種表示方法:一種是用該字元的圖形符號,如'b' ,'y','*'。

另外還可以用字元的ascii碼表示,即用反斜符(\)開頭,後跟字元的ascii碼,這種方法也稱為轉義序列表示法

11樓:匿名使用者

應該是這樣的:

b中的\ 後面最多只能有3個八進位製數,而它出現了4個。。

一道簡單的c語言題目,但希望能給詳細點的答案

12樓:匿名使用者

scanf(「格式」,位址

),對於變數要加上位址運算子&才能得位址。

printf("格式專",變數)不用位址運算子屬&。

這裡改過後還是沒法得到c1,c2值,因為還有多個scanf同時運用 會產生鍵盤緩衝區所以,多次使用時,scanf得到的可能是上次鍵盤輸入緩衝區中的東西。

所以,為保證正確,多次使用scanf時,應該在每次scanf之前加上一句: fflush(stdin); 即可。

還有就是不要用八進輸入會很容易出錯 還是把%o改成%u輸入吧 輸出時再用%o

這樣就不會出錯了

還有 unsigned int一般寫為unsigned 。

還有多看書,對照下例題就不犯亂那麼基本的錯了 如函式scanf printf的用法都用錯

13樓:匿名使用者

錯誤1... scanf是輸入bai函du數 ,你上面的輸入函式都沒有加地zhi址表識符,

正確輸入應該dao是這樣專的,如scanf("%d",&a);,你上面的輸入函屬數中的a沒有加&符號,&符號是取位址的意思,就是說輸入乙個數,把他放在a的位址裡,書寫格式就是&a

錯誤2... printf是輸出函式,輸出函式是要求寫函式的名字,而不是函式的位址,你寫的是函式位址了,正確的應該這樣寫,如printf("%d",a);他的意思是把a變數的值,按整數輸出,我剛才在電腦上實驗了一下,按照你的寫法printf("%d",&a)的確也能輸出結果,但是輸出的結果不是我們想要的值,他輸出了乙個數,我估計是記憶體位址...

14樓:c白菜

scanf和printf用法

都錯了應該為

scanf(「%d,%d」,&a,&b);

printf(「c1=%c,d=%c\n」,c1,c2);

15樓:匿名使用者

你的scanf("%d%d",a,d)

你的數字輸入要加位址符&

如scanf("%d%d",&a,&d)

如果你不加的話 也不會報錯 但有時候賦值的時候就會賦值錯誤 就會導致你的輸出錯誤的資訊

16樓:匿名使用者

scanf要用&a的格式。

17樓:寳貝謙

scanf():要位址運算子&;

printf():卟要位址運算子。

18樓:匿名使用者

printf("")列印格式錯誤!!!

一道簡單的c語言題目,但希望能給詳細點的答案

錯誤1.scanf是輸入bai函du數 你上面的輸入函式都沒有加地zhi址表識符,正確輸入應該dao是這樣專的,如scanf d a 你上面的輸入函屬數中的a沒有加 符號,符號是取位址的意思,就是說輸入乙個數,把他放在a的位址裡,書寫格式就是 a 錯誤2.printf是輸出函式,輸出函式是要求寫函式...

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

沒有看到有語法錯誤,因為do while語句中間如果只有一句話時,可以省略那個 求解一道c語言選擇題 解釋一下怎麼做出來的 從題目可以看出第二個引數是乙個指標陣列 因為d選項不是乙個陣列 而a,b均為陣列 且可以作為指標陣列使用 c是指標 可以是陣列也可以是變數 唯獨d既不是指標也不是陣列 fun第...

一道數學題 希望高手能給出演算法思想

42瓶。x int x 5 50 編了個程式用窮舉法解這個方程得42,42 42 5 42 8 50看了其他人得,發現確實忽略了換得酒還能再換這個情況,於是我改了下演算法 先賦值為一次性買得的瓶數i 賦值為第一次得到的空瓶數 加上y的瓶數最多能換的瓶數,x y 5 賦值為又一次獲得的瓶數,y y 5...