2019年下半年二级C++试题(1)

发布于 2019-06-12 16:49  编辑:simi
0
计算机等级考试题库 扫码微信刷题


二级C++试题.jpg



通往成功的道路上有一门功课叫做刷题:刷计算机等级考试题库-二级C++试题


综合应用题

使用VC++6.0打开考生文件夹下的源程序文件3.cpp,阅读下列程序说明和代码,功能如下:

从屏幕输入数字,然后由大到小插入到指定的链中。当输入0时,表示输出的数据已经输入完成,把数据打印到屏幕,并释放内存。

其中定义的类不完整,按要求完成下列操作,将类的定义补充完整。

(1)在父结点的Next中保存新插入的结点的指针,请在注释1后添加适当的语句。

(2)把pNext的子结点赋给pNext本身,请在注释2后添加适当的语句。

(3)判定P的子结点不为空,如果不为空,则打印P中的数据到屏幕,请在注释3后添加适当的语句。

(4)用t1保存动态申请内存结点的链表头,请在注释4

后添加适当的语句。

注意:仅在函数指定位置添加语句,请勿改动主函数

main与其他函数中的任何内容。

试题程序:

#include

classTC

{

public

TC(intdata=O)

{

this->data=data;

this->next=NULL;

}

intdata;

TC*next;

};

voidInsert(TC*P,intdata)

{

TC*temp=newTC(data);

TC*pParent=P

TC*pNext=p-)next

while(pNext)

{

if(data>pNext->data)

{

//********1********

temp->next=pNexti

return;

}

else

{

pParent=pNext;

//********2********

}

}

if(pNext==NULL)

{

pParent->next=temp;

return;

}

}

voidprintf(TC*p)

{

//********3********

while()

{

cout<next->data<<"";

P=P->next;

}

cout<<ENDL;< p>

}

voidDelete(TC*p)

{

//********4********

TC*t1=;

TC*t2;

while(t1!=NULL)

{

t2=t1->next

deletetl;

t1=t2

}

}

voidmain()

{

inti=0;

TChead

do

{

intdata;

cout<<"请输入一个数字:"<<ENDL;< p>

cin>>data;

if(data==O)break;

Insert(&head,data);

}while(1);

printf(&head);

Delete(&head)

return;

}

}

答案:(1)应添加“pParenl->next=telnp;”。

(2)应添加“pNext=pNext->next;”。

(3)将“while()”补充完整为“while(P->next!=NULL)”。

(4)将“TC*t1=;”补充完整为“TC*t1=P->next;”。




考无忧小编tips

当一切都毫无希望时,切石工人在他的头上,敲击了上百次,而不见任何裂痕出现。但在第一百零一次时,石头被劈成两半。我体会到,并非那一击,而是前面的敲打使它裂开。我希望备考的考生在做二级C++试题时,只要你认准了,就不要轻言放弃,因为成功就在下一步。




文章推荐:

全国计算机等级考试可以不考一级直接考二级吗?

2019年全国计算机等级考试题库“二级MS Office 高级应用考试大纲”

全国计算机等级考试报考成功后可以退费吗?(内附计算机等级考试题库)


温馨提示:

考试想拿高分吗?更多计算机等级考试题库二级ms office试题请点击查看>>>二级ms office

想要了解更多的计算机等级考试题库请点击下载>>>计算机等级考试题库

想知道更多关于计算机等级考试题库的近期资讯吗?点击进入>>>计算机等级考试题库资讯


本文网址:http://www.k51.com.cn/info/jsjdjks/1906/1254203.html
选择分享到: