נושאים פעיליםנושאים פעילים  הצגת רשימה של חברי הפורוםרשימת משתמשים  חיפוש בפורוםחיפוש  עזרהעזרה
  הרשמההרשמה  התחברותהתחברות RSS עדכונים
תיכנות
RSS UnderWarrior Forums : RSS תיכנות
נושא

נושא: הנדסאית תוכנה שנה ב - מבנה נתונים (שאלה)

שליחת תגובהשליחת נושא חדש
כותב
הודעה << נושא קודם | נושא הבא >>
לודה
משתמש מתחיל
משתמש מתחיל


הצטרף / הצטרפה: 20 November 2009
משתמש: מנותק/ת
הודעות: 2
נשלח בתאריך: 20 November 2009 בשעה 00:12 | IP רשוּם
ציטוט לודה

שאלה במבנה נתונים:

תוכנה שבונה רשימה מקושרת של מספרים שלמים.
ממיונת בסדר עולה, מיון תוך כדי קליטה !

בדרף הכי פשוטה, רמת הנדסאי שנה ב - כולל הסברם בבקשה
חזרה לתחילת העמוד הצג את כרטיס החבר של לודה חפש הודעות אחרות של לודה
 
גד
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 21 November 2009 בשעה 03:01 | IP רשוּם
ציטוט גד

באיזו שפה?
חזרה לתחילת העמוד הצג את כרטיס החבר של גד חפש הודעות אחרות של גד בקר בדף הבית של גד
 
לודה
משתמש מתחיל
משתמש מתחיל


הצטרף / הצטרפה: 20 November 2009
משתמש: מנותק/ת
הודעות: 2
נשלח בתאריך: 21 November 2009 בשעה 23:24 | IP רשוּם
ציטוט לודה

מבנה נתונים ..

typedef ...... struct ..

חזרה לתחילת העמוד הצג את כרטיס החבר של לודה חפש הודעות אחרות של לודה
 
חיים
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 07 February 2010 בשעה 23:43 | IP רשוּם
ציטוט חיים

בס"ד

לבקשתך:

 

/*  With God's help.  */


# include <stdio.h>
# include <conio.h>
# include <alloc.h>

typedef struct myStruct
{
 int num;
 struct myStruct *next;
};

void main()
{
  /*
 נגדיר מצביע שיגדיר שוב ושוב איבר חדש מקושר
 ומצביע שישמור על תחילת הרשימה- לצורך הדפסה ואח"כ שחרור
  */
  struct myStruct *node, *head;
  int num;

  clrscr();

  printf("Enter a num, or -1 to quit. ");
  scanf("%d", &num);
  if(num == -1)
 return;

  node = head = (struct myStruct *)malloc(sizeof(node));
  node->num = num;
  node->next = NULL;

  do
  {
 printf("Enter a num, or -1 to quit. ");
 scanf("%d", &num);
 if(num == -1)
  break;

 // יצירת איבר חדש מקושר
 node->next = (struct myStruct *)malloc(sizeof(node));
 // המצביע עומד על האיבר החדש
 node = node->next;
 // הכנסת הקלט לתוכו
 node->num = num;
 // סימון סוף הרשימה. חשוב ביותר
 node->next = NULL;

  }  while(1);

  // הדפסת כל איברי הרשימה
  node = head;
  do
  {
 printf("%d, ", node->num);
 node = node->next;
  } while(node);


  /*
 שחרור כל הצמתים שנבנו בזכרון דינמי
 אסור ליצור זכרון דינמי בלי לשחרר אותו בסוף התכנית
 היות והוא נשאר תפוס עד לכיבוי המחשב!
  */
  do
  {
 node = head->next;
 free(head);
 head = node;
  } while(node);

  getch();
}

חזרה לתחילת העמוד הצג את כרטיס החבר של חיים חפש הודעות אחרות של חיים בקר בדף הבית של חיים
 

אם ברצונך להגיב לנושא זה עליך קודם להתחבר
אם אינך רשום/ה כבר עליך להרשם

  שליחת תגובהשליחת נושא חדש
גרסת הדפסה גרסת הדפסה

קפיצה לפורום
אינך יכול/ה לשלוח נושאים חדשים בפורום זה
אינך יכול/ה להגיב לנושאים בפורום זה
אינך יכול/ה למחוק את הודעותיך ותגוביך בפורום זה
אינך יכול/ה לערוך את הודעותיך ותגובותיך בפורום זה
אינך יכול/ה לצור סקרים בפורום זה
אינך יכול/ה להצביע בסקרים בפורום זה