首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件pmj3,其中声明了一个单向链表类sList。sList的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Prepend。在main函数中给出了一组测试数据,此时程序的输出应为: B->A->
请打开考生文件夹下的解决方案文件pmj3,其中声明了一个单向链表类sList。sList的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Prepend。在main函数中给出了一组测试数据,此时程序的输出应为: B->A->
admin
2019-04-24
90
问题
请打开考生文件夹下的解决方案文件pmj3,其中声明了一个单向链表类sList。sList的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Prepend。在main函数中给出了一组测试数据,此时程序的输出应为:
B->A->
###
A->
###
A->
###
exiting inner block
exiting outer block
注意:只在函数Prepend的“//********333********”和“//********666********”之间填入若干语句,不要改动程序中的其他内容。
//SList.h
struct sListItem{
char data;
sListTtem*next;
};
class sList;{
public:
sList():h(0){)
//0表示空链表
~sList();
void Prepend(char c);
//在链表前端加入元素
void Del();
//删除链表首元素
sListItem* First() const {
return h;}
//返回链表首元素
void Print()const;
//打印链表内容
void Release();
//销毁链表
private:
sListItem*h;
//链表头
};
void writeToFile(const char* );
//main.cpp
#include
#include"sList.h"
using namespace std;
sList::~sList()
{
Release();
}
void sList::Prepend(char c)
{
//********333********
//********666********
}
void sList::Del()
{
sListItem*temp=h;
h=h->next;
delete temp;
}
void sList::Print()const
{
sListItem*temp=h;
while(temp!=0)
//判断是否到达链表尾部
{
cout <
data << "
-> ";
temp=ernp->next;
}
cout << "\n###" <
}
void sList::Release()
{
while(h!=0)
Del();
}
int main()
{
sList*ptr;
{
sList obj;
obj.Prepend(’A’);
obj.Prepend(’B’);
0bj.Print();
0bj.Del();
obj.Print();
ptr=&obj ;
ptr->Print();
cout<<"exiting inner block"<
}
cout<<"exiting outer block"<
writeToFile(" ");
return 0;
}
选项
答案
SListItem * temp=new SListItem; //动态分配空间给结构体temp的指针temp->data=C: //65 C赋值于结构体temp成员data temp->next=h: //把h赋值于结构temp体成员next h=temp; //把temp赋值给h.即h指向temp指向的空间
解析
主要考查考生对链表的掌握,成员函数Prepend的功能是在链表头部加入一个新元素。形参c是一个char型变量,因此要定义一个新的结构体指针temp,并给它分配sListItem类型空间,把形参c中的值赋给temp的数据域,并使temp通过指针链接到链表上。
转载请注明原文地址:https://kaotiyun.com/show/1OAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下递归函数:intFun(intn){if(n<=1)return1;______请补充完整,使得函数Fun能够正确计算形参n的阶乘。
对于一个类定义,下列叙述中错误的是()。
下列程序的输出结果是()。#include<iostream>usingnamespacestd;template<typenameT>Tfun(Ta,Tb){return(a<=b)?a:b;)
下列叙述中正确的是()。
有如下类声明:classTestClass1{intk;public:voidset(intn){k=n;}intget()const{returnk;}};classT
下面关于虚函数的描述中正确的是()
下列关于this指针的叙述中,正确的是()
对于派生类的构造函数,在定义对象时构造函数的执行顺序为:先执行调用______的构造函数。再执行调用子对象类的构造函数,最后执行派生类的构造函数体中的内容。
在下面函数的横线处填上适当的内容,使该函数能够利用递归方法求解字符串str的长度(不得使用系统提供的字符串处理函数)。intGetLen(char*str){if(______)return0;elsereturn
按照标识符的要求,下列选项中,()符号不能组成标识符。
随机试题
下列关于多元智力理论叙述错误的是()
小步态正确的描述有
A、生地黄B、玄参C、牡丹皮D、赤芍E、紫草功能清热凉血,养阴生津的药物是
下列选项中为非霍奇金淋巴瘤的是()。
在有煤尘爆炸危险的煤层中,掘进工作面爆破前后,附近()必须洒水降尘.
电子托运单订舱是实现未来我国“无纸化贸易运输”项目的一个发展趋势,电子订舱的优点主要在于()。
2018年3月23日,美国正式签署对华贸易备忘录,将600亿美元中国商品加征关税,并限制中国企业对美投资并购。作为国际贸易规则曾经的主要缔造者则之一,美国的做法有明显的“破坏者”性质,为世界经济埋下失序的隐患。按照国际贸易规则,在发生贸易争端,经双方协商无
试述法治的基本理念。
有确凿的证据显示,偏头痛(严重的周期性头痛)不是由于心理上的原因引起的,而是完全由生理上的原因所致。然而,数项研究结果表明那些因为偏头痛受到专业化治疗的人患有标准心理尺度的焦虑症的比率比那些没经专业治疗的偏头痛患者的高。下面哪一项如果正确,最能有助于解决上
Whetheranoperationshouldbeperformedinthiscase_____verymuchonthepatient’sgeneralcondition.
最新回复
(
0
)