首頁 - 網(wǎng)校 - 萬題庫 - 美好明天 - 直播 - 導(dǎo)航
您現(xiàn)在的位置: 考試吧 > 計(jì)算機(jī)等級考試 > 計(jì)算機(jī)二級考試 > C語言 > 模擬試題 > 正文

2018年9月計(jì)算機(jī)二級C語言考試章節(jié)習(xí)題及答案(4)

來源:考試吧 2018-08-13 17:37:45 要考試,上考試吧! 萬題庫
“2018年9月計(jì)算機(jī)二級C語言考試章節(jié)習(xí)題及答案(4)”供考生參考。更多計(jì)算機(jī)等級考試模擬試題等信息請?jiān)L問考試吧計(jì)算機(jī)等級考試網(wǎng)。
  點(diǎn)擊查看:2018年9月計(jì)算機(jī)二級C語言考試章節(jié)習(xí)題及答案匯總

  第2章 C程序設(shè)計(jì)的初步知識

  2.1 簡單C語言程序的構(gòu)成和格式

  1[單選題] 下面程序的輸出結(jié)果是(  )。

  #include

  main()

  {

  int a[] = {1,2,3,4,5,6,7,10},*p;

  p =a;

  printf("%d\n",*p+8);

  }

  A.0

  B.1

  C.10

  D.9

  參考答案:D

  參考解析:“*”號的優(yōu)先級比“+”的優(yōu)先級高,所以先執(zhí)行“*p”;指針P指向的是數(shù)組的首地址,因此*p=1;再加8得9。

  2[單選題] 下述程序的輸出結(jié)果是(  )。

2018年9月計(jì)算機(jī)二級C語言考試章節(jié)習(xí)題及答案(4)

2018年9月計(jì)算機(jī)二級C語言考試章節(jié)習(xí)題及答案(4)

  A.1

  B.7

  C.3

  D.2

  參考答案:B

  參考解析:本題考查的是位運(yùn)算符的應(yīng)用。a和b 寫成二進(jìn)制表示分別為a=00000011,b=00000001,由于左移位運(yùn)算符“<<”的優(yōu)先級高于按位異或運(yùn)算符“^”,左移兩位后b<<2=00000100,此結(jié)果和x按位異或后a^b<<2=00000111。

  3[單選題] 下面說法正確的是(  )。

  A.一個(gè)C程序可以有多個(gè)主函數(shù)

  B.一個(gè)C語言的函數(shù)中只允許有一對花括號

  C.C程序的書寫格式是自由的,一個(gè)語句可以寫在一行上,也可以寫在多行內(nèi)

  D.在對C程序進(jìn)行編譯時(shí),可以發(fā)現(xiàn)注釋行中的拼寫錯(cuò)誤

  參考答案:C

  參考解析:本題涉及C語言基本的3個(gè)知識點(diǎn):①C 語言規(guī)定一個(gè)程序只允許有一個(gè)主函數(shù),一個(gè)函數(shù)內(nèi)可以允許有多個(gè)花括號;②C程序的注釋部分僅僅是方便程序員閱讀,提高程序的可讀性和可移植性,它并不參與程序的編譯,所以編譯器也就不會發(fā)現(xiàn)注釋中的錯(cuò)誤。

  4[單選題] 以下4個(gè)選項(xiàng),不能看作一條語句的是(  )。

  A.{;}

  B.int x=0,y=1,z=0;

  C.if(!a);

  D.if(b==0)m=1:n=2:

  參考答案:D

  參考解析:語句是用來判定所給的條件是否滿足,根據(jù)判定的結(jié)果(真或假)決定執(zhí)行給出的兩種操作之一。 在if和else后面可以只含一個(gè)內(nèi)嵌的操作語句,也可以有多個(gè)操作語句,此時(shí)用花括號“{}”將幾個(gè)語句括起來成為一個(gè)復(fù)合語句。選項(xiàng)D)中沒有將兩個(gè)操作語句括起來,不能看作一條語句。

  5[單選題] 以下程序的輸出結(jié)果是(  )。

2018年9月計(jì)算機(jī)二級C語言考試章節(jié)習(xí)題及答案(4)


  A.1

  B.3

  C.2

  D.4

  參考答案:D

  參考解析:本題首先判斷a>b,當(dāng)a>b時(shí)結(jié)果等于a,否則等于“d>c?d:b”,因?yàn)閍>b,所以直接輸出a的值,注:這里“a:d>c?d:b”是用來干擾考生的。

  6[單選題] 閱讀以下程序

