全省C統(tǒng)一考試樣卷_第1頁
全省C統(tǒng)一考試樣卷_第2頁
全省C統(tǒng)一考試樣卷_第3頁
全省C統(tǒng)一考試樣卷_第4頁
全省C統(tǒng)一考試樣卷_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、C+程序設(shè)計考試樣卷(2小時開卷)題類一二三四五總分得分學(xué)校: 學(xué)號: 姓名: 一、 單項選擇題(30分,共15題,每小題2分)1C+對C語言作了很多改進,從面向過程變成為面向?qū)ο蟮闹饕驗開。A) 增加了一些新的運算符 B) 允許函數(shù)重載,并允許設(shè)置缺省參數(shù)C) 規(guī)定函數(shù)說明符必須用原型 D) 引進了類和對象的概念2. 以下說法中,錯誤的是 。A) 函數(shù)的形式參數(shù)類型若與實際參數(shù)不一致,則以實際參數(shù)類型為準. B) 函數(shù)的形式參數(shù)在函數(shù)被調(diào)用時系統(tǒng)才為其分配存儲空間.C) 函數(shù)的嵌套調(diào)用就是直接或間接地調(diào)用函數(shù)本身.D) 在函數(shù)定義時若沒有指出函數(shù)的數(shù)據(jù)類型, 則默認函數(shù)的返回值是void

2、.3已知:int m=10; 下列表示引用的方法中,正確的是_。A) int& x=m; B) float& t=&m; C) int& z; D) float& t=m;4. 下列析構(gòu)函數(shù)的特征是_。A) 一個類中只能定義一個析構(gòu)函數(shù)B) 析構(gòu)函數(shù)名與類名無關(guān)C) 析構(gòu)函數(shù)的定義只能在類體內(nèi)D) 析構(gòu)函數(shù)可以有一個或多個參數(shù)5. sizeof(double) 是 。A) 一個不合法的表示形式 B) 一種函數(shù)的調(diào)用 C) 一個整型表達式 D) 一個雙精度浮點表達式 6. 若條件表達式(exp)? a+: b-, 則以下表達式中能完全等價于表達式(exp)

3、的是 。A) (exp=0) B) (exp!=1) C) (exp=1) D) (exp!=0)7. 若定義char t10; 則在下面表達式中不表示t1的地址的是 。A) t+1 B) t+ C) &t0+1 D) &t18一個函數(shù)功能不太復(fù)雜,但要求被頻繁調(diào)用,選用_。A) 內(nèi)聯(lián)函數(shù) B) 重載函數(shù) C) 遞歸函數(shù) D) 嵌套函數(shù)9. 下面程序段的運行結(jié)果是 。 char str = "ABC", *q =str; cout<<*(q+3);A) 67 B) 字符 'C' C) 字符 'C'的地址 D) 01

4、0在C+中,關(guān)于下列設(shè)置參數(shù)默認值的描述中,正確的是_。A) 程序中有函數(shù)重載,就不能設(shè)置參數(shù)默認值B) 設(shè)置參數(shù)默認值,只能在函數(shù)定義時進行C) 設(shè)置參數(shù)默認值時,應(yīng)該是先設(shè)置右邊的再設(shè)置左邊的D) 設(shè)置參數(shù)默認值時,應(yīng)該全部參數(shù)都設(shè)置11下列標識符中,具有文件作用域的是_。A) 函數(shù)參數(shù) B) 語句標號 C) 靜態(tài)全局變量 D) 局部變量12下列不能作為類的成員的是_。A) 自身類對象的指針 B) 自身類對象C) 自身類對象的引用 D) 另一個類的對象13下列析構(gòu)函數(shù)的特征是_。A) 一個類中只能定義一個析構(gòu)函數(shù)B) 析構(gòu)函數(shù)名與類名無關(guān)C) 析構(gòu)函數(shù)的定義只能在類體內(nèi)D) 析構(gòu)函數(shù)可以有

