큐를 활용한 자료저장
핑크펄
질문 제목 : 밑에 코드는 큐를 이용하여 입력받은 숫자를 저장하고 완료된 모습을 보여주는소스코드입니다.
이걸숫자가 아닌 한글단어를 입력받지 않고 코드내에 초기화해서 마지막 저장되어 있는 모습만 보이게
하려면 코드를 어떻게 변경해야 될까요??질문 내용 :
#includestdio.h
#includestdlib.h
#define max 4
int front =0;
int rear =0;
int cqueue[max];
void printcq();
void enqueue();
int dequeue();
void enqueue(){
int item;
printf(삽입할 큐를 입력 해주세요.);
scanf_s(%d,&item);
if(front==(rear+1)%max)
printf(큐가 꽉찼음...\n);
else
rear=(rear+1)%max;
cqueue[rear]=item;
printf(\n);
}
int dequeue(){
if(front==rear)
printf(큐가 빔...\n);
else{
front=(front+1)%max;
return cqueue[front];}
}
void printcq(){
int i,first,last;
first = (front+1)%max;
last = (rear+1)%max;
i=first;
printf(\n);
printf(rear=%d, front=%d \n,rear,front);
printf(큐 [);
while(i!=last){
printf(%3d,cqueue[i]);
i=(i+1)%max;
}
printf(] \n);
}
int main(){
enqueue();
enqueue();
enqueue();
printcq();
getchar();
return 0;
}
-
핫체리
enqueue연산의매개변수로 한글을넘기고싶다는말씀이신가요??
그러면 일단큐의 자료형이 문자열이어야할거고 enqueue에서 동적할당하고 dequeue에서 동적할당을 해제하는장법이있겟네요 -
과꽃
위의 코드는 scanf를 사용해서 입력받은 수 ex) 1, 3, 5를 입력하면
enqueue,enqueue,enqueue를 사용해서 1, 3, 5를 저장해서 마지막에
큐(1, 3, 5)를 보여주잖아요.
입력받지 않고 enqueue 첫번째=사탕1
enqueue두번째=사탕2
enqueue세번째=사탕3
이렇게 코드내에서 선언해주고 출력물만 보이게
큐(사탕1, 사탕2, 사탕3) 이렇 -
이플
숫자가아닌 한글단어를입력받지않고가...무슨말씀이시죠??