2018年3月计算机二级C++语言程序设计:上机试题及答案(一)

发布于 2018-03-20 14:51  编辑:XIE
0
计算机等级考试题库 扫码微信刷题

2018年3月计算机二级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()

{

coutdata<<"";

P=P->next;

}

cout<  }

voidDelete(TC*p)

{

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

TC*t1=;

TC*t2;

while(t1!=NULL)

{

t2=t1->next:

deletetl;

t1=t2:

}

}

voidmain()

{

inti=0;

TChead:

do

{

intdata;

cout<<"请输入一个数字:"<  cin>>data;

if(data==O)break;

Insert(&head,data);

}while(1);

printf(&head);

Delete(&head):

return;

}

}


文章推荐:

2018年3月计算机二级考试准考证打印流程

2018年3月计算机二级考试准考证打印常见问题

计算机等级考试准考证打印错过时间了怎么办?


考无忧小编推荐:

更多计算机等级考试真题及答案>>>点击查看

想知道更多关于计算机等级报考指南、考试时间和考试信息的最新资讯在这里>>>点击查看

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