⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 _sqlist.c

📁 数据结构的全部课件(机密文件)
💻 C
字号:
#define  maxsize   100
#include "stdlib.h"
#include<stdio.h>
#include "time.h"
typedef  struct
{ int data[maxsize];
  int last;
}sqlist;
void  initiate( sqlist *sq1)
{ sq1->last=0; }
int get(sqlist  la,int i)
{
	if(i<1 || i>la.last || la.last==0)
       printf("error");
    else  return la.data[i];
}
locate(sqlist  sq1,int  x)
{  int k,i;
   k=0;i=1;
while (i<=sq1.last &&  !k)
  if (sq1.data[i]==x)  k=i;
   else i++;
  return  k;
}
 void  setupsqlist ( sqlist  *sq1)
{ int i,j;
  for(i=1;i<=10;i++)
  sq1->data[i]=rand()%100;
   sq1->last=10;
 }
void  display(sqlist  sq1)
{  int  i;
  for (i=1;i<=sq1.last;i++)
   printf("%5d",sq1.data[i]);
}
void  insert (sqlist *la, int  i, int  x)
{ 
	if  (i>=0 &&i<= la->last+1 && la->last<maxsize-1)
	 {
		int j;
	   for ( j=la->last; j>=i ; j--)
		   la->data[j+1]=la->data[j];
	    la->data[i]=x;
		la->last=la->last+1;
	  }

	else
	     printf("%s","overflow!");
}
void  delete(sqlist  *la, int  i)
{
      if  (i>=1 &&  i<=la->last)
	    { int j;
	      for ( j=i+1; j<=la->last;j++)
		     la->data[j-1]=la->data[j];
	      la->last--;
	     }
	   else
	     printf("%s","error!");

      };
 void  exch(sqlist  *la)
     { int i,x;
       for (i=1 ;i<= la->last  / 2;i++    )
      {  x=la->data[i];
          la->data[i]=la->data[la->last-i+1];
          la->data[la->last-i+1]=x ;
      } 
   }

  void  exch1(sqlist  *la)
    { int i,y;
      for  (i=1;i<=la->last;i++)
	  {  y=get (*la,1);
             delete(la,1);
	     insert (la,la->last-i+2,y);
	   }
   }




 void main()
{  
	  sqlist sq,*sq1=&sq;
      initiate(sq1);

      setupsqlist(sq1);
      printf("\n\n\n");
      display(sq);

      insert(sq1,6,199);
      printf("\n\n\n");
      display(sq);

      delete (sq1,8);
      printf("\n\n\n");
      display(sq);

      exch(sq1);
      printf("\n\n\n");
      display(sq);

      exch1(sq1);
      printf("\n\n\n");
      display(sq);

 }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -