3.2 הבסיס תרגול
תרגול 1 – פונקציית main והחזרת ערך¶
-
כתבו תוכנית בסיסית עם
mainשמחזירה את הערך0. -
שנו את הערך המוחזר ל־
-1, קמפלו והריצו. מה ההבדל? -
הוסיפו פרמטרים לפונקציה
mainוהדפיסו את כמות הארגומנטים (argc) בעזרתprintf.
ניתן להוסיף ארגומנטים לתוכנה באמצעות הרצתה בטרמינל, ממש כך:
במקרה הזה argc יהיה 5 (מחשיבים גם את שם התוכנה כארגומנט)
תרגול 2 – הגדרת משתנים והצבת ערכים¶
-
צרו משתנים מסוגים שונים:
int,char,short,float,double. -
אתחלו אותם לערכים שונים (כולל
true,'A',"hello", ו־0xFA). -
הדפיסו כל משתנה עם
printfבהתאם לסוגו.
תרגול 3 – פעולות מתמטיות¶
-
בצעו פעולות חיבור, חיסור, כפל וחילוק עם משתני
intו־float. -
הדפיסו את התוצאה של כל פעולה.
-
מה קורה אם מבצעים חילוק של שני מספרים שלמים ומאחסנים את התוצאה ב־
float?
תרגול 4 – פעולות ++ ו־--¶
-
אתחלו משתנה
int a = 5. -
צרו משתנה
b = a++והדפיסו אתaו־b. -
צרו משתנה
c = ++aוהדפיסו אתaו־c.
תרגול 5 – פעולות לוגיות ובינאריות¶
-
אתחלו שני משתני
charבביטים (0b10101010,0b11110000). -
בצעו עליהם פעולות
&,|,^,!והדפיסו את התוצאות בהקס (%x).
תרגול 6 – מחרוזות וכתובות¶
-
צרו מחרוזת:
char* msg = "hello world"; -
הדפיסו את המחרוזת ואת הכתובת שלה עם
%sו־%p. -
אתחלו משתנה
charב־'a'והדפיסו אותו ואת ערך ה־ASCII שלו.
תרגול 7 – שילוב הדפסות¶
- צרו 3 משתנים:
שם,גיל, ו־עיר. - הדפיסו משפט כמו:
"שלום, קוראים לי X, אני גר ב-Y ואני בן Z"
באמצעותprintfאחד בלבד. - הסתכלו על הקוד אסמבלי של התוכנה, והסבירו אותו.