首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj3,其中声明了一个单向链表类sList。sList的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Prepend。在main函数中给出了一组测试数据,此时程序的输出应为: B一>A一
请打开考生文件夹下的解决方案文件proj3,其中声明了一个单向链表类sList。sList的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Prepend。在main函数中给出了一组测试数据,此时程序的输出应为: B一>A一
admin
2020-04-07
77
问题
请打开考生文件夹下的解决方案文件proj3,其中声明了一个单向链表类sList。sList的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Prepend。在main函数中给出了一组测试数据,此时程序的输出应为:
B一>A一>
###
A一>
###
A一>
###
exiting inner block
exiting outer block
注意:只在函数Prepend的"//********333********”和“//********666********”之间填入若干语句,不要改动程序中的其他内容。
//SList.h
Struer sListItem{
char data;
sListItem * 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<iostream>
#include"sLict.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 <<temp 一>data << "一>";
temp=temp一>next;
}
cout: <<"\n###" <<endl;
}
void sList::Release()
{
while(h!=0)
Del();
}
int main()
{
sList *ptr;
{
sList obj;
obj.Prepend(’A’);
obj.Prepend(’B’);
obj.Print();
obj.Del();
obj.Print:();
ptr=&obj;
ptr一>Print();
tout<<"exiting inner block"<<endl;
}
cout<<"exiting outer block"<<endl;
writeToFile("");
return 0;
}
选项
答案
1 sListItem * temp = new sLlstItem; //动态分配空间给结构体temp的指针 2 temp一>data =c; //把c赋值于结构体temp成员data 3 temp一>next=h; //把h赋值于结构temp体成员next 4 h=temp; //把temp赋值给h,即h指向temp指向的空间
解析
主要考查考生对链表的掌握,成员函数Prepend的功能是在链表头部加入一个新元素。形参c是一个char型变量,因此要定义一个新的结构体指针temp,并给它分配sListItem类型空间,把形参c中的值赋给temp的数据域,并使temp通过指针链接到链表上。
转载请注明原文地址:https://www.kaotiyun.com/show/9u8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
程序设计语言的工程特性之一为()。
A、 B、 C、 D、 B在引用函数模板时,如果没在函数名和参数之间加上类型参数,就默认表示参数类型严格按照模板定义的类型匹配;如果在函数名和参数之间加上了类型参数,则对实参自动进行类型转换。
在C++语言中,一个函数的定义前加上关键字【】时,该函数就声明为内联函数。
如果一个类至少有一个纯虚函数,那么就称该类为()。
下列程序输出的结果是()。#include<stdio.h>sub1(chara,charb){charc;c=a;a=b;b=c:}sub2(char*a,charb){charc;c=*a;”a=b:b=c
下面关于break语句的描述中,不正确的是
以下C++语言中用于单行注释的是
下面是类MyChss的定义,对定义中语句描述正确的是()。classMyClass{public:voidMyClass(inta){X=a;)//①intf(inta,intb)//②{X=
有如下类定义:classPoint{private:staticinthow_many;};______how_many=0;要初始化Point类的静态成员how_many,在下画线处应填入的内容是
若有定义语句“intx=10;”,则表达式“x
随机试题
如果申请人通过援引在先申请的方式在PCT国际申请中加入了递交申请时遗漏的部分,当该申请进入中国国家阶段时,下列说法正确的是?
大国和大国集团在国际格局中具有举足轻重的作用,理由是()
甲公司与乙公司签订了一份手机买卖合同,约定:甲公司供给乙公司某型号手机1000部,每部单价1000元,乙公司支付定金30万元,任何一方违约应向对方支付合同总价款30%的违约金。合同签订后,乙公司向甲公司支付了30万元定金,并将该批手机转售给丙公司,每部单价
背景资料:某项目部在北方地区承担某城市主干路道路工程施工任务,设计快车道宽为11.25m,辅路宽为9m。项目部应业主要求,将原计划安排在次年4月初施工的沥青混凝土面层,提前到当年11月上、中旬,抢铺出一条快车道以缓解市交通。问题:在临近冬
【背景资料】某工程基坑深8m,支护采用桩锚体系,桩数共计200根,基础采用桩筏形式,桩数共计400根,毗邻基坑东侧12m处有既有密集居民区,居民区和基坑之间的道路下1.8m处埋设有市政管道。项目实施过程中发生如下事件:事件1:在
财务会计主要是向会计主体内部管理者提供进行经营规划、经营管理、预测决策所需的相关信息,侧重于管理者对会计信息的新需求。()
()是美国最著名的认知教育心理学家,他主张学习的目的在于发现学习的方式。
下列属于突发事件处置中公安机关的基础职责的有()。
明清时期的苏州为鱼米之乡河道纵横一水网密集。市镇多依水而设,既有利于市镇与相邻四方村落的_______联系,又使得每一市镇影响的范围不是很大,从而形成乡村一基层市镇一中心都市的经济社会分层结构。市镇的分布相应呈_______结构。
A、Itismucklikepoint-making.B、Itseeksnobackgroundinformation.C、ItismoreformalthantheBritishkind.D、Itpreparesm
最新回复
(
0
)