c語言 幾道選擇題,C語言 幾道選擇題

時間 2021-08-30 10:08:09

1樓:匿名使用者

1 a2 c

3 a4 c

5 c6 d

7 c8 d

9 c10 d

11 c

12 c

15 d

2樓:匿名使用者

呵呵` 我來幫幫你

1.a2.d

3.a4.這一題要看你的c的執行環境,不同的環境出來的結果可能不同5.b6.d

7.b8.d

9.c10.d

11.b

12.c

15.c

搞定,錯了被打板了可不能怪我啊

3樓:匿名使用者

1,8/5只取商,為1,加上0.4等於1.4 a

2,a3.c 4,b ++字首,先增後用,——字尾,先用後減

5,b 6,a 7,d 8,d 9,d 10,d 11,a 12,d 15,a

4樓:喜洋洋

1、a2、b

3、a(最後一句應該是輸出a而不是d吧)

4、c5,c

6,d7,c

8,d9,c

10,這題不會

11,c

12,c

15,d

求教幾道c語言選擇題(詳細解答)!

5樓:匿名使用者

第一題:a。

解析:首先得到一個靜態陣列a,指標p指向a[0], *(p+3)+=4可寫為*(p+3)=*(p+3)+4, p+3的意思是指標移動至a[3]所在單元,*(p+3)是取值,即為9,那麼運算*(p+3)+=4得*(p+3)的最終值為13,p由於指向陣列初位置則*p為1.

第二題:b。

解析:第一全域性變數b=3,先看main函式部分,得到陣列a,從語句 b=fun(&a(1))*b處看fun函式,在這裡fun函式是個地址傳遞,main函式中把a[1]的地址傳遞給fun函式中的指標*k,在fun的語句b=*(k++)*b中,由於是k++,則先做取值運算,再做k自加,所以*(k++),*k,a[1]的值一樣,為12,則b=*(k++)*b運算後得b=24,即fun函式的返回值為24,帶回 b=fun(&a(1))*b運算得b=72(這裡要注意算式中的第二個b要用全域性變數b=3帶)。

第三題:c。

解析:同第二題先看main函式,對於語句 n=fun(x); n=fun(y); 由於是順序結構,則只要看後一句即可;語句n=fun(y)呼叫fun函式,把值y=1給x,a*=x的意思是a=a*x,即a=3,然後返回函式值至main函式,n=3

6樓:匿名使用者

第一題:選a

main()

; int *p=a; // *p=1*(p+3)+=4; // *(p+3)=9,9+4=13printf("%d,%d",*p,*(p+3)); //1,13} 第二題:選b

由於是選擇題,所以可以快速選出答案,因為其餘選項顯然太小第三體:選c

只要看n=fun(y); 就行了

幾道c語言基礎的選擇題,求解釋,謝謝。

7樓:路易五十三

1、首先我們知道巨集只是簡單的字元替換,那麼巨集num實際就等價於

(n+1+1)*n+1/2,再等價於(2+1+1)*2+1/2,然後要注意優先順序的問題,num=8,那麼迴圈就是1~8。

2、a、*p //就是a[0]

b、a[10] //這樣就越界了,陣列元素只有a[0]~a[9]

c、*a //就是a[0]

d、a[p-a] //就是a[0]

3、我們知道字元陣列是以數字0(也就是'\0')為結束標識的。p指向的是字元陣列第一個元素'h',那麼p+1指向'e',p+2指向'l',p+3指向'l',p+4指向'o',p+5指向'\0'。

3、a、p+=2,*(p++) //p指向元素1,p+=2後p指向元素3,p++:先使用再自增,則*(p++)就是3

b、p+=2,*++p //++p先自增再使用,則*++p是4

c、p+=3,*p++ //p+=3後p指向元素4

d、++*p //值為2

4、strcpy(s1,s2)將s2複製到s1並返回s1,即之後s1與s2內容是一樣的,strlen取長度值為4。

5、 a、scanf("%d%s",&p->num,p->name);

b、scanf("%d%s",&p->num,&p->name);

c、scanf("%d%s",&p.num,p.name);

d、scanf("%d%s",&p.num,&p.name);

以結構指標操作成員要用到成員運算子->,那麼c、d排除;scanf需要的是一個記憶體地址,p->num是一個整型變數,要用取地址符&;結構中成員name是一個字元陣列,p->name表示的是這個字元陣列的首地址,不需要再用取地址符。

8樓:普洛智應

15,#define num (m+1)*m/2這個巨集為

(n+1)*n+1/2

這就是為啥結果是b

16,char s[ ]="hello";

char *p=s ;

執行完上面程式段後,*(p+5) 的值為 ( ) 。

a、'o'

b、'\0' //正確答案

c、'o' 的地址

d、不確定的值

p是指向字串開頭,p+1就指向第二個字元"e",一次類推,p+5指向結束位了

15,p+=2,指標指向第三個元素

*(p++)先取指標內容後做自加,所以答案是a*(p++)

9樓:逐夢兮樂

第一題12345678選b

幾道c語言基礎的選擇題求解釋謝謝

路易五十三 1 首先我們知道巨集只是簡單的字元替換,那麼巨集num實際就等價於 n 1 1 n 1 2,再等價於 2 1 1 2 1 2,然後要注意優先順序的問題,num 8,那麼迴圈就是1 8。2 a p 就是a 0 b a 10 這樣就越界了,陣列元素只有a 0 a 9 c a 就是a 0 d ...

幾道c語言的選擇題,大家幫忙看看

1.b 比 優先順序高,所以 最後算.而y 1,左邊不管是什麼,最終結果都是1 2.b陣列名是常量,不允許改變.3.db a,b變成9,然後a a變成2.再判斷b 0,條件不成立,結束迴圈,再是b 後面的 起作用,b變成8 4.c不用多說了,b,c,d,e,f 5.cd a 1指向的是zhang的第...

c語言選擇題,C語言選擇題?

首先a,每次j的for迴圈中,s的值也都會重新歸0,但題目中的s只在i的for迴圈中歸0,在j的迴圈中是不斷累加的過程,因此a是錯的。b中,j的初始話在i中,但這樣j 0實際只會執行一次,也就是說,j的for迴圈除了第一次迴圈10次外,以後的幾次會因為直接j 10而不會有迴圈,所以b是錯的 c中,i...