• <output id="aynwq"><form id="aynwq"><code id="aynwq"></code></form></output>

    <mark id="aynwq"><option id="aynwq"></option></mark>
  • <mark id="aynwq"><option id="aynwq"></option></mark><label id="aynwq"><dl id="aynwq"></dl></label>
  • 學習啦>創業指南>職場>面試題>

    騰訊技術類校園招聘筆試試題及答案(4)

    時間: 敏敏644 分享

      二. 填空題(共40分)

      本程序從正文文件text.in讀入一篇英文短文,統計該短文中不同單詞和它的出現次數,并按詞典編輯順序將單詞及它的出現次數輸出到正文文件word.out中.

      程序用一棵有序二叉樹存儲這些單詞及其出現的次數,一邊讀入一邊建立.然后中序遍歷該二叉樹,將遍歷經過的二叉樹上的節點的內容輸出.

      程序中的外部函數

      int getword(FILE* pFile,char* pszWordBuffer,int nBufferLen);

      從與pFile所對應的文件中讀取單詞置入pszWordBuffer,并返回1;若單詞遇文件尾,已無單詞可讀時,則返回0.

      #include

      #include

      #include

      #include

      #define SOURCE_FILE "text.in"

      #define OUTPUT_FILE "word.out"

      #define MAX_WORD_LEN 128

      typedef struct treenode

      {

      char szWord[MAX_WORD_LEN];

      int nCount;

      struct treenode* pLeft;

      struct treenode* pRight;

      }BNODE;

      int getword(FILE* pFile,char* pasWordBuffer,int nBufferLen);

      void binary_tree(BNODE** ppNode,char* pszWord)

      {

      if(ppNode != NULL && pszWord != NULL)

      {

      BNODE* pCurrentNode = NULL;

      BNODE* pMemoNode = NULL;

      int nStrCmpRes=0;

      ____(1)_____;pCurrentNode=*ppNode

      while(pCurrentNode)

      {

      /*尋找插入位置*/

      nStrCmpRes = strcmp(pszWord, ___(2)___ );pCurrentNode->nCount

      if(!nStrCmpRes)

      {

      ___(3)___; pCurrentNode->nCount++

      return;

      }

      else

      {

      ___(4)___; pMemoNode=pCurrentNode

      pCurrentNode = nStrCmpRes>0? pCurrentNode->pRight : pCurrentNode->pLeft;

      }

      }

      }

      pCurrent=new BNODE;

      if(pCurrentNode != NULL)

      {

      memset(pCurrentNode,0,sizeof(BNODE));

      strncpy(pCurrentNode->szWord,pszWord,MAX_WORD_LEN-1);

      pCurrentNode->nCount=1;

      }

      if(pMemoNode==NULL)

      {

      ___(5)___; *ppNode= pCurrentNode

      }

      else if(nStrCmpRes>0)

      {

      pMemoNode->pRight=pCurrentNode;

      }

      else

      {

      pMemoNode->pLeft=pCurrentNode;

      }

      }

      void midorder(FILE* pFile,BNODE* pNode)

      {

      if(___(6)___) return;!pNode||!pFile

      midorder(pFile,pNode->pLeft);

      fprintf(pFile,"%s %d\n",pNode->szWord,pNode->nCount);

      midorder(pFile,pNode->pRight);

      }

      void main()

      {

      FILE* pFile=NULL;

      BNODE* pRootNode=NULL;

      char szWord[MAX_WORD_LEN]={0};

      pFile=fopen(SOURCE_FILE,"r");

      if(pFile==NULL)

      {

      printf("Can't open file %s\n",SOURCE_FILE);

      return;

      }

      while(getword(pFile,szWord,MAX_WORD_LEN)==1)

      {

      binary_tree(___(7)___);// pRootNode,szWord

      }

      fclose(pFile);

      pFile=fopen(OUTPUT_FILE,"w");

      midorder(pFile,pRootNode);

      fclose(pFile);

      }

    228953 主站蜘蛛池模板: 最近中文国语字幕在线播放 | 性猛交╳xxx乱大交| 国产成人免费a在线视频app| 中文字幕日韩一区二区三区不 | 丰满岳妇乱一区二区三区| 特级无码毛片免费视频| 国产成人久久精品二区三区| 一卡二卡三卡在线观看| 欧美一级www| 午夜人妻久久久久久久久| 2018在线观看| 成人18视频日本| 亚洲人成人77777在线播放| 精品综合久久久久久99| 国产精品2018| xxxxbbbb国产精品| 最新亚洲人成无码网www电影| 免费播放在线日本感人片| 黑寡妇被绿巨人擦gif图| 天天干天天拍天天操| 久久国产精品一国产精品| 污污视频网站免费| 国产91成人精品亚洲精品| 色www永久免费| 妞干网免费在线观看| 久久精品免费一区二区三区| 国产寡妇树林野战在线播放| 国产免费久久精品99久久| 一本色道久久88加勒比—综合 | 亚洲综合在线一区二区三区| 韩国免费A级作爱片无码| 国内精自视频品线六区免费| 中文字幕第13亚洲另类| 欧美亚洲人成网站在线观看| 免费的看黄网站| 青柠直播在线观看高清播放| 国产精品视频免费播放| 七仙女欲春3一级裸片在线播放 | 91精品国产91久久久久青草| 无码精品黑人一区二区三区| 亚洲人成在线播放网站岛国|