הערות כלליות לתרגיל:
קובץ קלט הינו input.txt וקובץ הפלט הינו output.txt
בכל מקרה של שגיאה, קלט לא חוקי יש להדפיס לקובץ הפלט Not Available
הגדר מבנה סטודנט עם השדות הבאים: שם הסטודנט (מחרוזת בגודל עד 15 תוים), מספר
תעודת זהות (long – באורך 5 ספרות) וממוצע ציונים (float) .
הגדר מבנה אוניברסיטה שיכיל מערך סטודנטים דינמי.
הגדר תפריט משתמש שיגדיר את הפעולות הבאות:
a. קלט של נתוני הסטודנטים מקובץ הקלט אל מבנה אוניברסיטה. יש לקלוט את נתוני הסטודנטים
כל עוד יש נתונים בקובץ הקלט. שים לב שהיות ומערך הסטונטים נבנה דינמית (ע"י פונקציית realloc שמגדילה את גודלו עם הגעת נתוני סטודנט נוסף) גודלו אינו מוגבל, וניתן לקלוט את נתוני סטודנטים עד לסיום קובץ הקלט.
הנתונים מופיעים בקובץ קלט בפורמט הבא:
Nir 32251 99.80
Ely 12347 77.89
……………..
…………….
Avi 31456 99.78
b. פלט של נתוני הסטודנטים (מערך הסטודנטים הדינמי שבמבנה אוניברסיטה) אל קובץ הפלט בפורמט הבא:
Student: Nir 32251 99.80
Student: Ely 12347 77.89
……………..
…………….
Student: Avi 31456 99.78
(אופצייה זו פועלת רק לאחר הפעלת אופצייה a אחרת נכתוב הודעת שגיאה Not Available לסוף
קובץ הפלט)
c. הוספת שורות סיום, אמצע והתחלה לקובץ הפלט בפורמט הבא:
לדומא קובץ פלט עם 3 סטודנטים יוספו השורות המודגשות הבאות:
START_OF_FILE
Student: Nir 32251 99.80
Student: Ely 12345 77.89
MIDDLE_OF_FILE
Student: Avi 31456 99.78
END_OF_FILE
(אופצייה זו פועלת רק לאחר הפעלת אופציות b,a אחרת נכתוב הודעת שגיאה Not Available לסוף קובץ הפלט, אם האופציה נבחרה לאחר שכבר הופעלה פעם אחת לתת הודעה Not Available).
z. אופציית יציאה – מחק את קובץ הפלט , כתוב בו בשורה הראשונה End Of Program וצא מהתוכנית.
למשתמש יוצג תפריט פעולה בmain הכולל את אופציות הפעולה a,b,c ואופציית יציאה z .
שים לב שיש אופציות שלא יכולות להיות מופעלות לפני שאופצייה אחרת הופעלה .
במקרה כזה יש להדפיס Not Available בסוף הקובץ.
הערות חשובות:
1 .במבנה של הסטודנט ממוצע ציונים יכול להיות מספר מסוג int .
2. שימו לב שהתפריט נמצא בלולאה,ז"א אפשר לבחור אופציות מהתפריט כל עוד לא נבחרה אופציה
. z