<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • 計算機二級考試C語言復習題及答案

    時間:2024-08-09 13:23:06 計算機等級 我要投稿
    • 相關推薦

    2017計算機二級考試C語言復習題及答案

      做好復習計劃多做復習題是備考的關鍵。為了方便考生復習計算機二級C語言考試yjbys小編為大家帶來的計算機二級考試C語言復習題。歡迎閱讀。

    2017計算機二級考試C語言復習題及答案

      一、選擇題

      1. 若“int n; float f=13.8;”,則執行“n=(int)f%3”后,n的值是(A)

      A、1

      B、4

      C、4.333333

      D、4.6

      “(int)f“表示將f中的值強制類型轉換為整型,即將13.8的小數部分舍掉,轉換為13;然后計算13%3,結果為1,再將結果賦給變量n,因此n的值為1

      2. 以下對一維數組a的正確說明是: D

      A、char a(10);

      B、 int a[];

      C、int k=5,a[k];

      D、char a[3]={‘a’,’b’,’c’};

      詳見教材P143~144,一維數組的定義、初始化

      類型符 數組名 [常量表達式]

      類型符是指數組中數組元素的類型;數組名要符合標識符命名規則;常量表達式是指數組的長度(數組中包含元素的個數),其值只能是整數,不可以是變量,而且從1開始計數。

      選項A,常量表達式只能放在中括號 [ ]中

      選項B,只有在對數組初始化(即賦值)的時候才可以省略數組的長度,B中并未對a進行初始化。

      選項C,常量表達式不能為變量。

      3.以下能對一維數組a進行初始化的語句是:( C )

      A、int a[5]=(0,1,2,3,4,)

      B、 inta(5)={}

      C、 int a[3]={0,1,2}

      D、 int a{5}={10*1}

      詳見教材P145,一維數組的定義、初始化

      選項B,D,常量表達式只能放在中括號 [ ]中

      選項A,數組可以看做是若干個相同數據類型元素的有序集合,因此以集合的形式對其初始化,使用{ }對其初始化,選項A用了().

      4.在C語言中對一維整型數組的正確定義為 D 。

      A、int a(10);

      B、int n=10,a[n];

      C、int n;a[n];

      D、#define N 10

      int a[N];

      5、已知:int a[10]; 則對a數組元素的正確引用是( D )。

      A、a[10]

      B、a[3.5]

      C、a(5)

      D、a[0]

      詳見教材P144,數組元素的引用

      數組名[下標]

      引用數組元素時,[ ]中的下標為邏輯地址下標,只能為整數,可以為變量,且從0開始計數

      int a[10]表示定義了一個包含10個整型數據的數組a,數組元素的邏輯地址下標范圍為0~9,即a[0] 表示組中第1個元素; a[1] 表示組中第2個元素; a[2] 表示組中第3個元素; ......;a[9] 表示組中第10個元素.

      選項A,超過了數組a的邏輯地址下標范圍;

      選項B,邏輯地址下標只能為整數

      選項C,邏輯地址下標只能放在[ ]中

      6.下列不正確的定義是(A )。

      A、int *p=&i,i;

      B、int *p,i;

      C.int i,*p=&i;

      D、int i,*p;

      選項A先定義一個整型指針變量p,然后將變量i的地址賦給p。然而此時還未定義變量i因此編譯器無法獲得變量i的地址。(A與C對比,選項C先定義變量i,則在內存中為i分配空間,因此i在內存空間的地址就可以確定了;然后再定義p,此時可以為p賦i的地址,C正確)

      7. 若有說明:int n=2,*p=&n,*q=p,則以下非法的賦值語句是: (D )

      A、p=q

      B、*p=*q

      C、n=*q

      D、p=n

      p,q同為整型指針變量,二者里面僅能存放整型變量的地址。

      選項A,q中為地址,因此可將此地址賦給p

      選項B,*p表示p所指向對象n的內容,即一個整數;*q表示q所指向對象的內容,由于在定義q時為其初始化,將p中n的地址給q,因此p中存放n的地址,*q表示q所指向對象n的內容.因此*p=*q 相當于 n=n;

      選項C,n=*q 等價于n=n;

      選項D,p中只能存放地址,不能將n中的整數值賦給p

      8.有語句:int a[10],;則 B 是對指針變量p的正確定義和初始化。

      A、int p=*a;

      B、int *p=a;

      C、int p=&a;

      D、int *p=&a;

      選項A,a是數組名,不是指針變量名,因此不可用*標注數組名a

      選項C,a是數組名,數組名就是地址,無需再用地址符號。而且在定義指針變量p時,應在變量名前加*,標明p是指針變量

      選項D,a是數組名,數組名就是地址,無需再用地址符號。

      9.若有說明語句“int a[5],*p=a;”,則對數組元素的正確引用是( C )。

      A、a[p]

      B、p[a]

      C、*(p+2)

      D、p+2

      首先定義一個整型數組a,a的長度為5,然后定義一個指針變量p,并同時對p進行初始化,將數組a的地址賦給p。因此此時p中存放的數組a的首地址,即數組中第一個元素a[0]的地址。

      對于數組元素下標的引用(詳見p144), 一般形式 數組名[下標] 其中下標為邏輯地址下標,從0開始計數,方括號中的下標可以是變量,可以是表達式,但結果一定要是整數。

      選項A,p中存放的是地址,不是整數,不能做數組元素的下標

      選項B,a是數組名,數組名就是地址,不是整數,不能做數組元素的下標

      選項C,(重點!!!詳見p231~234) p+2表示指向同一數組中的下兩個元素的地址,當前p指向a[0],則p+2表示a[2]的地址,因此*(p+2)表示a[2]的內容

      10. 有如下程序

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

      則數值為9的表達式是 B

      A、 *P+9

      B、 *(P+8)

      C、 *P+=9

      D、P+8

      (重點!!!詳見p231~234)

      首先定義一個整型數組a,a的長度為5,然后定義一個指針變量P,并同時對P進行初始化,將數組a的地址賦給P。因此此時P中存放的數組a的首地址,即數組中第一個元素a[0]的地址。

      數組中9對應的是a[8], 選項B,P+8表示數組中后8個元素的地址,即a[8]的地址。*(P+8)則表示該地址內所存放的內容,即a[8]的值。

      選項A,*P表示P所指向對象的內容,此時P指向a[0], *P即a[0]的值1. *P+9=1+9=10

      選項C,*P表示P所指向對象的內容,此時P指向a[0], *P即a[0]的值。因此*P+=9 即*P =*P+9, 等價于a[0]=a[0]+9.

      選項D,P+8表示數組中后8個元素的地址,即a[8]的地址,而非a[8]中的值。

      11 以下敘述中正確的是()

      A.用戶自己定義的函數只能調用庫函數

      B.實用的C語言源程序總是由一個或多個函數組成

      C.不同函數的形式參數不能使用相同名稱的標識符

      D.在C語言的函數內部,可以定義局部嵌套函數

      參考答案:B

      參考解析:A選項中,”用戶自己定義的函數只能調用庫函數”描述是不正確的,也可以調用自定義函數;C選項中,對于不同函數的形式參數可以使用相同名稱的標識符;D選項中,關于函數的定義不可以嵌套,但函數的調用可以嵌套。因此B選項正確。

      12 以下關于C語言數據類型使用的敘述中錯誤的是( )。

      A.若要處理如“人員信息”等含有不同類型的相關數據,應自定義結構體類型

      B.若要保存帶有多位小數的數據,可使用雙精度類型

      C.若只處理“真”和“假”兩種邏輯值,應使用邏輯類型

      D.整數類型表示的自然數是準確無誤差的

      參考答案:C

      參考解析:C語言中沒有邏輯類型,所以c錯誤。若要保存帶有多位小數的數據,可以用單精度類型也可以用雙精度類型。處理包含不同類型的相關數據可以定義為結構體類型。整數類型可以無誤差的表示自然數。

      13下面選項中關于編譯預處理的敘述正確的是

      A.預處理命令行必須使用分號結尾

      B.凡是以#號開頭的行,都被稱為編譯預處理命令行

      C.預處理命令行不能出現在程序的最后一行

      D.預處理命令行的作用域是到最近的函數結束處

      參考答案:B

      參考解析:本題考查預編譯的預編譯處理命令行,預處理命令行不能以分號結尾,所以A選項錯誤,預處理命令行可以出現在程序的最后一行,預處理命令行作用域是整個文件。

      14有以下程序

      程序的輸出結果是

      A.0B.1C.9D.10

      參考答案:B

      參考解析:本題考查宏定義,宏定義只是做個簡單的替換。執行SQR(k+m)/SQR(k+m)=k+m*k+m/k+m}k+m=15/2,a/=SQR(k+m)/SQR(k+1TI)的結果為1,選項B正確。

      15 設--X樹共有150個結點,其中度為l的結點有l0個,則該---X樹中的葉子結點數為( )。

      A.71B.70C.69D.不可能有這樣的二叉樹

      參考答案:D

      參考解析:在樹結構中,一個結點所擁有的后件個數稱為該結點的度,所有結點中最大的度稱為樹的度。對任何一棵二叉樹,度為0的結點總是比度為2的結點多一個。如果有一棵二叉樹,結點總數為l50,假設度為0的結點個數為n,則有n+10+n一1=150,n=70.5,由于結點個數必須是整數,所以不可能有題目中這樣的二叉樹。故選擇D選項。

    【計算機二級考試C語言復習題及答案】相關文章:

    2017計算機二級考試C語言復習題07-31

    計算機二級C語言考試試題及答案10-09

    計算機二級C語言考試真題及答案09-30

    2017計算機二級考試C語言習題及答案09-01

    計算機二級C語言考試上機沖刺試題及答案09-08

    2017計算機二級考試C語言沖刺題及答案08-02

    計算機二級c語言題庫及答案09-25

    計算機等級考試二級C語言考試試題(帶答案)10-30

    2025計算機二級考試C語言模擬題及答案09-20

    計算機二級考試C語言歷年真題及答案解析07-01

    主站蜘蛛池模板: 99久久www免费人成精品| 国产精品视频免费一区二区| 一本大道久久a久久精品综合| 欧美黑人巨大videos精品| 2021年精品国产福利在线| 国内少妇偷人精品视频免费| 欧美亚洲综合免费精品高清在线观看| 99精品国产福利在线观看| 国产精品亚洲片在线va| 精品久久久久久成人AV| 亚洲无线观看国产精品| 免费短视频软件精品一区二区| 99热成人精品免费久久| 国产精品亚洲欧美一区麻豆| 国产成人A人亚洲精品无码| 午夜精品久久久久久久| 无码精品第一页| 人妻一区二区三区无码精品一区| 精品国产一区二区三区在线观看| 青青草国产精品久久| 麻豆精品久久久一区二区| 国产精品自拍一区| 国产精品久久国产精麻豆99网站| 成人无码精品1区2区3区免费看| 亚洲精品无码不卡在线播放HE| 亚洲精品97久久中文字幕无码| 久久精品国产99久久丝袜| 精品一区二区三区免费观看| 国产在线精品一区二区不卡麻豆| 国产精品午夜国产小视频| 国产欧美精品一区二区色综合| 国产精品视频一区二区三区不卡| 国产精品美女久久久网AV| 国产精品第六页| 国産精品久久久久久久| 黑人无码精品又粗又大又长| 精品国产免费一区二区三区| 久久99国产精品成人欧美| 久久精品亚洲福利| 无码国内精品久久人妻麻豆按摩| 亚洲一区二区三区国产精品|