熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> 數據結構 >> 正文

北大自考數據結構上機考試復習總結[4]

2013-11-15 15:41:34  來源: 數據結構 
數據結構練習題

   編一C程序它能讀入一個大寫英文字母串(字母個數不多於字母兩兩不同)並構造以這些字母為關鍵字的二叉排序樹再輸出該二叉排序樹的後序序列和頁結點個數

  (注程序的可執行文件名必須是 eexe存於你的賬號或其debug目錄下否則無成績)

   編一C程序它能讀入兩組整數(每組整數都以為結束標記不算在內個數都不大於)並以從小到大的次序輸出既在第一組整數中也在第二組整數中的所有整數(同一個整數不能輸出兩次)(輸入時兩個相鄰的整數用空格隔開)

  (注程序的可執行文件名必須是 eexe存於你的賬號或其debug目錄下否則無成績)

  #include

  void paixu(int r[]int n)

  {

  int ijk;

  int exchange;

  for(i=;i<=n;i++)

  {

  exchange=;

  for(j=n;j>=i;j——)

  if(r[j+]< p>

  {

  k=r[j+];

  r[j+]=r[j];

  r[j]=k;

  exchange=;

  }

  if(!exchange)

  break;

  }

  }

  int jiaoji(int m[]int n[]int l[]int countaaint countbb)

  {

  int wxy;

  int i=j=k=;

  for(w=;w<=countaa;w++)

  {

  for(x=w+;x<=countaa;x++)

  {

  if(m[w]==m[x])

  {

  countaa——;

  for(y=x;y<=countaa;y++)

  {

  m[y]=m[y+];

  }

  x——;

  }

  }

  }

  while(i<=countaa)

  {

  for(j=;j<=countbb;j++)

  {

  if(m[i]==n[i])

  {

  l[k]=m[i];

  k++;

  break;

  }

  }

  i++;

  }

  return k;

  }

  void main()

  {

  int a[]b[]c[];

  int excange=icountAcountBcountC;

  printf(請輸入數組a \n);

  for(i=;i<=;i++)

  {

  scanf(%d&a[i]);

  if(a[i]==)

  break;

  }

  countA=i;

  paixu(acountA);

  printf(請輸入數組b \n);

  for(i=;i<=;i++)

  {

  scanf(%d&b[i]);

  if(b[i]==)

  break;

  }

  countB=i;

  paixu(bcountB);

  countC=jiaoji(abccountAcountB);

  printf(\n\n);

  for(i=;i<=countC;i++)

  printf(%dc[i]);

  printf(\n);

[]  []  []  []  


From:http://tw.wingwit.com/Article/program/sjjg/201311/23799.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.