데이터 구조 가 무도회 문 제 를 실현 하 다.
#include
#include
#include
#include
#define MAXSIZE 100
typedef struct{
char name[10];
char team;
}Player;
typedef struct{
Player A[MAXSIZE];
int front;
int rear;
}A;
typedef struct{
Player B[MAXSIZE];
int front;
int rear;
}B;
void Macth(A *a,B *b,Player people[],int x){
int i;
for(i=1;iA[a->rear].name,people[i].name);
a->A[a->rear].team=people[i].team;
a->rear=(a->rear+1)%MAXSIZE;
}
else if(people[i].team=='B'){
strcpy(b->B[b->rear].name,people[i].name);
b->B[b->rear].team=people[i].team;
b->rear=(b->rear+1)%MAXSIZE;
}
}
}
void JoinMacth(A *a,B *b){
while(a->rear!=a->front&&b->rear!=b->front){
printf("A %s————B %s
",a->A[a->front].name,b->B[b->front].name);
a->front=(a->front+1)%MAXSIZE;
b->front=(b->front+1)%MAXSIZE;
}
}
void Judge(A *a,B *b){
int flag;
if(a->front==a->rear&&b->front==b->rear)
printf(" !");
else{
if(a->front!=a->rear){
flag=(a->rear+MAXSIZE-a->front)%MAXSIZE;
printf("A %d !",flag);
printf(" :%s",a->A[a->front].name);
}
else{
flag=(b->rear+MAXSIZE-b->front);
printf("B %d !",flag);
printf(" :%s",b->B[b->front].name);
}
}
}
// ,
int main(){
int x,i;
Player people[100];
A *a;
B *b;
a=(A*)malloc(sizeof(A));
b=(B*)malloc(sizeof(B));
printf(" :");
scanf("%d",&x);
a->front=a->rear=0;
b->front=b->rear=0;
for(i=1;i<=x;i++){
printf(" *** *** ***
");
scanf("%s",people[i].name);
scanf("%d",&people[i].team);
if(i==x-1)
printf(" !
");
}
Macth(a,b,people,x);
JoinMacth(a,b);
Judge(a,b);
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.