首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程pmj3,其中声明了一个单向链表类sList。sLst的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Prepend。在main函数中给出了一组测试数据,此时程序的输出
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程pmj3,其中声明了一个单向链表类sList。sLst的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Prepend。在main函数中给出了一组测试数据,此时程序的输出
admin
2017-07-04
81
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程pmj3,其中声明了一个单向链表类sList。sLst的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Prepend。在main函数中给出了一组测试数据,此时程序的输出应为:
B一>A一>
###
A一>
###
A一>
###
exiting inner block
exiting outer block
注意:只在函数Prepend的“//**********333**********”和“//**********666**********”之间填入若干语句,不要改动程序中的其他内容。
//SList.h
struct 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
#include”sList.h”
us ing 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=temp一>next;
}
cout<<”\n###”<
}
void sList::Release()
{
while(h!=0)
Del();
}
int main()
{
sLisL*ptr;
{
sList obj;
obj.Prepend(’A’);
obj.Prepend(’B’);
obj.Print();
obj.Del();
obj.Print();
pfir=&obj;
pLr一>Print();
tout<<”exiting inner block”<<
end1;
}
couL<<”exiting outer block”<<
endl;
writeToFile(””);
return 0;
}
选项
答案
sLiStItem*temp=new sLiStItern; //动态分配空间给结构体ternp的指针 terap一>data=c; //把c赋值于结构体temp成员data ternp一>next=h; //把h赋值于结构ternp体成员next h=temp; //把temp赋值给h,即h指向temp指向的空间
解析
主要考查考生对链表的掌握,成员函数Prepend的功能是在链表头部加入一个新元素。形参c是一个char型变量,因此要定义一个新的结构体指针temp,并给它分配sListItem类型空间,把形参c中的值赋给temp的数据域,并使temp通过指针链接到链表上。
转载请注明原文地址:https://kaotiyun.com/show/7QAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列程序执行结果是 #include <iostream.h> class A { public: int a; A():a(10){cout<<a<<endl;} }; void main()
数据结构分为
若需要利用形参直接访问实参,则应把形参变量说明为( )参数。
在下面程序的横线处填上适当的语句,使该程序执行结果为10。#include<iostream>usingnamespacestd;classMyClass{public:MyClasS(in
设有以下变量定义,并已赋确定的值,charw;intx;floaty;doublez;则表达式:w*x+z-y所求得的数据类型为______。
将7个数据进行插入排序,在最坏情况下需要比较的次数是
下列运算符中,*运算符在C++中不能重载()。
以下选项中合法的用户标识符是
以下都是C++语言标识符的是()。
数据流图采用4种符号表示______、数据源点和终点、数据流向和数据加工。
随机试题
A.异染颗粒B.硫磺颗粒C.内基小体D.原体E.始体白喉杆菌的形态特点是
A.发热期B.低血压休克期C.少尿期D.多尿期E.恢复期继发性休克多发生在流行性出血热的哪一病期
下列关于TAT的叙述,其中错误的是
下图为项目建设各阶段投资目标计划值与实际值的比较,其中不包括()。
下列关于企业核心竞争力分析的表述中,正确的有______。
现代城市规划形成的行政实践是指()。
专利纠纷案件属于()的管辖。
柳永《望海潮》中“三吴都会”中的“三吴”是指现今的()。
背越式跳高助跑步数为8~12步,采用的助跑方式是()。
设f(x)在[a,b]上二阶可导,|f"(x)|≤M,又f(x)在(a,b)内能取到最小值,证明:|f’(a)|+|f’(b)|≤M(b-a).
最新回复
(
0
)