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

2021-04-02 12:47:03 字數 1726 閱讀 3690

1樓:匿名使用者

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

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

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

2樓:c白菜

scanf和printf用法

都錯了應該為

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

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

3樓:匿名使用者

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

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

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

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

4樓:匿名使用者

scanf要用&a的格式。

5樓:寳貝謙

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

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

6樓:匿名使用者

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

有一道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樓:匿名使用者

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

11樓:匿名使用者

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

執行結果見樓上。

12樓:

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

一道簡單的c語言題目,一道簡單的C語言題目

include class time time hour 0 minute 0 second 0 time const time a int gethour int getminute int getsecond void print time time int main 一道c語言題目 inclu...

一道c語言題目,一道C語言題目

include include 標頭檔案 include 標頭檔案 int main int a 111 b 100 c 111 n,m,k 0,t,l 0,s scanf d d n,m srand unsigned time null srand 就是給rand 提供種子 for int i 0...

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

a.s 是乙個陣列,雖然直接引用 s 可以視為指標,但不能修改 s 的值。b.同a。c.p 指標 沒有初始化,沒有指向任何乙個陣列或者記憶體空間。不能對它的位址進行任何寫操作。d.因為 p 指向 s 了,所以可以 strcpy 了。a 宣告裡將s聲為字串麵量,字串麵量是不可以改變的,所以s p錯 c...