السلام عليكم و رحمة الله و بركاته
لقد قمت بكتابة هذا الكود بهدف القيام بتخزين معلومات فى بنية القوائم
ولكن المشكل الذى واجهى عند برمجة دالة اخرى تقوم بعرض محتوى كل البيانات الوجود فى القائمة التى انشئتها لم يظهر لى الا محتوى العنصر الاول والاخير من القائمة
#include<stdio.h>
#include<stdlib.h>
typedef struct liste
{
struct liste *suiv;
int val;
}elem;
typedef elem *zone;
zone *tete = NULL;
/*********************************************/
void init()
{
int a,i,z;
zone n,p,q;
n= (elem*) malloc (sizeof(elem));
printf("num :");
scanf("%d",&a);
for(i=1;i<=a;i++)
{
printf("valeur :");
scanf("%d",&z);
if(tete == NULL)
{
tete = n;
tete->val =z;
tete->suiv =NULL;
}
else
{
p=tete;
while(p->suiv != NULL)
p = p->suiv;
p->suiv =q;
q->val = z;
q->suiv = NULL;
}
}
}ارجو ان تخبرونى اين هو الخطأ فى دالة اضافة العناصر بالنسبة للقوائم
و جزاكم الله خيرا