数码宝贝口琴:请大家帮我看看这程序哪错了。

来源:百度文库 编辑:查人人中国名人网 时间:2024/04/29 07:20:29
看看能在你们机子上运行吗??如果有错能帮我指出吗!!!

#include <stdio.h>
#define MAXLEN 10
typedef char Datatype;

typedef struct
{DataType* Q;
int front,rear;
}CycQue;

void InitCycQue(CycQue*sp)
{sp->Q=(DataType*)malloc(MAXLEN*sizeof(DataType));if(sp->Q==NULL)
{printf("\t\t\t内存分配错误\n");}
sp->front=sp->rearo=0;
printf("\t\t\t内存分配成功\n");}

int IndertCycQue(CycQue* sp,DataType x)
{
if((sp->rear+1)%MAXLEN==spo->front)
(
printf("\n\t\t\t队满!不能插入元素\n");
return 0;
}
else
{sp->rear=(sp->rear+1)%MAXLEN;
sp->Q[sp->rear]=x;
return 1;
}
}

int ExitCycQue(CycQue*sp,DataType x)
{ int x
if(sp->front==sp->rear)
{printf("队空");
return -1;
}
else
{
sp->front=(sp->front+1)%MAXLEN;
x=sp->Q[sp->front];
return 1;
}
}

int LenCycQue(CycQue* sp)
{return(sp->rear-sp->front+MAXLEN)%MAXLEN;}

void ShowCycQue(CycQue* sp)
{
int i;
printf("\n\t\t\t显示循环队列的元素: ");
if(sp->front==sp->rear)
printf("\n\t\t\t循环队列为空!\n");
else
{printf("\n\t\t");
i=(sp->front+1)%MAXLEN;
while(i<=sp->rear)
{
printf("\t%c",sp->Q[i]};
i=(i+1)%MAXLEN;
}
}
}

main()
{
CycQue sp;
int j=1;
char choice,x;
while(j)
{printf("\n");
printf("\n");
printf("\n");
printf("\n");
printf("\n\t\t\t循 环 队 列\n");
printf("\n\t\t\t*************************************************");
printf("\n\t\t\t* 1------队列初始化 *****");
printf("\n\t\t\t* 2------进 队 *****");
printf("\n\t\t\t* 3------出 队 *****");
printf("\n\t\t\t* 4------求 队 长 *****");
printf("\n\t\t\t* 5------显示 对长 *****");
printf("\n\t\t\t* 0------退 出 *****");
printf("\n\t\t\t*************************************************");
printf("\n\t\t\t请选择菜单号:0-5...");
scaf("%c",&choice);
getchar();
if(chioce=="1")
InitCycQue(&sp);
else if(chioce=="2")
{
printf("\n\t\t\t 请输入需要插入的元素x的值:");
scanf("%c",&x);getchar();
InsertCycQue(&sp,x);
}
else if(chioce=="3")
{ExitCycQue(&sp,&x);}
else if(chioce=="4")
LenCycQue(&sp);
else if(chioce=="5")
ShowCycQue(&sp);
else if(chioce=="0")
{
j=0;
printf("\t\t\t程序结束!\n");
}
else printf("\n\t\t\t输入错误! 请重新输入!\n");
}
}

else if(chioce=="3")
{ExitCycQue(&sp,&x);}
else if(chioce=="4")
LenCycQue(&sp);
else if(chioce=="5")
ShowCycQue(&sp);
else if(chioce=="0")
{
j=0;
printf("\t\t\t程序结束!\n");
}
else printf("\n\t\t\t输入错误! 请重新输入!\n");

有空我来试试。先坐个坑。