לדלג לתוכן

3.2 הבסיס תרגול

תרגול 1 – פונקציית main והחזרת ערך

  1. כתבו תוכנית בסיסית עם main שמחזירה את הערך 0.

  2. שנו את הערך המוחזר ל־-1, קמפלו והריצו. מה ההבדל?

  3. הוסיפו פרמטרים לפונקציה main והדפיסו את כמות הארגומנטים (argc) בעזרת printf.
    ניתן להוסיף ארגומנטים לתוכנה באמצעות הרצתה בטרמינל, ממש כך:

    ./my_program this is an arguments! 
    

    במקרה הזה argc יהיה 5 (מחשיבים גם את שם התוכנה כארגומנט)


תרגול 2 – הגדרת משתנים והצבת ערכים

  1. צרו משתנים מסוגים שונים: int, char, short, float, double.

  2. אתחלו אותם לערכים שונים (כולל true, 'A', "hello", ו־0xFA).

  3. הדפיסו כל משתנה עם printf בהתאם לסוגו.


תרגול 3 – פעולות מתמטיות

  1. בצעו פעולות חיבור, חיסור, כפל וחילוק עם משתני int ו־float.

  2. הדפיסו את התוצאה של כל פעולה.

  3. מה קורה אם מבצעים חילוק של שני מספרים שלמים ומאחסנים את התוצאה ב־float?


תרגול 4 – פעולות ++ ו־--

  1. אתחלו משתנה int a = 5.

  2. צרו משתנה b = a++ והדפיסו את a ו־b.

  3. צרו משתנה c = ++a והדפיסו את a ו־c.


תרגול 5 – פעולות לוגיות ובינאריות

  1. אתחלו שני משתני char בביטים (0b10101010, 0b11110000).

  2. בצעו עליהם פעולות &, |, ^, ! והדפיסו את התוצאות בהקס (%x).


תרגול 6 – מחרוזות וכתובות

  1. צרו מחרוזת: char* msg = "hello world";

  2. הדפיסו את המחרוזת ואת הכתובת שלה עם %s ו־%p.

  3. אתחלו משתנה char ב־'a' והדפיסו אותו ואת ערך ה־ASCII שלו.


תרגול 7 – שילוב הדפסות

  1. צרו 3 משתנים: שם, גיל, ו־עיר.
  2. הדפיסו משפט כמו:
    "שלום, קוראים לי X, אני גר ב-Y ואני בן Z"
    באמצעות printf אחד בלבד.
  3. הסתכלו על הקוד אסמבלי של התוכנה, והסבירו אותו.