2018年9月計(jì)算機(jī)二級C語言考試章節(jié)習(xí)題及答案(4)


  A.定義語句出錯(cuò),Case是關(guān)鍵字,不能用作用戶自定義標(biāo)識符,printF不能用作用戶自定義標(biāo)識符

  B.定義語句出錯(cuò),Int無法被識別

  C.定義語句無錯(cuò),scanf不能作為輸入函數(shù)使用

  D.定義語句無錯(cuò),printf不能輸出Case的值

  參考答案:B

  參考解析:c語言是一種大小寫敏感的語育,因此Int應(yīng)為int,而CaseprintF則可以使用。

  7[單選題] 計(jì)算機(jī)高級語言程序的運(yùn)行方法有編譯執(zhí)行和解釋執(zhí)行兩種,以下敘述中正確的是( )。

  A.C語言程序僅可以編譯執(zhí)行

  B.C語言程序僅可以解釋執(zhí)行

  C.c)C語言程序既可以編譯執(zhí)行又可以解釋執(zhí)行

  D.以上說法都不對

  參考答案:A

  參考解析:C語言作為計(jì)算機(jī)高級語言,用它編寫的程序必須經(jīng)過C語言的編譯器編譯后,轉(zhuǎn)換為二進(jìn)制的機(jī)器來運(yùn)行。

  8[單選題] 以下敘述中錯(cuò)誤的是(  )。

  A.C語言編寫的函數(shù)源程序,其文件名后綴可以是.C

  B.C語言編寫的函數(shù)都可以作為一個(gè)獨(dú)立的源程序文件

  C.C語言編寫的每個(gè)函數(shù)都可以進(jìn)行獨(dú)立的編譯并執(zhí)行

  D.一個(gè)C語言程序只能有一個(gè)主函數(shù)

  參考答案:C

  參考解析:C語言程序是從main函數(shù)開始執(zhí)行的,每一個(gè)函數(shù)可以進(jìn)行獨(dú)立的編譯。

  9[單選題] 以下敘述正確的是(  )。

  A.在C程序中,main函數(shù)必須位于程序的最前面

  B.每個(gè)后綴為.c的C語言源程序都可以單獨(dú)進(jìn)行編譯

  C.在C語言程序中,只有main函數(shù)才可單獨(dú)進(jìn)行編譯

  D.每個(gè)后綴為.c的C語言源程序都應(yīng)該包含一個(gè)main函數(shù)

  參考答案:B

  參考解析:每一個(gè)C 語言的文件或函數(shù)都可以單獨(dú)編譯,但只有main 函數(shù)的才可以執(zhí)行。

  10[單選題] C語言中的標(biāo)識符分為關(guān)鍵字、預(yù)定義標(biāo)識符和用戶標(biāo)識符,以下敘述正確的是

  A.預(yù)定義標(biāo)識符(如庫函數(shù)中的函數(shù)名)可用作用戶標(biāo)識符,但失去原有含義

  B.用戶標(biāo)識符可以由字母和數(shù)字任意順序組成

  C.在標(biāo)識符中大寫字母和小寫字母被認(rèn)為是相同的字符

  D.關(guān)鍵字可用作用戶標(biāo)識符,但失去原有含義

  參考答案:A

  參考解析:預(yù)定義標(biāo)識符是C語言中的標(biāo)識符,在C語言中也有特定的含義,如函數(shù)printf、scanf、sin 等和編譯預(yù)處理命令名(如define 和include)。預(yù)定義標(biāo)識符可以作為用戶標(biāo)識符使用,只是這樣會失去系統(tǒng)規(guī)定的原義。

  11[單選題] c語言規(guī)定,在一個(gè)源程序中,main函數(shù)的位置(  )。

  A.必須在最開始

  B.必須在系統(tǒng)調(diào)用的庫函數(shù)的后面

  C.可以任意

  D.必須在最后

  參考答案:C

  參考解析:不論main函數(shù)在整個(gè)過程中的位置如何,一個(gè)c程序總是從main函數(shù)開始執(zhí)行的

  12[單選題] 以下敘述不正確的是(  )。

  A.在C程序中,逗號運(yùn)算符的優(yōu)先級最低

  B.在C程序中,APH和aph是兩個(gè)不同的變量

  C.若a和b類型相同,在計(jì)算賦值表達(dá)式a=b后,b的值將放入a中,而b的值不變

  D.當(dāng)從鍵盤輸入數(shù)據(jù)時(shí),對于整型變量只能輸入整型數(shù)值,對于實(shí)型變量只能輸入實(shí)型數(shù)值

  參考答案:D

  參考解析:在c語言所有的運(yùn)算符中,逗號運(yùn)算符的優(yōu)先級最低。C語言區(qū)分大小寫,所以APH和aph是兩個(gè)不同的變量。賦值表達(dá)式a=b表示將b的值賦予a,而b本身的值保持不變;通過鍵盤可以向計(jì)算機(jī)輸入允許的任何類型的數(shù)據(jù)。選項(xiàng)D)中當(dāng)從鍵盤輸人數(shù)據(jù)時(shí),對于整型變量可以輸入整型數(shù)值和字符,對于實(shí)型變量可以輸入實(shí)型數(shù)值和整型數(shù)值等。

  13[單選題] 有以下程序:

  main()

  {

  unsigned char a=2,b=4,c=5,d;

  d =a|b;d&=c;printf("%d\n",d);

  }

  程序運(yùn)行后的輸出結(jié)果是(  )。

  A.3

  B.4

  C.5

  D.6

  參考答案:B

  參考解析:本題考查的是邏輯運(yùn)算。本題中主要是進(jìn)行位的邏輯運(yùn)算。將a的值轉(zhuǎn)換成二進(jìn)制為:0000 0010,b的值轉(zhuǎn)換成二進(jìn)制為:0000 0100,將a、b進(jìn)行按位或運(yùn)算(參加計(jì)算的兩個(gè)位只要有一個(gè)為1,那么運(yùn)算結(jié)果為l),因此此時(shí)d的二進(jìn)制為:0000 0110,C的值轉(zhuǎn)換成二進(jìn)制為:00000101,接下來將d和C進(jìn)行按位與運(yùn)算(參加計(jì)算的兩個(gè)位都為1,則結(jié)果為1,否則為0),結(jié)果為:0000 0100,轉(zhuǎn)換成十進(jìn)制數(shù)結(jié)果為4。

  14[單選題] 下列程序的輸出結(jié)果是(  )。

  main()

  {

  double d = 3.2;int x,y;

  x=1.2;y=(x+3.8)/5.0;

  printf("%d\n",d*y);

  }

  A.3

  B.3.2

  C.0

  D.3.07

  參考答案:C

  參考解析:本題考查復(fù)合的賦值表達(dá)式。本題中,程序先執(zhí)行語句x=1.2;,根據(jù)賦值運(yùn)算的類型轉(zhuǎn)換規(guī)則,先將double型的常量l.2轉(zhuǎn)換為int型,即取整為1,然后將l賦值給變量x。接下來執(zhí)行語句y=(x+3.8)/5.0;根據(jù)運(yùn)算符的優(yōu)先級,先計(jì)算小括號內(nèi),再計(jì)算除法,最后執(zhí)行賦值運(yùn)算。小括號內(nèi)的運(yùn)算過程:先將整型變量x的值l轉(zhuǎn)換為double型1.0,然后與3.8進(jìn)行加法運(yùn)算,得到中間結(jié)果4.8。接著進(jìn)行除法運(yùn)算4.8/5.0,其結(jié)果小于l.0,這里沒有必要計(jì)算出精確值,因?yàn)榻又M(jìn)行賦值運(yùn)算,賦值號左邊變量Y的類型為整型,于是對這個(gè)小于1.0的中間結(jié)果進(jìn)行取整,結(jié)果為0,于是變量y的值為0,d * y的值也為0。

  15[單選題] 以下敘述中錯(cuò)誤的是(  )。

  A.C語言的可執(zhí)行程序是由一系列機(jī)器指令構(gòu)成的

  B.用C語言編寫的源程序不能直接在計(jì)算機(jī)上運(yùn)行

  C.通過編譯得到的二進(jìn)制目標(biāo)程序需要連接才可以運(yùn)行

  D.在沒有安裝C語言集成開發(fā)環(huán)境的機(jī)器上不能運(yùn)行C源程序生成的.exe文件

  參考答案:D

  參考解析:c語言的可執(zhí)行程序是由一系列機(jī)器指令組成的。用C語言編寫的源程序必須經(jīng)過編譯生成二進(jìn)制目標(biāo)代碼,再經(jīng)過連接才能運(yùn)行,并且可以脫離c語言集成開發(fā)環(huán)境。故答案為D)。

  16[單選題] 以下4個(gè)選項(xiàng)中,不能看作一條語句的是(  )。

  A.;

  B.a=5,b=2.5,c=3.6;

  C.if(b!=5)x=2;y=6;

  D.return j;

  參考答案:C

  參考解析:c語言規(guī)定每個(gè)語句以;(分號)結(jié)束,因此選項(xiàng)c)為兩條語句。

  17[單選題] 下面程序段的輸出為(  )。

  #include "stdio.h"

  main()

  {

  printf("%d\n",12<<2);

  }

  A.0

  B.47

  C.48

  D.24

  參考答案:C

  參考解析:本題考查位運(yùn)算的運(yùn)算原理。<<為左移運(yùn)算符,運(yùn)算符的左邊是移位對象;右邊是整型表達(dá)式,代表左移的位數(shù),左移時(shí),右端(低位)補(bǔ)0;左端(高位)移出的部分舍棄。

  18[單選題] 以下敘述中正確的是( )。

  A.C程序中注釋部分只能放在程序最后

  B.花括號“{“和”}”可以作為函數(shù)體的定界符,也可以作為復(fù)合語句的定界符

  C.構(gòu)成C程序的基本單位是函數(shù),所有函數(shù)名都可以由用戶命名

  D.分號不是語句的一部分,是C語句之間的分隔符

  參考答案:B 參考解析:花括號可以作為函數(shù)體的定界符,也可以作為復(fù)合語句的定界符。函數(shù)是c程序的基本單位,用戶可以命名自定義函數(shù),而庫函數(shù)名是固定的。c語句以分號結(jié)尾,分號是語句的一部分。

  19[單選題] 若有說明,double*m,n;則能通過sCanf語句正確給輸入項(xiàng)讀人數(shù)據(jù)的程序段是( )。

  A.*m = &n;scanf("%lf",m);

  B.m = (double * ) malloc(10);scanf("%f",m);

  C.m = &n;scanf("%lf",n);

  D.m = &n;scanf("%le",m);

  參考答案:D

  參考解析:解析:選項(xiàng)A,*m = &n 錯(cuò)誤。選項(xiàng)B,輸入 double型,要用%lf 或 %le,否則數(shù)據(jù)不能正常輸入。

  選項(xiàng)C,n是變量,不是指針,scanf("%if",n)錯(cuò)誤。

  20[單選題]

