이것좀 제발좀 고쳐주삼.....답변좀제대로좀...
파라나
질문 제목 :실행은되는데값입력이 안됩니다..보시면알다시피... 1번이나 2번 아무거나 치고 들가서 값입력하면 처음엔 정상 돌아갑니다 두번째부터가 값입력했는데 아예출력안되네요...
값입력 정상적으로 되게 하려면 어떻게 해야할까요...
질문 내용 :
#includestdio.h
int front=3,rear=4;
int a[8];
int k,i,j;
lpush(int k)
{
if(front-1) // front값이 꽉찾는지 안찾는지 검사.
{
a[front--]=k; //a[front]값에 k값 저장
}
else // 꽉찾을경우...
{
if(rear==8) //rear값이 8이면 배열 의 값이 꽉차서 저장을 못하므로
{
printf(값을 저장 할수 없습니다\n);
}
else //배열의 값을 한칸 오른쪽으로 옮기고 다시 a[0]값에 대입....
{
for(i=1,j=0;i=rear+1,j=rear;i++,j++)
{
a[i]=a[j];
}
rear++;
a[0]=k;
}
}
}
rpush(int k)
{
if(rear8)
{
a[rear]=k;
rear++;
}
else
{
if(front==-1)
{
printf(값을 저장 할수 없습니다\n);
}
else
{
for(i=6,j=7;i=front=-1,j=front;i--,j--)
{
a[i]=a[j];
}
front--;
a[7]=k;
}
}
}ldel()
{
if(front==rear)
{
printf(삭제할 값이 없습니다.\n);
}
else
{
++front;
 br }
}
rdel()
{
if(front==rear)
{
printf(삭제할 값이 없습니다.\n);
}
else
{
--rear;
}
}
print()
{
if(frontrear)
{
printf(출력할 값이 없습니다.\n);
}
else{
for(i=++front;i=--rear;i++)
{
printf(%d,a[i]);
}
}
}
void main(void)
{
int num,k;
do{
printf(\n데크....\n);
printf(1. 왼쪽 입력 2.오른쪽 입력 3.왼쪽 del 4.오른쪽 del 5.배열 출력 6.종료 \n);
printf(번호를 입력하시오\n);
scanf(%d,&num);
switch(num)
{
case 1:
printf(값을 입력하시오\n);
scanf(%d,&k);
lpush(k);
print();
break;
case 2:
printf(값을 입력하시오\n);
scanf(%d,&k);
rpush(k);
print();
break;
case 3:
ldel();
print();
break;
case 4:
rdel();
print();
break;
case 5:
print();
break;
case 6:
printf(byebye\n);
break;
}}while((1=num) && (5=num));
}
-
은송이
제대로된답변이네요
-
말근
정답입니다.
-
너만을
위 코드가 어떠한 프로그램이여 어떠한 동작을 하고 어떠한 값을 넣었을 때 어떠한 값이 나와야 정상인데
어떠한 값을 넣었을때 어떠한 잘못된 값이 나온다 정도는 적어주셔야 테스트를 해보죠
코드를 분석해 보기에는 제 시간이 아깝네요
제대로 된 답변을 원하시기 전에 제대로 된 질문을 해주셨으면...