顺序队列的应用 代码出现问题了 对着打了 可是定义非法啊

格子_ 发布于 2013/04/10 19:40
阅读 117
收藏 0

#include"sj.h"   //调用自定义库文件
//队列的基本运算
typedef char ElemType;
typedef struct
{
 ElemType elem[MAXSIZE] ;     //数据的存储区
 int front,rear;               //队头队尾指针
}
CirSeQueue;           //循环队列
CirSeQueue sq;
void   Init_SeQueue(CirSeQueue *sq)
{
 sq->front=sq->rear=0 ;
}
Status Empty_SeQueue(CirSeQueue *sq)
{
 if  (sq->front==sq->rear)  return TRUE;
 else return FALSE;
}
Status Empety_SeQueue(CirSeQueue  *sq, ElemType  x)
{
 if((sq->rear+1)  %MAXSIZE==sq->front)
 {
  printf("队满!\n");
  return OVERFLOW;     //队满不能入队
 }
 else
 {
  sq->elem[sq->rear]=x;
  sq->rear=(sq->rear+1)  %  MAXSIZE  ;
  return OK;    //入队完成
 }
 Status Out_SeQueue (CirSeQueue  *sq , ElemType *y)
 {
  if (Empty_SeQueue(sq) )
  {
  printf("队空!\n");
  return OVERFLOW;    //队空不能出队
  }
  else
  {
   *y=sq->elem[sq->front];   //读出队头元素
   sq->front=(sq->front+1) % MAXSIZE;
   return OK;   }   //出队完成
 }
 void print_SeQueue(CirSeQueue  *sq)       //输出队列里的元素
 {
  int i;
  printf("队列成员:   \n");
  for(i=sq->front;i<=sq->rear-1;i++)
  printf("%c ",sq->elem[i]);
  printf("\n");
 }
 void InQue_Op()
 {//入队操作
  char ch_x;        
  int i;
  getchar();
  printf("输入一个入队的字符(如果字符是'0'输入结束)\n");
  scanf("%c,&ch_x);
  while(ch_x!='0')
   if (In_SeQueue(&sq  ,ch_x)==  OVERFLOW)
   {
    printf("入队失败!\n"); return;}
   else
   {
    printf("入队成功!\n输入一个入队的字符\n");
    getchar();
    scanf("%c",&ch_x);
   }
 }
 void OutQue_Op()
 {//出队操作
  char e,ch_y;
  getcher();
  printf("如果想进行出对操作,请按空格键然后回车!\n");
  scanf("%c",&ch_y);
  while(ch_y==' ')
  {
   printf("出队操作成功!\n");
   printf("出队的字符是%c\n",e);
   getchar();
   scanf("%c",&ch_y);
  }
  else return;
 }
}
void main()
{
 int i,flag=1;
 Init_SeQueue(&sq);
 while(flag)
 {
  printf("请选择操作:  1---入队, 2----出队; 0---退出程序: \n");
  scanf("%d",&flag);
  switch(flag)
  {
  case  0: Print_SeQueue(&sq);
  printf("\n程序结束\n");
  return;
  case 1: InQue_Op(); break;
  case 2: OutQue_Op(); break;
  default:printf("请选择的操作无效\n"); break;
  }
 }
}

 win7  vc++6.0  定义非法和定义无效  求指点

 

 

加载中
返回顶部
顶部