ورود

View Full Version : لطفا ارورهای این برنامه رو برطرف کنید



delphin
جمعه 21 اردیبهشت 1386, 18:58 عصر
این برنامه چندتا ارور داره.
لطفا کمک کنید تا اونها رو برطرف کنم.

#include <stdio.h>
#include "alloc.h"
#include "stdlib.h"
#define null 0
#define mss 21
typedef struct element
{
enum num{on,tw,tr,fo,fi,si,se,ei,ni,te,j,p,k};
enum col{red,black};
enum shape{club,diamond,heart,speak};
int digit;
};
typedef struct listnode
{
element item;
listnode *link;
};
typedef struct list
{
listnode *start;
};
listnode *ptr=null;
listnode *waste;
listnode *create()
{
listnode *first, *second;
listnode *first1=new listnode;
first=first1;
for (int i=2; i<=24; ++i)
{
listnode *second=new listnode;
second->link=null;
first->link=second;
first=second;
};
return (first);
};
typedef struct stack
{
element storage[mss];
int top;
};
stack *create2();
{
stack *ps;
ps=new stack;
ps->top+-1;
return(ps);
}
void IsEmpty(stack *ps)
{
if (ps->top==-1)
exit(1);
}
void IsFull (stack *ps)
{
if (ps->top==mss-1)
exit(1);
}
void add (stack *ps, element value)
{
ps->top++;
ps->storage[ps->top]=value;
}
float Delete(stack ps, element *pi)
{
if (IsEmpty(ps))
break;
*pi=ps->storage[ps->top];
ps->top--;
}
typedef struct stacklist
{
listnode *first[i];
listnode first=new listnode;
}
listnode *create3()
{
if (first==ptr)
{
first[i]->item=ps->storage[ps->top];
Delete (stack[i],ps->storage[ps->top])
else
break;
}
}
void move(stack list)
{
while (waste!=null)
for (int k=1;k<=7;++k)
{
for (int l=2;l<=7;++l)
{
if ((first[k]->item.num+1)==(first[l]->item.num)) && ((first [k]->item.col)!=(first[l]->item.col))
first [l]->link=first[k];
first[k]->link=null;
}
Delete (first[k])
}
else
for (int m=1;m<=7;++m)
{
if ((second->item.num+1)==(first [m]->item.num)) && ((second->item.col)!=(first[m]->item.col))
(first->item.num)=(second->item.num);
second->link=null;
Delete (second)
}
void sort(stacklist)
while (first[i]!=null)
if (first[i]->item.shape==heart)
{
arra2[1]->item=first[i]->item;
first[i]=first[i]->link;
listnode *pt=first[i]->link;
first[i]->link=null;
}
else
if (first[i]->item.shape==club)
{
arra2[2]->item=first[i]->item;
first[i]=first[i]->link;
listnode *pt=first[i]->link;
first[i]->link=null;
}
else
if (first[i]->item.shape==speak)
{
arra2[3]->item=first[i]->item;
first[i]=first[i]->link;
listnode *pt=first[i]->link;
first[i]->link=null;
}
else
{
arra2[4]->item=first[i]->item;
first[i]=first[i]->link;
listnode *pt=first[i]->link;
first[i]->link=null;
}
void main ()
{
stack *arra1[7];
int p,q,n,s[i];
create ();
for (p=1;p<=24;++p)
{
s[i]=random(53);
waste->item.digit=s[i];
}
for (q=1;q<=7;q++)
{
arra1[q]=create2();
stack *ps;
}
arra1[1]=add (arra1[1],random(53));
for (q=1;q<=2;q++)
arra1[2]=add[arra1[2],random(53));
for (q=1;q<=3;q++)
arra1[1]=add (arra1[3],random(53));
for (q=1;q<=4;q++)
arra1[1]=add (arra1[4],random(53));
for (q=1;q<=5;q++)
arra1[1]=add (arra1[5],random(53));
for (q=1;q<=6;q++)
arra1[1]=add (arra1[6],random(53));
for (q=1;q<=7;q++)
arra1[1]=add (arra1[7],random(53));
for (n=1;n<=4;n++)
listnode *arra[n]=create3();
void move(stacklist)
void sort(stacklist)
if IsFull(arra2[1])&&IsFull(arra2[2])&&IsFull(arra2[3])&&IsFull(arra2[4])
printf("You Win");
else
printf("You Lost");
}