<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      數(shù)據(jù)結構學習記錄連載5(堆棧的學習)

      基本要求:

      1) 用繼承順序表類SeqList的方法建立順序棧類SeqStack,編寫程序實現(xiàn)十進制數(shù)和八進制數(shù)的轉換;

      2) 用繼承鏈表類LinList的方法建立順序棧類LinStack,編寫程序實現(xiàn)十進制數(shù)和八進制數(shù)的轉換;

      提高要求:

      1) 直接類定義和實現(xiàn)方法建立順序棧類SeqStack,編寫程序實現(xiàn)十六進制數(shù)和八進制數(shù)的轉換。

      2) 直接類定義和實現(xiàn)方法建立順序棧類LinStack,編寫程序實現(xiàn)十六制數(shù)和八進制數(shù)的轉換。

      說明:基本要求是用繼承的方式,前面的文章給出了被繼承的類,這里只給出完整的堆棧實現(xiàn)。

      1.SeqStack.h的代碼:

      #include "SeqList.h"

      class SeqStack : private SeqList 
      {
      public:
       SeqStack();
       virtual ~SeqStack();

       void Push(const DataType& item); //元素item入棧
       DataType Pop(void);     //出棧元素并返回
       DataType Peek(void) const;   //讀棧頂元素并返回
       int StackEmpty(void) const;  
       int GetSize(void) const;
       void ClearStack(void);
      };

      2.SeqStack.cpp的實現(xiàn)代碼

      /*
      * Copyright (c) 2009,FreshAir團隊嵌入式軟件研發(fā)組
      * All rights reserved.
      *
      * 文件名稱:SeqStack.cpp

             * 摘 要: 順序堆棧的實現(xiàn)
      *
      * 當前版本:1.0
      * 作 者: 吳友強
      * 完成日期:2009年10月16日
      *
      * 取代版本:
      * 原作者 :
      * 完成日期:
      */
      #include "SeqStack.h"
      SeqStack::SeqStack()
      {
       SeqList();
      }

      SeqStack::~SeqStack()
      {

      }

      void SeqStack::Push(const DataType& item)  //元素item入棧
      {
       if (GetListSize() == MaxListSize)
       {
        cout << "堆棧已滿!" << endl;
        exit(0);
       }
       
       Insert(item, GetListSize());
      }

      DataType SeqStack::Pop(void)     //出棧元素并返回
      {
       if (GetListSize() == 0)
       {
        cout << "堆棧以空!" << endl;
        exit(0);
       }

       return Delete(GetListSize() - 1);
      }

      DataType SeqStack::Peek(void) const   //讀棧頂元素并返回
      {
       return GetData(GetListSize() - 1);
      }

      int SeqStack::StackEmpty(void) const
      {
       return ListIsEmpty();
      }

      int SeqStack::GetSize(void) const
      {
       return GetListSize();
      }

      void SeqStack::ClearStack(void)
      {
       ClearList();
      }

      3.SeqListTest.cpp完成10進制與8進制的相互轉化

      /*
      * Copyright (c) 2009,FreshAir團隊嵌入式軟件研發(fā)組
      * All rights reserved.
      *
      * 文件名稱:SeqListTest.cpp
      * 摘 要: 完成10進制和8進制的相互轉換
      *
      * 當前版本:1.0
      * 作 者: 吳友強
      * 完成日期:2009年10月16日
      *
      * 取代版本:
      * 原作者 :
      * 完成日期:
      */

      #include "SeqStack.h"

      int main(int argc, char *argv[])
      {
       SeqStack myStack;
       int jz, num, temp, result;
       result = 0;
       int i, j;
       cout << "請選擇輸入的是十進制還是八進制(0,1):" ;
       cin >> jz;
       cout << "請輸入需要轉換的數(shù)字:";
       cin >> num;
       
       if (jz == 0)
       {
        while (num / 8 != 0)
        {
         temp = num % 8;
         myStack.Push(temp);
         num = num / 8;
        }
        myStack.Push(num);     //將最高位也入棧
        for (i=myStack.GetSize()-1; i>=0; i--)
        {
         temp = myStack.Pop();
         for (j=0; j<i; j++)
         {
          temp *= 10;
         }
         result += temp;
        }
        cout << "result is: 0" << result << endl;
       }
       else if (jz == 1)
       {
        while (num / 10 != 0)
        {
         temp = num % 10;
         myStack.Push(temp);
         num = num / 10;
        }
        myStack.Push(num);
        for (i=myStack.GetSize()-1; i>=0; i--)
        {
         temp = myStack.Pop();
         for (j=0; j<i; j++)
         {
          temp *= 8;
         }
         result += temp;
        }
        cout << "result is: " << result << endl;
       }
       else
       {
        cout << "輸入出錯,程序退出!" << endl;
        exit(0);
       }
       
       return 0;
      }

      posted @ 2009-10-19 16:59  薔薇理想人生  閱讀(233)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产一区二区视频在线看| 亚洲区欧美区综合区自拍区| 亚洲国产精品自在拍在线播放蜜臀| 午夜福利yw在线观看2020| 国产愉拍91九色国产愉拍| 日本高清不卡一区二区三| 国产v亚洲v天堂a无码99 | 国产精品国产精品偷麻豆| 国产一区二区三区黄色片| 少妇精品导航| 亚洲国产激情一区二区三区| 国产精品天天看天天狠| 中国女人熟毛茸茸A毛片| 亚洲成aⅴ人在线电影 | 亚洲一区中文字幕第十页| 久久日韩在线观看视频| 国产精品自拍视频免费看| 枝江市| 色悠悠国产精品免费观看| 人妻中文字幕亚洲精品| 国产对白熟女受不了了| 一本久道久久综合中文字幕| 免费看视频的网站| 久久精品免视看国产成人| 深夜视频国产在线观看| 久热这里只有精品12| 日韩人妻无码一区二区三区| 国产av普通话对白国语| 亚洲熟女一区二区av| 男女裸交免费无遮挡全过程| 不卡一区二区三区视频播放 | 国产睡熟迷奷系列网站| 欧美性XXXX极品HD欧美风情| 午夜精品福利亚洲国产| 美女一级毛片无遮挡内谢| 丰满岳乱妇久久久| 亚洲一区久久蜜臀av| 亚洲色大成网站WWW久久| 午夜福利片1000无码免费| www国产成人免费观看视频| 亚洲av成人午夜福利|