2018年9月計(jì)算機(jī)二級C語言考試章節(jié)習(xí)題及答案(4)


  A.a=50 b=50(空格分開.

  B.50 50(空格分開.

  C.a=50,b=50

  D.50,50

  參考答案:C 參考解析:scanf函數(shù)使用時(shí),如果格式控制串中有非格式字符則輸人時(shí)也要輸入該非格式字符。

掃描/長按二維碼幫助考試通關(guān)
2018年等考報(bào)考資訊
2018等考各科通關(guān)技巧
2018各科最新預(yù)測試卷
2018等考各科備考資料

微信搜索"考試吧"了解更多考試資訊、下載備考資料

  相關(guān)推薦:

  2018年9月全國計(jì)算機(jī)等級考試試題匯總(各科目)

  2018年全國計(jì)算機(jī)等級考試必做試題匯總(各科目)

  2018年全國計(jì)算機(jī)等級考試復(fù)習(xí)知識點(diǎn)匯總(各科目)

  2018全國計(jì)算機(jī)等級考試備考經(jīng)驗(yàn)及應(yīng)試技巧匯總

  歷年真題匯總|考試吧策劃:2018年計(jì)算機(jī)等級考試報(bào)考指南

0
收藏該文章
0
收藏該文章
文章搜索
萬題庫小程序
萬題庫小程序
·章節(jié)視頻 ·章節(jié)練習(xí)
·免費(fèi)真題 ·?荚囶}
微信掃碼,立即獲。
掃碼免費(fèi)使用
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
此欄目下沒有文章
版權(quán)聲明:如果計(jì)算機(jī)等級考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系800@exam8.com,我們將會及時(shí)處理。如轉(zhuǎn)載本計(jì)算機(jī)等級考試網(wǎng)內(nèi)容,請注明出處。
Copyright © 2004- 考試吧計(jì)算機(jī)等級考試網(wǎng) 出版物經(jīng)營許可證新出發(fā)京批字第直170033號 
京ICP證060677 京ICP備05005269號 中國科學(xué)院研究生院權(quán)威支持(北京)
在線模擬試題
考證通關(guān)殺器
考試最新資訊
學(xué)
一次通關(guān)技巧