1月11日 操作系统 周四

时间:2023-01-10 19:08:36

操作系统
1月11日 周四
实现的功能: 循环队列 普通队列
/* Note:Your choice is C IDE */

include “stdio.h”

//循环队列
/*
顺序 循环
队空 Front==rear Front==rear
队满 Rear==M (rear+1)%M==front
入队 Rear++ Rear=(rear+1)%M
出队 Front++ Front=(front+1)%M
长度 Rear-front (rear-front+M)%M
*/
struct list
{
int a[5];
int rear,front;
};
struct list s;
one(){
if((s.rear+1)%5==s.front){
printf(“队满\n”);
}
else{
printf(“请输入:”);
scanf(“%d”,&s.a[s.rear]);
s.rear=(s.rear+1)%5;
printf(“入队成功\n”);
}
}
two(){
if(s.front==s.rear)
{
printf(“队空\n”);
}
else
{
printf(“%d”,s.a[s.front]);
s.front=(s.front+1)%5;
}
}
void main()
{
int x;
s.rear=s.front=0;
while(1){
printf(“\t\t1.入队\n”);
printf(“\t\t2.出队\n”);
printf(“请选择:”);
scanf(“%d”,&x);
switch(x){
case 1:one();
break;
case 2:two();
break;
default:printf(“输入有误\n”);
}
}
}

/* Note:Your choice is C IDE */

include “stdio.h”

//普通队列
int a[5],x;
int rear,front;

one()
{
if(rear>=5)
{
printf(“队满\n”);
}
else
{
printf(“请输入:”);
scanf(“%d”,&a[rear]);
rear++;
printf(“入队成功\n”);
}
}
two()
{
if(front>=5)
{
printf(“队空\n”);
}
else
{
printf(“%d”,a[front]);
front++;
}
}
void main()
{ rear=front=0;
while(1)
{
printf(“\t\t1.入队\n”);
printf(“\t\t2.出队\n”);
printf(“请选择:”);
scanf(“%d”,&x);
switch(x)
{
case 1:one();
break;
case 2:two();
break;
default:printf(“编号有误\n”);
}
}
}

去年花里逢君别,今日花开已一年。