當前位置:編程學習大全網 - 編程語言 - 9月計算機二級《C語言》上機考題及答案

9月計算機二級《C語言》上機考題及答案

 1、以下選項中屬於C語言的數據類型是( )。

 A. 復合型

 B. 雙精度型

 C. 邏輯型

 D. 集合型

 2、以下說法中正確的是( )。

 A. C語言程序總是從第壹個的函數開始執行

 B. 在C語言程序中,要調用的函數必須在main()函數中定義

 C. C語言程序總是從main()函數開始執行

 D. C語言程序中的main()函數必須放在程序的開始部分

 3、選出下列標識符中不是合法的標識符的是( )。

 A. hot_do

 B. cat1

 C. _pri

 D. 2ab

 4、下列描述中不正確的是( )。

 A、字符型數組中可能存放字符串。

 B、可以對字符型數組進行整體輸入、輸出。

 C、可以對整型數組進行整體輸入、輸出。

 D、 不能在賦值語句中通過賦值運算符?=?對字符型數組進行整體賦值。

 5、若已定義:int a[9], *p=a;並在以後的語句中未改變p的值,不能表示a[1]地址的表達式為( )。

 A. p+1

 B. a+1

 C. a++

 D. ++p

 6、設有如下定義: int x=10,y=3,z; 則語句printf("%d\n",z=(x%y,x/y)); 的輸出結果是( )。

 A. 1

 B. 0

 C. 4

 D. 3

 7、定義如下變量和數組: int i, x[3][3]={1,2,3,4,5,6,7,8,9};則下面語句for(i=0;i<3;i++) printf("%d",x[i][2-i]); 的輸出結果是( )

 A. 1 5 9

 B. 1 4 7

 C. 3 5 7

 D. 3 6 9

 8、讀出以下語句的輸出結果是( )。

 int x=10,y=10;

 printf(?%d %d\n?,x--,--y);

 A. 10 10

 B. 9 9

 C. 9 10

 D. 10 9

 9、兩次運行下面的程序,如果從鍵盤上分別輸入6和3,則輸出結果是( )。

 if(x++>5) printf("%d",x);

 else printf("%d\n",x - -);

 A. 7和5

 B. 6和3

 C. 7和4

 D. 6和4

 10、設有如下定義:char *aa[2]={"abcd","ABCD"};則以下說法中正確的是( )。

 A)aa數組成元素的值分別是"abcd"和ABCD"

 B)aa是指針變量,它指向含有兩個數組元素的字符型壹維數組

 C)aa數組的兩個元素分別存放的是含有4個字符的壹維字符數組的`首地址

 D)aa數組的兩個元素中各自存放了字符?a?和?A?的地址

 11、以下語句的輸出結果是( )。

 int a=-1,b=4,k;

 k=(+ +a<0)&&!(b - -<=0);

 printf("%d,%d,%d\n",k,a,b);

 A. 1,0,4

 B. 1,0,3

 C. 0,0,3

 D. 0,0,4

 12、下列程序的輸出結果是( )。

 char *p1="abcd", *p2="ABCD", str[50]="xyz";

 strcpy(str+2,strcat(p1+2,p2+1));

 printf("%s",str);

 A. xyabcAB

 B. abcABz

 C. ABabcz

 D. xycdBCD

 13、執行下面的程序後,a的值是( )。

 #define SQR(X) X*X

 main( )

 { int a=10,k=2,m=1;

 a/=SQR(k+m)/SQR(k+m);

 printf("%d\n",a); }

 A. 10

 B. 1

 C. 9

 D. 0

 14、設A為存放(短)整型的壹維數組,如果A的首地址為P,那麽A中第i 個元素的地址為( )。

 A.P+i*2

 B. P+(i-1)*2

 C. P+(i-1)

 D. P+i

 15、下列程序執行後輸出的結果是( )。

 int d=1;

 fun (int p)

 { int d=5;

 d + =p + +;

 printf("%d,",d); }

 main( )

 { int a=3;

 fun(a);

 d + = a + +;

 printf("%d\n",d); }

 A. 8, 4

 B. 9, 6

 C. 9, 4

 D. 8, 5

 16、表達式:10!=9的值是( )。

 A. true

 B. 非零值

 C. 0

 D. 1

 17、若有說明: int i,j=7, *p=&i;, 則與i=j; 等價的語句是( )。

 A. i= *p;

 B. *p=*&j;

 C. i=&j;

 D. i=* *p;

 18、不能把字符串:Hello!賦給數組b的語句是( )。

 A. char b[10]={?H?,?e?,?l?,?l?,?o?,?!?};

 B. char b[10]; b="Hello!";

 C. char b[10]; strcpy(b,"Hello!");

 D.char b[10]="Hello!";

 19、在C程序中有如下語句:char *func(int x,int y); 它是( )。

 A. 對函數func的定義。

 B. 對函數func的調用。

 C.對函數func的原型說明。

 D. 不合法的。

 20、以下程序的輸出結果是( )。

 char str[15]=?hello!?;

 printf(?%d\n?,strlen(str));

 A. 15

 B. 14

 C. 7

 D. 6

 參考答案:

 1、B 2、C 3、D 4、C 5、C 6、D 7、C 8、D 9、C 10、D

 11、D 12、D 13、B 14、B 15、A 16、D 17、B 18、B 19、C 20、D

  • 上一篇:囚徒困境博弈(博弈論中的經典案例)
  • 下一篇:java 文檔註釋是註釋什麽的,不是有多行註釋了嗎?
  • copyright 2024編程學習大全網