計算機等級

當前位置 /首頁/IT認證/計算機等級/列表

2017年計算機二級c語言檢測試題

C語言能直接訪問硬體的實體地址,能進行位(bit)操作。兼有高階語言和低階語言的許多優點。下面是小編收集的計算機二級的文章" target="_blank" >計算機二級c語言選擇題,希望大家認真閱讀!

2017年計算機二級c語言檢測試題

1.

#include

main()

{ int a=1,b=3,c=5;

if (c==a+b)

printf("yesn");

else

printf("non");

}

執行結果為:no

詳見教材p89 選擇結構

詳見教材p91關係符號

詳見附錄D p378符號的優先順序

==表示判斷符號兩邊的值是否相等;=表示將符號右邊的值賦給左邊的變數

本題考點是選擇結構3種基本形式的第二種

選擇結構三種一般形式中的“語句”皆為複合語句,複合語句要用{ }括起來,只有當複合語句中只包括一條語句時可以省略{ },此題即如此,因此兩個printf操作沒有加{ }

若c==a+b成立,則執行printf("yesn");

否則(即c==a+b不成立),執行printf("non");

+的優先順序高於==,因此先算a+b,值為4, 表示式5==4不成立,因此執行printf("non");即輸出字串no

2.

#include

main()

{ int a=12, b= -34, c=56, min=0;

min=a;

if(min>b)

min=b;

if(min>c)

min=c;

printf("min=%d", min);

}

執行結果為: min=-34

詳見教材p89 選擇結構

本題考點是選擇結構3種基本形式的第一種

一共包含了兩個選擇結構(兩個if語句)

定義變數,並賦值 此時a=12, b= -34, c=56, min=0

將a中值拷貝,賦給min,覆蓋了min中的0,此時min中的值被更新為12。

若min>b成立,則執行min=b;

若min>c成立,則執行min=c;

輸出min中的值

12大於-34,第一個if語句的表示式成立,因此執行min=b; 執行後min中的.值被更新為-34.

-34小於56,第二個if語句的表示式不成立,因此不執行min=c;

最後輸出min中的值,為-34.

3.

#include

main()

{ int x=2,y= -1,z=5;

if(x  if(y<0)

z=0;

else

z=z+1;

printf(“%dn”,z);

}

執行結果為:5

遇到選擇結構,首先要明確條件表示式成立時執行哪些操作。本題中,第一個if語句,其後的複合語句沒有大括號{ },說明覆合語句中只包含一條語句,進而省略了{ }。內層的...是選擇結構的第二種基本形式,在結構上視為一條語句。因此內層的...作為第一個if語句的複合語句。

若表示式x  若y<0,則執行z=0;

否則(即y>=0),執行z=z+1;

輸出z

2>-1,表示式x  輸出z中的值為5

4.

#include

main( )

{char ch;

ch=getchar( );

switch(ch)

{case‘A’ : printf(“%c”,’A’);

case‘B’ : printf(“%c”,’B’); break;

default: printf(“%sn”,”other”);

} }

當從鍵盤輸入字母A時,執行結果為:AB

詳見教材p103,switch語句

switch(表示式)

{ case常量1 :語句1

case常量2 :語句2

┇┇ ┇

case常量n :語句n

default :語句n+1

}

其中表達式,常量1,…,常量n都為整型或字元型

case相當於給出執行程式的入口和起始位置,若找到匹配的常量,則從此處開始往下執行程式,不再匹配常量,直至遇到break或switch結束

本題過程:

首先從鍵盤接收一個字元’A’並將其放在變數ch中。

執行switch語句。Switch後面的條件表示式為ch,因此表示式的值即為字元’A’. 用字元’A’依次與下面的 case中的常量匹配。

與第1個case後的常量匹配,則從其後的語句開始往下執行程式(在執行過程中不再進行匹配。)因此先執行printf(“%c”,’A’),螢幕上輸出A;再往下繼續執行printf(“%c”,’B’),螢幕上輸出B;再繼續執行break, 此時跳出switch語句。

5.

#include

main( )

{ int a=1,b=0;

scanf(“%d”,&a);

switch(a)

{case 1: b=1;break;

case 2: b=2;break;

default : b=10;}

printf("%d ", b);

}

若鍵盤輸入5,執行結果為:10

本題過程:

首先用scanf函式為變數a賦值為5。

執行switch語句。switch後面的條件表示式為a,因此表示式的值即為5. 用5依次與下面 case中的常量匹配。沒有找到匹配的常量,因此兩個case後的語句都不執行。執行default後面的語句b=10;將10賦給變數b。

輸出變數b,結果為10