選擇題
1:下述程式執行後的輸出結果是( )。
#include
main()
{
int a[]={2,4,6,8,10};
int y=1,x,*p;
p=&a[1];
for (x=0;x<3;x++)
y+=*(p+x+;
printf("%d ",y);
}
A.17
B.18
C.19
D.20
2:C 語句“ x*=y+2 ;”還可以寫作
A.x=x*y+2;
B.x=2+y*x;
C.x=x*(y+2);
D.x=y+2*x;
3:定義巨集將兩個 float 型別變數中的資料交換,下列寫法中最好的是
A.# define jh(a,b) t=a;a=b;b=t;
B.# define jh(a,b) {float t;t=a;a=b;b=t;}
C.# define jh(a,b) a=b;b=a;
D.# define jh(a,b,t) t=a;a=b;b=t;
4:下述程式執行後的輸出結果是
#include
main()
{
int x='f';
printf("%c ",'a'+(x-'a'+1));
}
A.G
B.H
C.I
D.J
5:在某檔案中,若全域性變數與區域性變數同名,則
A.視為同一個變數
B.變數作用域不確定
C.不允許
D.允許
6:常數的書寫格式決定了常數的型別和值, 0x1011 是
A.8 進位制整型常量
B.字元常量
C.16 進位制整型常數
D.2 進位制整型常數
7:設double * p[6];則
A.p是指向double型變數的指標
B.p是double型陣列
C.p是指標陣列,其元素是指向double型變數的指標
D.p是陣列指標,指向double型陣列
8:對於do-while語句,錯誤的說法是
A.先執行迴圈體後判斷迴圈條件
B.迴圈體至少要執行一次
C.迴圈體有可能一次也不執行
D.迴圈體中可以包含若干條語句
9:求一個雙精度實數的絕對值,應該呼叫函式
10:以下敘述中不正確的是
A.在不同的函式中可以使用相同名字的變數
B.函式中的形式引數是區域性變數
C.在一個函式內定義的變數只在本函式範圍內有效
D.在一個函式內的複合語句中定義的變數在本函式範圍內有效
11:設有定義“int a=3, b,*p=&a;”,則下列語句中使 b不為3的語句是
A.b=* &a;
B.b=* p;
C.b=a;
D.b=*a;
12:下列程式的執行結果是( )
main( )
{ int a[][4]={1,3,5,7,9,11,13,15,17,19,21,23};
int (*p)[4],i=2,j=1;
p=a;
printf(″%d ″,*(*(p+i)+j));
}
A.9
B.11
C.17
D.19
13:資料-35.78在文字檔案中佔用的位元組個數是
A.4
B.5
C.6
D.8