الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

خطا في انشاء linkeds list عمودية بحيث كل قائمة توشر علىlinked list افقية

بدأه noourr في 3 أبريل 2014 · 1 رد · 682 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله تعالى و بركاته

من فضلكم ارجوكم اريد مساعدة في كيفية انشاء linked list بحيث كل قائمة توشر علىlinked list اخرى كما هو موضح في الشكل

10177381_517460258363762_681283024_n.jpg
 كما كتبت في الموضوع الاول كمبتدئة لا جيدالتتعامل معlinked list  و هده محاولتي

 10155532_517468075029647_663333659_n.jpg

11871_517469015029553_94724340_n.jpg
 
 
 
#include <stdlib.h>
 
 
typedef struct elt1  
{
     struct elt1 *nxt;
     struct elt1 *ptr;
    
}liste1;
 
typedef struct elt2  
{
     char cara;   
     struct elt2 *svt;
     
}liste2;
  main ()
{ 
liste1 *tet,*p ; liste1 *p1 ;liste1 *p2 ;liste1 *q;
liste2 *z,*k,*k1,*k2,*tet2  ;
int n,i,j,m;
 
 
liste1  *tet1  = malloc(sizeof(liste1)); /* allouer (tete)*/
tet->ptr=NULL; tet->nxt=NULL; p=tet;
for (i=1;i <=n-1;i++ ) 
{
  liste1  *q  = malloc(sizeof(liste1));
  q -> ptr=NULL; q->nxt=NULL; 
  p->nxt=q; p=q; 
}
p=tet ;q=NULL; 
 
for (i=1;i <=n-1;i++ ) 
{
    liste2  *tet2  = malloc(sizeof(liste2));
    printf (" donner les car");  scanf ("%c",tet2->cara); 
      tet2->svt=NULL;     k=tet2;
  
   
    for (j=1;j <=m-1;j++ ) 
    {
        liste2  *z  = malloc(sizeof(liste2));
        
         printf (" donner les car");     scanf ("%c",z->cara); 
          z->svt=NULL;    k->svt=z;
    
    }       
    p->ptr=tet2;
    p=p  ->nxt;
    
    
}
 
الفكرة هي
عمل 2 struct واحد للقائمة العمودية الدي فيه متغيرين عبارة عن موشرات
و الثاني للقوائم  الافقية التي فيها منتغيرين واحد من نوع char و الاخر موشر
1-انشاء القائمة العمودية
2-loopبعدد القوائم العمودية داخلها انشئ القوائم الافقية بحيث كل عنصر من linkde listes العمودية يوشر على linkde listes افقية و هنا وجدت المشكل 
          
49  [Warning] assignment from incompatible pointer type 
 
من فضلكم كيف حل هادا المشكل و هل يوجد طريقة  اخرى
وبارك الله فيكم

mon project.c

#2

وهده محاولة بطريقة اخرى لم يجد فيها خطا و لكن يوجد مشكل عند ظهور النافدة

 
#include <stdlib.h>
 #include <stdio.h>
 
typedef struct elt2  
        {struct elt2 *t;
          struct elt2 *svt;
          char val;
          }  L;

int main ()
{
    L *p , *q;
    int i,n ;
    /*creation de la liste vertical*/
L*tet   = malloc(sizeof(L)); /* allouer (tete)*/
tet->t=NULL; tet->svt=NULL; p=tet;
for (i=1;i <=n-1;i++ ) 
{
  L  *q  = malloc(sizeof(L));
  q -> t=NULL; q->svt=NULL; 
  p->svt=q; p=q; 
}
p=NULL ;q=NULL; 
   //fin de la creation
   
     L *k; L*f,*k1,*k2;
     k=tet ;
     // creation horizontal lists

     while (tet->svt !=NULL) 
     {
     //creation horizontal list    tete is k->t
   
     printf ("entre carecter"); scanf("%c",k->t->val);
      k->t->svt=NULL;
         k1=k->t;
         
      for (i=1;i <=n-1;i++ ) 
      {
       L *K2  = malloc(sizeof(L));
         printf (" donner les car");  
         scanf ("%c",k2->val); 
      k2->svt=NULL;     k1->svt=k2;
      k1=k2;
      }
      k1=NULL ; k2=NULL;
 
     //fin de la creation
     k=k->svt;
     }
       
system ("pause");
}

1897763_518016524974802_1883944967_n.jpg

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…