首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程pmj3,其中声明了一个单向链表类sList。sLst的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Prepend。在main函数中给出了一组测试数据,此时程序的输出
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程pmj3,其中声明了一个单向链表类sList。sLst的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Prepend。在main函数中给出了一组测试数据,此时程序的输出
admin
2017-07-04
48
问题
请使用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://jikaoti.com/ti/F6t0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
设有语句 int n,m; char a[5],b; cin>>n>>a>>m>>b; 为了分别将10和20分别赋给n和m,look赋给a,t赋给b,则正确的输入为
下列程序的运行结果是【 】。#include<iomanip.h>intFunc(int*a,intn){ints=1;for(inti=0;i<n;i++)s*=*a++;return
多继承情况下,派生类对基类成员的访问会出现二义性。解决二义性的方法是【 】、【 】和【 】。
下列程序编译时发现pb->f(10);语句出现错误,其原因是【 】。#include<iostream.h>classBase{public:voidf(intx){cout<<"Base:"<<
数据结构分为逻辑结构和存储结构,循环队列属于______结构。
关于类和对象不正确的说法是( )。
若有以下程序:#include<iostream>usingnamespacestd;classpoint{private:intx,y;public:point(
若有下面的说明和定义:structtest{charm2;floatm3;unionuu{charu1[5];floatu2;}u
编制一个好的程序,首先要确保它的正确性和可靠性,还应强调良好的编程风格。在选择标识符的名字时应考虑()。
随机试题
A、①B、②C、③D、④D
下列关于休克微循环收缩期生理变化的描述,错误的是
A、特异性细胞免疫B、特异性体液免疫C、非特异性细胞免疫D、非特异性体液免疫E、以上全不对偶联毒素的单克隆抗体
女性,60岁。反复黑便,呕吐咖啡色液体1月余,消瘦,腹胀,未触及肿块,血红蛋白5g,白细胞6.6×109/L。最大可能是
以下哪一项是痿证与痹证的主要鉴别点
注册咨询工程师(投资)的权利包括()。
以下建筑耐火等级不应低于二级的是()。
简述学前儿童的教育如何体现直观形象性。
观念的转变是一个长期的、潜移默化的过程,尤其是在我国从计划经济向市场经济转变的过程中,强化企业的社会责任,加强企业的道德管理,建立有效的信用体系,需要付出长期的努力。最适合做这段文字标题的是:
Havingconsecutivelywontheirlastthreegames,theAtlantaBravesgointothefinalroundwithalotof_____.
最新回复
(
0
)