1、国家二级 C+机试(操作题)模拟试卷 388及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.使用 VC6打开考生文件夹下的源程序文件 modilcpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: 1 0 注意:错误的语句在*error*的下面,修改该语句即可。 #include struct Struct union int a; char C4; ; int b; *error* void mein() Struct m; *error* mc0=0; mc1=0; mc2=0; *error* mc3=1; mb=mc3;
2、 coutdata=data; this 一next=NULL; , int data; TestClass* mext; , void Insert(TestClass*P,int data) TestClass*temp=new TestClass(data); TeStClass*pparent=p; TeStClass*pNext=p 一next; while(pNext) if(datapNext一data) *1* temp 一next=pNext; return; E1se f pParent=pNext; *2* if(pNext=NULL) pParent 一next=tem
3、p; retuen; void printf(TestClass*P) *3* while() coutdatadata; if(data=0)break; Insert(&head,data); while(1); printf(&head); Delete(&head); return; (分数:2.00)_国家二级 C+机试(操作题)模拟试卷 388答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.使用 VC6打开考生文件夹下的源程序文件 modilcpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: 1 0 注意:错误的语句
4、在*error*的下面,修改该语句即可。 #include struct Struct union int a; char C4; ; int b; *error* void mein() Struct m; *error* mc0=0; mc1=0; mc2=0; *error* mc3=1; mb=mc3; coutdata=data; this 一next=NULL; , int data; TestClass* mext; , void Insert(TestClass*P,int data) TestClass*temp=new TestClass(data); TeStClass*
5、pparent=p; TeStClass*pNext=p 一next; while(pNext) if(datapNext一data) *1* temp 一next=pNext; return; E1se f pParent=pNext; *2* if(pNext=NULL) pParent 一next=temp; retuen; void printf(TestClass*P) *3* while() coutdatadata; if(data=0)break; Insert(&head,data); while(1); printf(&head); Delete(&head); return; (分数:2.00)_正确答案:(正确答案:(1)添加语句:pParent-next=temp; (2)添加语句:pNext=pNext 一next; (3)将“while()”补充完整为:while(p 一next!=NULL) (4)将“TestClass*templ=;”补充完整为:TestClasS*templ=p一next;)解析:解析:在 VC环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已给定源程序的 main主函数开始入手,可以看出程序通过调用类 TestClass实现各种输出操作。