首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹pmj3下的工程proj3,其中声明了一个单向链表类sLst。sList的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Prepend。在main函数中给出了一组测试数据,此时程序的输出
请使用VC6或使用【答题】菜单打开考生文件夹pmj3下的工程proj3,其中声明了一个单向链表类sLst。sList的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Prepend。在main函数中给出了一组测试数据,此时程序的输出
admin
2021-05-06
70
问题
请使用VC6或使用【答题】菜单打开考生文件夹pmj3下的工程proj3,其中声明了一个单向链表类sLst。sList的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Prepend。在main函数中给出了一组测试数据,此时程序的输出应为:
B->A-->
###
A->
###
A->
###
exitinginnerblock
exitingouterblock
注意:只在函数Prepend的“//**********333**********”
和“//**********666**********”之间填入若干语句,不要改动程序中的其他内容。
//SList.h
structsListItem{
chardata;
sListItem*next;
};
classsList{
public:
sList():h(0){}
//0表示空链表
~sList();
voidPrepend(charc);
//在链表前端加入元素
voidDel();
//删除链表首元素
sListItem*First()const{returnh;}
//返回链表首元素
voidPrint()COnSt;
//打印链表内容
voidRelease();
//销毁链表
private:
sListItem*h;
//链表头
};
voidwriteTOFile(constchar*);
//main.cpp
#include
#include"sList.h"
usingnamespacestd,
sList::一sList()
{
Release();
}
voidsList::Prepend(charc)
{
//********333********
//********666********
}
voidsList::Del()
{
sListltem*temp=h;
h=h->next;
deletetemp;
}
voidsList::Print()const
{
sListItem*temp=h;
while(temp!=0)
//判断是否到达链表尾部
{
cout<
data<<"->";
temp=temp->next;
}
cout<<"\n###"<
}
voidsList::Release()
{
while(h!=0)
Del();
}
intmain()
{
sList*ptr;
{
sListobj;
obj.Prepend(’A’);
obj.Prepend(’B’);
obj.Print();
obj.Del();
obj.Print();
ptr=&obj;
ptr->Print();
cout<<"exitinginnerblock"<
}
cout<<"exitingouterblock"<
writeToFile("");
return0;
}
选项
答案
sLiStItern*temp=newsLiStItem; //动态分配空间给结构体temp的指针terap->data=c; //把C赋值于结构体temp成员datagemp->next=h; //把h赋值于结构terap体成员nexth=temp; //把temp赋值给h,即h指向temp指向的空间
解析
主要考查考生对链表的掌握,成员函数Prepend的功能是在链表头部加入一个新元素。形参C是一个char型变量,因此要定义一个新的结构体指针temp,并给它分配sListItem类型空间,把形参C中的值赋给temp的数据域,并使temp通过指针链接到链表上。
转载请注明原文地址:https://kaotiyun.com/show/vTfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
将运算符“+”重载为非成员函数,下列原型声明中,错误的是()。
有如下语句序列:charstr[10];cin>>str;当从键盘输入“Ilovethisgame”时,str中的字符串是()。
下列关于虚基类的描述中,错误的是()。
己知表达式++a中的“++”是作为成员函数重载的运算符,则与++a等效的运算符函数调用形式为()。
若字符指针p所指向的字符串为"abcdefg",在执行语句()。char*ap=newchar[strlen(p)+1];之后,ap指向的字符数组的元素个数为
面向对象方法中,继承是指()。
有如下程序:#include<iostream>usingnamespacestd;classBase{public:virtualvoidShow(){cout<<’B’;}};
下列代码段中声明了3个类:classPerson}};classStudent:publicPerson{};classUndergraduate:Student{};下列关于这些类之闻关系的描述中,错误的是
若MyClass为一个类,执行“MyClassa[4],*p[5];”语句时会自动调用该类构造函数的次数是()。
设一棵完全二叉树共有700个结点,则此二叉树中的叶子结点数为()。
随机试题
下列哪种物质能促使胃蛋白酶原转变为胃蛋白酶
强直性脊柱炎的主要临床表现是
女,35岁,已婚。10小时前出现上腹部胀痛,6小时前疼痛转移至右下腹,伴恶心、呕吐、体温升高。查体:腹肌紧张,右下腹压痛、反跳痛阳性,肠鸣音减弱。血常规示:白细胞总数及中性粒分类升高。术后5天,患者出现下腹坠胀、大便频繁、里急后重,伴尿频、尿痛。最可能
检查中要注意甄别证件的真伪,以下属于真证的识别特征的是()
反垄断执法机构、银监会、保监会、财政部门、外汇管理机关、期货监督管理机构、工商行政管理部门有权查询和冻结个人储蓄存款。()
小学阶段的儿童正处在自我意识发展的()阶段,对自己的行为和行为结果的评价已经有了一定程度的概括与独立。
下列说法正确的是()。
统计数据表明:整个20世纪,全球范围内火山爆发的次数逐年缓慢上升,只有在两次世界大战期间,火山爆发的次数明显下降。科学家同样正确地揭示:整个20世纪,全球火山的活动性处于一个几乎不变的水平上,这和19世纪的情况形成了鲜明的对比。如果上述断定是真的,
"AllworkandnoplaymakesJackadullboy"isapopularsayingintheUnitedStates.Othercountrieshavesimilarsayings.It
A、 B、 C、 C
最新回复
(
0
)