2022年四川省达州市全国计算机等级考试C++语言程序设计预测试题(含答案).docx
《2022年四川省达州市全国计算机等级考试C++语言程序设计预测试题(含答案).docx》由会员分享,可在线阅读,更多相关《2022年四川省达州市全国计算机等级考试C++语言程序设计预测试题(含答案).docx(41页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2022年四川省达州市全国计算机等级考试C+语言程序设计预测试题(含答案)学校:班级:姓名:考号:一、1.选择题(10题)1 .下列关于构造函数的描述中,错误的是()A.构造函数可以设置默认参数B.构造函数在定义类对象时自动执行C.构造函数可以是内联函数D.构造函数不可以重载2 .最简单的交换排序方法是()。A.快速排序B.选择排序C.堆排序D.冒泡排序3 .若二维数组a有m歹IJ,则计算任一元素在数组中相对位置的公 式为(假设a00位于数组的第一个位置上)()。A.i*m+j B.j*m+I C.i*m+j-l D.i*m+j+l4 .下列程序的运行结果为#include void main
2、()(int a = 2;int b = a + 1;n-:):kJ*个个个个个个个个rror个个个个个个不不intCO: n;voidmainCOobj ;COobj27;CO*C=NULL:c=&obj:kL* kL*vl* Vy*vL*个个个个个个不不不不不不不不下eoutC . nendl ;coutC0: nendl;37.使用VC+6. 0打开考生文件夹下的源程序文件 1. cpp,该程序运行时有错误,请改正程序中的错误。本程序要求实现的功能为从键盘输入一个字符串,并将结果保存到文件1.txt中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在*
3、error* * 白勺 -jj| 。试题程序:#include#includeerror不不小不不不不小usingstd;voidWriteFile(chars) (ofstreamoutl ;error不不不不不不不不outl. open(H1. txt, binary|app);for(inti=0; si!=0; i + +)error不小小不不不小小outl. puts(si);outl. close;voidClearFile(ofstreamoutl;outl. open(nl. txt);outl. close;intmain(chars 1024;ClearFile;nendl
4、;coutnpleaseinputastrin9 :cin. getline(s, 1024);WriteFile(s);returnO;)38.使用VC+ +6 .。打开考生文件夹下的源程序文件1 . cpp,该程序运行时有错误,请改正程序中的错误。本程序要求实现 的功能为从键盘输入一个字符串,并将结果保存到文件1 . txt中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在kL*kL*error的下面。试题程序:#include#include7,7,个个个个个个个个个个个个个个个个usingstd ;voidWriteFile(char*s) (ofs
5、treamoutl ;erroroutl . open(Hl . txt, binary|app);for(inti=0 ; si!=0 ; i + +)erroroutl . puts(si); )outl . close ;voidClearFile (ofstreamoutl ;outl . open(nl . txt);outl . close ;)intmain (chars 1024;ClearFile ;coutnpleaseinputastrin9 :nendl ;cin . getline(s, 1024);WriteFile(s);returnO ;)39 .使用VC +
6、+6 .0打开考生文件夹下的源程序文件1 .cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,输出的结果为Constructor, i=0,Destructor注意:错误的语句在/ / *error*的下面,修改该语句即可。试题程序:#include(iostream . h) classTCinti ;public :TC ;voiddisplay ;TC ;TC : TC coutnConstructornn, i=0;vL*kL*vL* vl* vl* kL*不不不不不不en*or不不不不不不TC : display toutni=nin, nendl ;不不不不不不en*or
7、不不不不不不TC : TCCOUInDestructornendl :) voidmainTCa ;a . display ;40 .使用VC+6. 0打开考生文件夹下的源程序文件1.cpp,该程序运行有问题,请改正main函数中的错误,使程序的输出结果为:number= 1 number=10 number=100注意:不要改动main函数,不能增加或删除行。也不能更改程序的结构,错误的语句在/ / *errc)r*的下面。试题程序:#includeclassTC (public:TC(inti) ( number=i;) voidSetNumber(intm) (number=m ; in
8、tGetNumberconst (returnnumber; voidPrintconst (coutnnumber=nnumberendl;) private:intnumber;voidmain个个个个个个个个rror个个个个个小个个TCobjl;objl. Print;TCobj2(3);KL KLKLk1 KE个个个个个个个个rror个个个个个个个个objl. number= 10;! 1 * eno* 0 * *TC. SetNumber(l 00);objl. Print;obj2. Print;41 .使用VC+ +6 .0打开考生文件夹下的源程序文件1 .cppo本程序要 求输
9、入一个字符串,然后将其中的小写字母改成大写字母,字符可能输 入多行,当输入字符“?”时,默认字符输入结束,最后把结果输出到屏幕 中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *error*的下面。试题程序:#include voidmain (inti=O ;charstr120;coutnEnterastringendwith? . nendl ;rr*rT*error*1* *i* *1* *4* *1 ryw rj* *rw T* *Twcin . getline(str, 120);kI kJ k1 kf 7, error不不小不不不不小
10、while(str)errorif(stri)=a)stri=stri-a + A ;i+ + ;)coutstrendl ;return ;42 .使用VC+ +6 .0打开考生文件夹下的源程序文件1 .cpp,该程序运行有问题,请改正main函数中的错误,使程序的输出结果为:number= 1numbcr= 10number= 100注意:不要改动main函数,不能增加或删除行。也不能更改程序的结构,错误的语句在/ / *error*的下面。试题程序:#include classTC public :TC(inti) number=i ;voidSetNumber(intm) number
11、=m ;intGetNumberconst returnnumber ;voidPrintconst coutnnumber=nnumberendl ;private :intnumber ;voidmain个个个个小个个个nor个个小个个个个个TCobjl ;objl . Print ;TCobj2(3);error7 7” 7, 7, 7 7,7, 7, rj* rT rj. rJ. rj.objl . number= 10 ;I ! * error* * *TC . SetNumber(lOO);objl . Print ;obj2 . Print ;43 .使用VC+6. 0打开考生文
12、件夹下的源程序文件1. cpp。本程序 要求输入一个字符串,然后将其中的小写字母改成大写字母,字符可 能输入多行,当输入字符“?”时,默认字符输入结束,最后把结果输出 到屏幕中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *error*的下面。试题程序:#include voidmain(inti=O;charstr120;coutnEnterastringendwith?. nendl;个个个个个个个个个个个个个个个cin. getline(str, 120);errorcout a/b endl;)5 .一棵二叉树中所含最少的结点数是A.0B.
13、1 C.2 D.36 .以下程序的输出结果是 #include void main( ) char x=040 ; cout (X 1);A.100B.80C.64 D.327 .在下面的4个关键字中用来说明虚函数的是()。A.virtual B.public C.protected D.private8 .在 int a5=l, 3. 5;中,al的值是( )o A.0B.1 C.3 D.59 .有以下程序:#include using namespace Std ; int a ; int fun() ; int main() extern int a ; intb ; a = 100 ;
14、 b = fun() ; cout b classTC个个不个个个个个个个个个个个个个TC(inti) m i=i ;voidprint coutm_i,)public :intm i ;intmaink! k! k.! kJ k1 kJ enor不不不不不不不不inti ;TC04(10);while(i5)! * * * !i+ + :04 . print ; coutendl ;returnO ;45 .使用VC+6. 0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请改正错误,使程序正常运行,并且要求最后一个catch必须抛出执行的任何异常。程序异常,输出信息为error
15、OERROR注意:不要改动main函数,不能增加或删除行,也不能更改程序的结的下面。构,错误的语句在/ / *errc)r*试题程序:#includeiostream. h) intmain try throw(nerrorn);catch(chars) coutsendl ;) try throw(int)0);si个不不不不不不不nor不不不不不不不不catch coutiendl;) try throw(O);throw。error);个个个个个个个个nor个个个个个个个个catch coutnERRORnendl;) returnO ;五、综合应用题(2题)46 .请使用VC6或使用【
16、答题】菜单打开考生文件夹proj3下的工程 proj3,其中声明的DataList类,是一个用于表示数据表的类。DataList 的重载运算符函数Operator+,其功能是求当前数据表与另一个相同长 度的数据表之和;即它返回一个数据表,其每个元素等于相应两个数 据表对应元素之和。请编写这个operator+函数。程序的正确输出应该 是: 两个数据表:1, 2, 3, 4, 5, 63, 4, 5, 6, 7, 8两个数据表之 和:4, 6, 8, 10, 12, 14 要求: 补充编制的内容写在“*333*”与“米/Ggg*51c”之间,不得修改程序的其他部分。注意:程序最后将结果输出到文件
17、。ut. dat中。输出函数writeToFile已经编译为。bj文件,并且在本程序中调用。/DataList. h #inClude using namespaCe std;ClaSS DataList数据表类 intfen;double*d; public:DataList(int len, double data口二NULL) ;DataList(DataList&data);int lengthConst return len ; double getElement(int i)Constt return di; DataList operator+(Const DataList&li
18、st)Const; 两个数据表求和 void showConst; 显示数据表 );void writeToFile(Char$, Const DataList&) ;/main. Cpp#inClude,DataList. hDataList: DataList(int len, double data): len(ien) d=new doublet len;for(int i=0 ; ilen; i+)d(九)i=(data=NULL?O. 0: datai); )DataList: DataList(DataList&data): len(data. len) d=newdoublet
19、 len;for(int i=0; ilen; i+) di=data. di;DataList DataList: 0perator+(Con8t DataList&list, )Const两个数据表求和 double*dd=new doublet list. 1 ensth;*333*666*return DataList(list. 1 ength, dd) ; void DataList: showConst显示数据表 fr(into i=0; iclassBA(inta;public:intgetareturna; ;classPAl : publicBA (intb;public:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 四川省 达州市 全国 计算机等级考试 C+ 语言程序设计 预测 试题 答案
限制150内