首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明了一个单向链表类sLst。sList的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Pepend。在main函数中给出了一组测试数据,此时程序的输出
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明了一个单向链表类sLst。sList的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Pepend。在main函数中给出了一组测试数据,此时程序的输出
admin
2017-02-21
43
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明了一个单向链表类sLst。sList的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Pepend。在main函数中给出了一组测试数据,此时程序的输出应为:
B->A->
###
A->
###
A->
###
exiting inner block
exiting outer block
注意:只在函数Prepend的“********333********”和“********666********”之间填入若干语句,不要改动程序中的其他内容。
//SLiSt.hstruct sListItem{
char data;
sListItem * next;
};
class sList{public:
sList():h(0){}//0表示空链表
~sList();
void Prepend(char c);//在链表前端加入元素
void Del();//删除链表首元素
sListItem * First()const{Eeturn h;)//返回链表首元素
void Print()const;//打印链表内容
void Release();//销毁链表
private:
sListItem * h;//链表头
},
void writeToFile(const char * );
//main.cpp
#include<iostream>
#include"sList.h"
suing namespace std;
sList∷~sList()
{
Release();
}
void sList∷Prepend(char c)
{
//********333********
//********666********
}
void sList∷Dei()
{
sListltem * 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###"<<end1;
}
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"<<end1;
}
cout<<"exiting outer block"<<
end1;
writeToFile("");
return 0;
}
选项
答案
sListItem * temp=new sListItem; //动态分配空间给结构体temp的指针 temp->data=c; //把c赋值于结构体temp成员data temp->next=h; //把h赋值于结构temp体成员next h=temp; //把temp赋值给h,即h指向temp 指向的空间
解析
主要考查考生对链表的掌握,成员函数Prepend的功能是在链表头部加入一个新元素。形参e是一个char型变量,因此要定义一个新的结构体指针temp,并给它分配sListltem类型空间,把形参c中的值赋给temp的数据域,并使temp通过指针链接到链表E。
转载请注明原文地址:https://kaotiyun.com/show/qBAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是【】。#include<iostream.h>voidfun(){staticinta=0;a+=2;cout<<
下列程序是用来判断数组中特定元素的位置所在,则输出结果为#include<conio.h>#include<iostream.h>intfun(int*s,intt,int*k){i
C++语言函数中不能由系统自动生成的是
只能作为成员函数重载的是
设数组data[m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执行出队操作后其头指针front值为( )。
数据的逻辑结构在计算机存储空间中的存放形式称为数据的______。
设有如下说明 typedef struct {int n;char c;double x;}STD; 则有以下选项,能正确定义结构体数组并赋初值的语句是
在一个容量为32的循环队列中,若头指针front=3,尾指针rear=2,则该循环队列中共有______个元素。
如果有以下定义及初始化:inta=3,*p=&a;则由此可以推断,*p的值是()。
如果有以下定义及初始化:inta=3,*p=&a;则由此可以推断,*p的值是()。
随机试题
《精神卫生法》规定承担精神障碍患者再次诊断的精神科执业医师人数是
卡普兰和诺顿提出的平衡计分卡是一种全面、综合的控制方法,平衡计分卡的控制指标有财务、客户、_____以及_____四个方面构成。
对于腮腺区肿物不宜进行的检查是
唐某作为发明人,依法应享有哪些权利?()。甲公司在未获得专利前,与乙公司签订的专利实施许可合同是否有效?如甲乙双方因此合同发生纠纷,应如何适用有关法律?()。
在麦克斯韦速率分布定律中,速率分布函数f(V)的意义可理解为()。
炉窑砌筑工程中,可用作隔热耐火砖的是()。
一棵二叉树中共有80个叶子节点与70个度为1的节点,则该二叉树中的总节点数为()。
SpeakerA:IlikewatchingoldmoviesandIthinktheyarethebest.SpeakerB:【D1】______eventhoughthey’reinblackandwhite
WhatwillYahoo’shomepagebelikeafterredesigning?Itwillprovidemorespacefor______.Whenwillthenewhomepagebeput
A、Theapplesandpearsmightnotbesogood.B、Theapplesarenotasgoodasthepears.C、Theapplesandpearsareverygood.D、
最新回复
(
0
)