2020年度鑽石C++C學習筆記(2)--《博學谷》

2020年度鑽石C++C--《博學谷》

 

1.如下標示符中命名合法的是A數組

2020年度鑽石C++C--《博學谷》提qu碼:xb2k 數據結構

A、__A__ide

B、ab.c函數

C、@rpspa

D、2Y_設計

2. a 和 b 均爲 doubleV(cmL46679910) 型變量,且a=5.五、b=2.5,則表達式(int)a + b / b的值是D指針

 

A、6.500000對象

B、6內存

C、5.500000字符串

D、6.000000

3.C語言中的基本數據類型包括D

 

A、整型、浮點型、字符型、邏輯型、枚舉

B、整型、浮點型、字符型、枚舉

C、整型、浮點型、字符型、邏輯型

D、整型、浮點型、字符型

4.一個C程序的執行通常都是從A

 

A、本程序的main()函數開始,到main()函數結束

B、本程序文件的第一個函數開始,到本程序文件的最後一個函數結束

C、本程序的main()函數開始, 到本程序文件的最後一個函數結束

D、本程序文件的第一個函數開始,到本程序main()函數結束

5.對兩個字符數組a和b進行初始化 char a[]="ABCDEF"; char b[]={'A', 'B', 'C', 'D', 'E', 'F'}; 則如下敘述正確的是D

 

A、a與b數組徹底相同

B、a與b數組大小相同

C、a和b中都存放字符串

D、數組a比數組b長度長

6.若定義int a[3][4] = { 0 }; 則對a數組元素的非法引用是B

 

A、a[0][2*1]

B、a[1][4]

C、a[4-2][0]

D、a[2][3]

7.下面不正確的字符串常量是A

 

A、'abc'

B、"12'12"

C、"0"

D、" "

8.在多層嵌套的條件結構語句 if-else 中V(cmL46679910) , else 子句老是與(  B  )配對

 

A、其距離最近的還沒有配對的if

B、其以前最近的還沒有配對的if

C、其以後最近的還沒有配對的if

D、其同一行上的還沒有配對的if

9.x、y、z被定義爲 int 型變量,若從鍵盤給x、y、z輸入數據,正確的輸入語句是B

 

A、printf("%d%d%d", &x, &y, &z);

B、scanf("%d%d%d", &x, &y, &z);

C、scanf("%d%d%d", x, y, z);

D、printf("%d%d%d", x, y, z);

10. int x = 1, y = 1; 表達式 (!x || y--)的值是B

 

A、0

B、1

C、2

D、-1

11.若變量a已正肯定義,如下非法的表達式是B

 

A、a /= b + c

B、a % (4.0)

C、a = 1 / 2 * ( x = y = 20, x * 3)

D、a = b = c

12.如有數組定義int a[] = {1,3,5,4,9,2,7,6,8,10}; int i = 4; 則 a[a[i]] 元素的值等於D

 

A、4

B、9

C、8

D、10

13.程序 char c[5] = {'a', 'b', '\0', 'c', '\0'};  printf("%s", c);的運行結果是B

 

A、'a''b'

B、ab

C、ab c

D、ab0c0

14.判斷字符串 a 是否大於 b,應當使用D

 

A、if (a > b)

B、if (strcmp(a, b))

C、if (strcmp(b, a) > 0)

D、if (strcmp(a, b) > 0)

15.若是執行語句 for(int a = 0, b = 0; b != 100 && a < 5; a++) scanf("%d", &b); 那麼scanf()函數最少執行(  D   )次

 

A、0

B、6

C、5

D、1

16.表示關係 12 <= x <= y 的C語言表達式爲B

 

A、(12 <= x <= y)

B、(12 <= x) && (x <= y)

C、(12 <= x) <= y)

D、(12 <= x) || (x <= y)

17.使用語句 scanf("a=%s,b=%d", &a, &b);輸入數據時,正確的數據輸入是A

 

A、a=2.2,b=3

B、a=2.2 b=3

C、2.2 3

D、2.2,3

18.如下關於運算符優先順序的描述中正確的是C

 

A、關係運算符 < 算術運算符 < 賦值運算符 < 邏輯與運算符

B、邏輯與運算符 < 關係運算符 < 算術運算符 < 賦值運算符

C、賦值運算符 < 邏輯與運算符 < 關係運算符 < 算術運算符

D、算術運算符 < 關係運算符 < 賦值運算符 < 邏輯與運算符

19. int x=0, y=3, z=3; 則如下表達式的值爲 0 的是C

 

A、!x

B、 x < y ? 1 : 0

C、x / 2 && y != z

D、y = x || z % 2

20.

下列程序的輸出結果是( C    )

           #include <stdio.h>

 

                       int main(void)

           {

               int a = 7 ,b = 5;

                 printf("%d\n",b=b/a)

               return 0 ;

           }

 

 

A、5

B、1

C、0

D、不肯定

 

簡答題

21.簡述C語言程序的編譯過程和每一個階段生成的目標文件4分

參考答案:

1)預處理:宏定義展開、頭文件展開、條件編譯等,同時將代碼中的註釋刪除,這裏並不會檢查語法

2)編譯:檢查語法,將預處理後文件編譯生成彙編文件

3)彙編:將彙編文件生成目標文件(二進制文件)

4)連接:C語言寫的程序是須要依賴各類庫的,因此編譯以後還須要把庫連接到最終的可執行程序中去

 

22.簡述C語言標識符的命名規則3分

 

參考答案:

1標識符使用來標識源程序中的某個對象的名字的,一個標識符由字母、數字和下劃線組成

2關鍵字能夠定義變量、表達語句功能和對一些文件進行預處理,關鍵字已被編譯系統自己使用,因此用戶編寫程序時不可以使用這些關鍵字來做爲標識符,

 

 

23.字符數組與字符串是否相同?若不相同,有何區別?3分


參考答案:不相同,C語言中沒有專門的字符串變量,若是要將一個字符串存放在變量中,必須使用字符數組,即用一個字符型數組來存放一個字符串,數組中每個元素存放一個字符。字符串:必須以'\0'結尾字符數組:能夠包含多個'\0'

 

24.C語言中參數傳遞有什麼特色?咱們應當注意些什麼?3分


參考答案:

1)數值傳遞:被調用函數中對形參的操做不影響主調用函數中的實參值。 
2)地址傳遞:能夠經過被調用函數中對形參的操做來修改主調用函數中的實參值。

注意事項:用malloc 申請內存以後,應該當即檢查指針值是否爲NULL。防止使用指針值爲NULL 的內存。

 

25.指針與地址有什麼聯繫?在使用指針的過程當中應注意哪些細節?指針類型對於程序設計有哪些意義?3分


參考答案:V(cmL46679910)

1)指針保存了某個變量的地址,指針自己是一個變量,它也有自身的地址而指針的內容是某個變量的地址。注意細節: 要初始化、正確的傳遞地址方式、使用時要判斷。

2)指針能夠用來有效地表示覆雜的數據結構,能夠用於函數參數傳遞並達到更加靈活使用函數的目的.使C語言程序的設計具備靈活、實用、高效的特色。

相關文章
相關標籤/搜索