5、一個或多個參數(shù)14關(guān)于成員函數(shù)的特征描述中,錯誤的是_。A) 成員函數(shù)一定是內(nèi)聯(lián)函數(shù) B) 成員函數(shù)可以重載C) 成員函數(shù)可以設(shè)置參數(shù)默認值 D) 成員函數(shù)可以是靜態(tài)的15已知:int a, *pa=&a; 輸出指針pa值的十進制表示的方法是_。A) cout<<pa; B) cout<<*pa;C) cout<<&pa; D) cout<<long(pa);二、是非判斷題(10分,共10題,每小題1分)(請在題號上打或X) 1. C+中使用注釋符(/),不能使用注釋符(/*/)。 2. C+中定義常量,不能用宏定義的方法,只能用

6、const。 3. C+是一種編譯型的高級語言。 4. 錯誤信息可能會出現(xiàn)在編譯過程中,不會出現(xiàn)在鏈接過程中。 5. C+提供的庫函數(shù)都被定義在它所對應(yīng)的頭文件中。 6. C+中數(shù)組元素的下標是從0開始,它們連續(xù)存儲在內(nèi)存單元中。 7. 引用是某個變量的別名,對引用的操作,就是對被引用變量的操作。 8. 語句int a(5), &b = a, *p = &a;中,b的值和*p的值是相等的。 9. 在C+中,聲明函數(shù)時都用函數(shù)原型。 10.如果一個函數(shù)沒有返回值,定義時函數(shù)頭前需用void。三、填空題(10分,共5題,每小題2分)1. 在用class定義一個類時,數(shù)據(jù)成員和成員函

7、數(shù)的默認訪問權(quán)限是_。2. 含有純虛函數(shù)的類稱為_。3. 已知int fn(int n)return n+n;和long fn(long n)return n+n;是一個函數(shù)模板的兩個實例,則該函數(shù)模板的定義是_。4. 繼承的方式有公有繼承、私有繼承和_3種。5. 表達式operator+(x,y)還可以表示為_。四、讀程序,寫運行結(jié)果(30分)1.(7分)#include<iostream>using namespace std;/-void other();/-int main() int x=0, y=3; other(); cout<<x<<” ”&

8、lt;<y<<”n”; other();/-void other() static int x=2; int y=6; x += 2; cout<<x<<” ”<<y<<”n”;/-2. (8分)#include <iostream>using namespace std;/-class Class int x,y;public: Class(int n=6, int m=7); Class(); void Set(int n, int m) x=n; y=m; ;/-Class:Class(int n, int m

9、) Set(n,m); cout<<"Construct: x="<<x<<",y="<<y<<”n”;/-Class:Class() cout<<"Destruct: x="<<x<<",y="<<y<<”n”;/-int main() Class a(5); Class b=Class(1,3); cout <<"exiting.n"/-3. (8分)#incl

10、ude<iostream>using namespace std;/-class Tdate void Init(int m,int d,int y); int month, day, year;public: Tdate(); Tdate(int d); Tdate(int m,int d); Tdate(int m,int d,int y); void Print();Tdate:Tdate() Init(6,13,2000);Tdate:Tdate(int d) Init(6,d,2000);Tdate:Tdate(int m,int d) Init(m,d,2000);Td

11、ate:Tdate(int m,int d,int y) Init(m,d,y);void Tdate:Init(int m,int d,int y) month = m; day = d; year = y;void Tdate:Print() cout<<month<<”-”<<day<<”-”<<year<<”n”;/-int main() Tdate today(6,17,2000); Tdate someday(4,25); Tdate oneday(3); Tdate otherday; today.Print

12、(); someday.Print(); oneday.Print(); otherday.Print();/-4(7分)#include<iostream>using namespace std;/-class Counter int v;public: Counter() v=0; Counter& preAddOne(); Counter postAddOne(); void print() cout<<v<<”n”; ;/-Counter& Counter:preAddOne() v+; return *this;/-Counter

13、Counter:postAddOne() Counter temp; temp.v = v+; return temp;/-int main() Counter c; for(int i=0; i<8; i+) c.postAddOne().postAddOne(); c.print(); for(int j=0; j<8; j+) c.preAddOne().preAddOne(); c.print();/-五、設(shè)計題(20分,共4題,每題10分,選2題做)1.設(shè)計一個Date類,包含足夠的數(shù)據(jù)成員和成員函數(shù),使其加在下列程序中,能得出后面的運行。#include<iost

14、ream>#include<iomanip>using namespace std;/-class Date.;/-int main() Date a(2004,1,1), b(2003,12,25);a.print();cout<<”n”;a pare(b);cout<<”n”;/-運行結(jié)果為:2004-01-012004-01-01 is larger than 2003-12-252根據(jù)下列代碼和其運行結(jié)果,寫出完整的A類#include <iostream>using namespace std;/-class A public:

15、void set(int i, int j)a=i,b=j;private: int a; int b;/-int main() cout <<”Starting.n”; A a3; for(int i=0; i<3; i+) ai.set(2*i+1, (i+1)*2); cout <<”Ending.n”;/-運行結(jié)果為:Starting.Default constructor called.Default constructor called.Default constructor called.Ending.Destructor called. a=5,b

16、=6Destructor called. a=3,b=4Destructor called. a=1,b=23編寫一個對日期數(shù)據(jù)排序的程序。給定輸入日期數(shù)據(jù)的格式為:MM-DD-YYYY,輸入數(shù)據(jù)放在名為abc.txt的文件中,格式如下例所示,數(shù)據(jù)量大約為1000個日期。輸出是排好序的全部日期,格式與輸入格式一致,每個日期占一行。例如:樣板輸入:12-23-200302-11-200510-30-2001樣板輸出:10-30-200112-23-200302-11-20054.給定類繼承體系,如圖,其代碼文件為auto.h?,F(xiàn)有若干Car類對象和Truck類對象存放在向量x(類型為vector

17、<Auto*>)中。實現(xiàn)函數(shù):void myProc(const vector<Auto*>& x);將其按銷售金額排序后輸出,每行占一個車店名,并在店名后標注其為Car或Truck。Car(客車)Truck(貨車)Auto(汽車)/-/-#ifndef AUTO#define AUTO#include<iostream>#include<string>using namespace std;/-class Autostring name; / 車店名double price; / 車價int number; / 銷售數(shù)量double s

18、um; / 總銷售額public:Auto(string s, double p, int n):name(s),price(p),number(n)void addNumber(int n) number += n; sum = price*number; double getSum()const return Sum; friend bool lessThan(const Auto*& a, const Auto*& b);virtual void display()=0;/-class Car : public Autoint seat;public:Car(string s, double p, int n, int se):Auto(s,p,n),seat(se)void display() cout<&

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論