请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明了一个单向链表类sList。sList的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Prepend。在main函数中给出了一组测试数据,此时程序的

admin2016-08-19  63

问题 请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明了一个单向链表类sList。sList的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Prepend。在main函数中给出了一组测试数据,此时程序的输出应为:
    B->A->
    ###
    A->
    ###
    A->
    ###
    exiting inner block
    exiting outer block
    注意:只在函数Prepend的“//**********333**********”和“//**********666**********”之间填入若干语句,不要改动程序中的其他内容。
1  //SList.h
2  Struct SLiStItem{
3    char data;
4    sListItem*next;
5  };
6  clasS sList{
7 public:
8    sList():h(0){}
9  //0表示空链表
10    -sList();
ll    void Prepend(char c);
12  //在链表前端加入元素
13    VOid Del();
14  //删除链表首元素
15    SLiSt工tem*Fimst()conSt{returnh;}
16  //返回链表首元素
17    VOid Print()const;
18  //打印链表内容
19    void Release();
20    //销毁链表
21   private:
22    sListItem*h;
23  //链表头
24  };
25  void writeToFile(const char*};
1  //main.cpp
2  #include
3  #include"sList.h"
4  USing namespace std;
5
6  sList::~sList()
7    {
8    Release();
9  )
10  void sList::Prepend(char C)
11  {
12    //**********333**********
13
14
15    //**********666**********
16    }
17  void sList::Del()
18  {
19    sListItem*temp=h;
20   h=h->next:
21   delete temp;
22    }
23  void sList::Print()const
24    {
25    sListItem*temp=h;
26    while(temp!=0)//判断是否到达链表尾部
27    {
28    cout<";
29   temp=temp一>next;
30    }
31    cout  <<"\n###" <32    }
33  void sList::Re2ease()
34    {
35    while(h!=0)
36  Del();
37  }
38  int main()
39  {
40    sList*ptr;
41    {
42    sList obj;
43    obj.Prepend(’A’);
44    obj.Prepend(’B’);
45    obj.Print();
46    obj.Del();
47    obj.Print();
48   ptr=&obj;
49    ptr->Print();
50    cout<<"exiting inner block"<5l    }
52    cout<<"exiting outer block"<53    writeToFille(" ");
54    return 0;
55    }

选项

答案1 sListItem水ternp=new sListItem;//动态分配空间给结构体kemp的指针 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,并给它分配sListhem类型空间,把形参c中的值赋给temp的数据域,并使temp通过指针链接到链表上。
转载请注明原文地址:https://kaotiyun.com/show/u4Np777K
0

最新回复(0)