include <stdio.h> #include <malloc.h> typedef int ElemType; typedef struct Node { ElemTy
答案:2 悬赏:0 手机版
解决时间 2021-03-22 11:40
- 提问者网友:相思似海深
- 2021-03-21 23:39
运行时不对,是哪里错了
最佳答案
- 五星知识达人网友:未来江山和你
- 2021-01-12 13:06
#include<malloc.h>
#define maxsize 50
typedef int elemtype;
typedef struct
{
elemtype data[maxsize];
int front,rear;
int length;
}SqQueue;
void main()
{
int m,n;
int k;
printf("请输入猴子总数m:");
scanf("%d",&m);
printf("请输入猴子循环次数n:");
scanf("%d",&n);
elemtype e;
SqQueue p,q;
q.length=0;
q.front=q.rear=0;
//q.front=(q.front+1)%maxsize;
//q.rear=(q.rear+1)%maxsize;
p.front=p.rear=0;
for(k=1;k<=m;k++)
{
q.data[q.rear]=k;
q.rear=(q.rear+1)%maxsize;
q.length++;
}
printf("猴子原先次序为:");
for(k=1;k<=m;k++)
printf("%d ",k);
printf("\n队列q的长度为%d\n",q.length);
q.front=(q.front+1)%maxsize;
while(q.length>0)//while(q.rear!=q.front)
{
q.front=(q.front+n-1)%m;
//q.rear=(q.rear+n-1)%m;
e=q.data[q.front];
p.rear=(p.rear+1)%maxsize; //p.rear=(p.rear+1)%m;
p.data[p.rear]=e;
for(int j=q.front;j<m-1;j++) //for(int j=0;j<m-1;j++)
{
q.data[j]=q.data[j+1];//q.data[q.front+j]=q.data[q.front+j+1];
}
q.length--;
m=m-1;
}
printf("猴子被淘汰顺序为:");
while(p.front!=p.rear)
{
p.front=(p.front+1)%maxsize;
e=p.data[p.front];
printf("%d ",e);//printf("%d",e);
}
printf("\n猴子大王为第%d号",p.data[p.rear]);
}
#define maxsize 50
typedef int elemtype;
typedef struct
{
elemtype data[maxsize];
int front,rear;
int length;
}SqQueue;
void main()
{
int m,n;
int k;
printf("请输入猴子总数m:");
scanf("%d",&m);
printf("请输入猴子循环次数n:");
scanf("%d",&n);
elemtype e;
SqQueue p,q;
q.length=0;
q.front=q.rear=0;
//q.front=(q.front+1)%maxsize;
//q.rear=(q.rear+1)%maxsize;
p.front=p.rear=0;
for(k=1;k<=m;k++)
{
q.data[q.rear]=k;
q.rear=(q.rear+1)%maxsize;
q.length++;
}
printf("猴子原先次序为:");
for(k=1;k<=m;k++)
printf("%d ",k);
printf("\n队列q的长度为%d\n",q.length);
q.front=(q.front+1)%maxsize;
while(q.length>0)//while(q.rear!=q.front)
{
q.front=(q.front+n-1)%m;
//q.rear=(q.rear+n-1)%m;
e=q.data[q.front];
p.rear=(p.rear+1)%maxsize; //p.rear=(p.rear+1)%m;
p.data[p.rear]=e;
for(int j=q.front;j<m-1;j++) //for(int j=0;j<m-1;j++)
{
q.data[j]=q.data[j+1];//q.data[q.front+j]=q.data[q.front+j+1];
}
q.length--;
m=m-1;
}
printf("猴子被淘汰顺序为:");
while(p.front!=p.rear)
{
p.front=(p.front+1)%maxsize;
e=p.data[p.front];
printf("%d ",e);//printf("%d",e);
}
printf("\n猴子大王为第%d号",p.data[p.rear]);
}
全部回答
- 1楼网友:鸠书
- 2021-02-28 18:18
你好!
应该是"typedef int ElemType"
我的回答你还满意吗~~
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