للمبرمجين بلغة السي - منتديات الجلفة لكل الجزائريين و العرب

العودة   منتديات الجلفة لكل الجزائريين و العرب > منتديات التقنية > منتدى البرمجة

منتدى البرمجة كل ما يتعلق بلغات البرمجة، فيجوال بيسيك , سي ++ , دلفي , أكسيس , جافا , هتمل...

في حال وجود أي مواضيع أو ردود مُخالفة من قبل الأعضاء، يُرجى الإبلاغ عنها فورًا باستخدام أيقونة تقرير عن مشاركة سيئة ( تقرير عن مشاركة سيئة )، و الموجودة أسفل كل مشاركة .

آخر المواضيع

للمبرمجين بلغة السي

 
 
أدوات الموضوع انواع عرض الموضوع
قديم 2011-12-15, 20:11   رقم المشاركة : 1
معلومات العضو
mohsenuss91
عضو مجتهـد
 
إحصائية العضو










افتراضي للمبرمجين بلغة السي

السلام عليكم اهل المنتدى لدي مشكل و ارجو المساعدة
و ذلك على مستوئ السطر127 من البرنامج البوكل وايل

كود:
#include<stdio.h>
#include <stdlib.h>
 
struct element
{      int pri;
       char val;
       struct element *suiv;
};
typedef struct element *filed;
 
 
/* Création d'un nouvel élément */
void creation(filed *e,int pri, char val)
{
    *e=(filed)malloc(sizeof(filed)) ;
    filed t=*e;
    t->pri=pri;
    t->val=val;
    t->suiv=NULL;
}
/*afficher dune filed*/
void afficher(filed l)
{
 filed q;
 q=l;
 while(q!=NULL) {
 printf("Priorite:> %d",q->pri);
 printf("Valeur => %c",q->val); 
 q=q->suiv;
                   }
}
/*insert en queu */
void emfiler(filed *l,int pe,char ve)
{    filed e,q;
     creation(&e,pe,ve);
     if (*l==NULL)  *l=e;
     else {
     q=*l;
     while(q->suiv!=NULL) q=q->suiv;
     q->suiv=e;
               }
}
/*supression de la tete*/
void defiler(filed *l,int *pd,char *vd)
{
 filed q,p;
 q=*l;
 p=*l;
 p=p->suiv;
 q->suiv=NULL;
 *pd=q->pri;
 *vd=q->val;
 free(q);
}
/*insertion en tete*/
void empiler(filed *l,int pe,char ve)
{
 filed e,q;
 creation(&e,pe,ve);
 if (l=NULL)  *l=e;
 else {
 e->suiv=*l;
 *l=e;
     }
}
/*suppression de la tete*/
void depiler(filed *l,int *pd,char *vd)
{
 filed q,p;
 q=*l;
 p=*l;
 p=p->suiv;
 q->suiv=NULL;
 *pd=q->pri;
 *vd=q->val;
 free(q);
}
/*max pri*/
void maxpri(filed l,int *pm,char *vm)
{
 filed q,x;
 q=l;
 x=l;
 while(q!=NULL)  {
 if((q->pri)>(x->pri)) x=q;
 q=q->suiv;
           }
           *pm=x->pri;
           *vm=x->val;
 }
/*defiler par priorite*/
void defilerpri(filed *l,int *pd,char *vd)
{    
     filed q,ls,t,p,r;
     char vs;
     int ps;
     ls=NULL;
     p=*l;
     maxpri(*l,pd,vd);
     while((p->pri!=*pd)&&(p->val!=*vd)) {
     defiler(l,&ps,&vs);
     empiler(&ls,ps,vs);
     r=*l;                                   }
if((r->val=vd)&&(r->pri=pd))  defiler(l,pd,vd);
if (ls!=NULL){ 
	do 
	{
	depiler(ls,ps,vs);
	empiler(l,ps,vs);}
	while(ls!=NULL);
	}
			}
int main()
{
/*declaration des types et viables*/
filed l,lp;
char choix;
int prio,dp;
char vale,dv;
/*programme principal*/
 
l=NULL;
lp=NULL;
choix='y';
printf(">L ELEMENT LE PLUS PRIORITAIRE EST CELUI QUI A LA PRIORITE LA PLUS SUPERIEUR<\n");
printf("\n");
while(choix!='n') {
printf("Entrer la valeur(un caractere):\n");
scanf("%c",&vale);
printf("Entrer la priorite(un entier):\n");
scanf("%d",&prio);
emfiler(&l,prio,vale);
printf("Voulez vous ajoutez un element?  (y/n)\n");
scanf("%c",&choix);
}
printf("\n");
printf("LA FILE DES ELEMENTS CREE\n");
afficher(l);
printf("\n");
printf("LA FILE DES ELEMENTS AVEC LA PRIORITE CROISSANTE\n");
 
do{
defilerpri(l,dp,dv);
empiler(lp,dp,dv);
}while(l!=NULL);
afficher(lp);
getchar();
}








 


رد مع اقتباس
 

الكلمات الدلالية (Tags)
للمبرمجين, الزي, بلغة


تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة

الانتقال السريع

الساعة الآن 11:18

المشاركات المنشورة تعبر عن وجهة نظر صاحبها فقط، ولا تُعبّر بأي شكل من الأشكال عن وجهة نظر إدارة المنتدى
المنتدى غير مسؤول عن أي إتفاق تجاري بين الأعضاء... فعلى الجميع تحمّل المسؤولية


2006-2024 © www.djelfa.info جميع الحقوق محفوظة - الجلفة إنفو (خ. ب. س)

Powered by vBulletin .Copyright آ© 2018 vBulletin Solutions, Inc