C C 專項練習 五

2021-07-05 16:54:39 字數 2323 閱讀 7329

1.在過載運算子函式時,下面()運算子必須過載為類成員函式形式()

a  +

b  -

c  ++

d  ->

答案:d

解析:我也是不太懂。。。

別人的優質解析:只能使用成員函式過載的運算子有:=、()、、->、new、delete

2.c++裡面如何宣告const void f(void)函式為c程式中的庫函式。

a   

static "c"

b   

extern "c"

c  explict "c"

d  register "c"

答案:b

解析:略

3.下面的函式哪個是系統呼叫而不是庫函式()?

a   

printf

b   

scanf

c   

fgetc

d   

read

e  print_s

f   

scan_s

答案:d

解析:read的作用是讀檔案

4.下面結構體

struct s1 

struct s1 *next;

};

的大小是_____:

a   12位元組

b   16位元組

c   20位元組

d   24位元組

答案: b

解析:題目不太明確,覺得應該宣告為32位機器。第乙個 char 為1個位元組,但要注意位元組對齊(和*ptr),*ptr4個位元組。union取最大值,int(4位元組),最後的那個 *next  表 指標,也是4位元組

所以,最後大小是 4(char為1,但位元組對齊,為4)+4(指標)+4(union最大為int,4位元組

)+4(*next)=16位元組

5.若有以下程式

struct st;

struct st a[3]=,*p;

p=&a[0];

則以下選項中值為6的表示式是

a   

p->n

b  (*p).n

c   

p->n++

d  

++(p->n )

答案:d

解析:水題,綜合考察一些基礎知識

6.乙個類有基類、內部有乙個其他類的成員物件,建構函式的執行順序是怎樣的? 

a     

基類-成員物件-自己的

b     

基類-自己的-成員物件

c     

成員物件-基類-自己的

答案:a

解析:略

7.有以下程式

#include using namespace std;

int fun (int x,int y)

int main()

下面程式的輸出是?

a   8

b   6

c   12

d   3

答案: b

解析: 函式的遞迴呼叫

8.請問下面的程式最後會產生多少個程序:

int main( ) else  

}// do somthing,sleep

return 0;

}

a    5

b    10

c    15

d    32

答案:d

解析:執行緒部分的東西是硬傷啊。。。。

9.

#include int main()

下面程式輸出是什麼?

a   1, 2, 3

b   1, 3, 2

c   3, 2, 1

d   1, 3, 3

答案:d

解析:見注釋

10.在32位機器上

設有以下說明和定義:

typedef union  date;

struct data too;

date max;

則語句 printf("%d",sizeof(struct data)+sizeof(max));的執行結果是

答案: 52

解析:參考下圖(引用牛客網上面的答案)

刷題筆記 C C 專項練習4

題目 不定項 開發c 時,經常見到如下型別的結構體定義 typedef struct list tlist t 最後一行char data 0 的作用是?a.方便管理記憶體緩衝區 b.減少記憶體碎片化 c.標識結構體結束 d.沒有作用 答案 ab 知識點 柔性陣列 解析 先來看柔性陣列,引自 1 什...

刷題筆記 C C 專項練習7

題目 拷貝建構函式的特點是 a.該函式名同類名,也是一種建構函式,該函式返回自身引用 b.該函式只有乙個引數,是對某個物件的引用 c.每個類都必須有乙個拷貝初始化建構函式,如果類中沒有說明拷貝建構函式,則編譯器系統會自動生成乙個預設拷貝建構函式,作為該類的保護成員 d.拷貝初始化建構函式的作用是將乙...

刷題筆記 C C 專項練習8

題目 下面有關虛函式的描述,說法錯誤的是?a.虛函式的作用是實現了繼承性 b.虛函式的作用就是實現 動態聯編 也就是在程式的執行階段動態地選擇合適的成員函式 c.和類的靜態成員函式與非類的成員函式相比,虛函式的效率較低 d.要正確的實現虛函式,只能用乙個基類的指標或者引用來指向派生類物件 答案 a ...