私のコードはStackとQueueの機能を実装することです。なぜ私のプログラムで構造体を使用しないのかと疑問に思っているのは、インストラクターが私たちにポインタを使用させてくれるだけなので、ポインタを使って少し混乱しているからです。それはまだ完了していない、可能な限り、次のものにスキップするのではなく、一度に1つの機能を終了しようとする。どのようにCでポインタを使って変数をインクリメントしますか?
#include <stdio.h>
int container[5];
int len=0;
私はそれが機能は、この部分は、追加するかどうかをユーザーに尋ねる
int insert(int container[],int len)
{
int i,j,content,*incre;
incre=&len;
for(i=*incre;i<*incre+1;i++)
{
printf("Enter number:\n");
scanf("%d",&content);
container[i]=content;
}
(*incre)++;
}
int printcontent(int container[])
{
int i;
printf("Content of container:\n");
for(i=0;i<len+1;i++)
{
printf("%d ",container[i]);
}
printf("\n");
}
を使用されるたびにインクリメントなので、私の関数insertで、「LEN」のこの部分は変更することが想定されて理解したようコンテナ内のコンテンツを削除するか、単純に削除します。それらは、一度に1つだけ追加または削除することができます。
int stack(int container[])
{
while(1)
{
int choice;
printf("What do you wanna do?\n");
printf("1.Insert\n2.Pop\n3.isEmpty\n4.Exit\n");
scanf("%d", &choice);
lenの値をチェックしたところ、最初にinsertを使用したときは1の代わりに0のままです。
if (choice==1)
{
insert(container,len);
printf("Value of len:%d\n",len);
printcontent(container);
}
else if(choice==4)
{
break;
}
}
}
main()
{
while(1)
{
int choice;
printf("What do you want to do?\n");
printf("1.Stack\n2.Queue\n3.Exit\n");
scanf("%d",&choice);
if(choice==1)
{.
stack(container);
}
else if(choice==3)
{
break;
}
}
}
ご協力いただきありがとうございます。
ごめんなさい - 私は誤解まずあなたの質問。私の答えは実際にあなたに役立つかもしれないものを与えるために編集しました。 :) – mxscho