שפת C/משתנים/תרגילים: הבדלים בין גרסאות בדף

מתוך ויקיספר, אוסף הספרים והמדריכים החופשי
תוכן שנמחק תוכן שנוסף
Atavory (שיחה | תרומות)
אין תקציר עריכה
Atavory (שיחה | תרומות)
שורה 30: שורה 30:
==עבודה עם משתנים==
==עבודה עם משתנים==


==הצהרה והשמה בשלמים==
===הצהרה והשמה בשלמים===


כתוב תוכנית שתצהיר על משתנה שלם (int) בשם a, לאחר מכן תשים אליו את הערך 7, ולאחר מכן תשים אליו את הערך 9.
כתוב תוכנית שתצהיר על משתנה שלם (int) בשם a, לאחר מכן תשים אליו את הערך 7, ולאחר מכן תשים אליו את הערך 9.

גרסה מ־17:07, 31 בדצמבר 2007


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



טיפוסי משתנים

בחירת טיפוסים נכונה

נניח שאתה צריך שני משתנים: אחד, בשם grade שיתאר ציון מבחן, והשני, בשם length, שיתאר אורך. להלן תוכנית המצהירה על כך:

int main()
{
  unsigned int grade;
  
  float length;
  
  return 0;
}

נשים לב שלמשתנה הראשון בחרנו בטיפוס שלם ללא סימן, ולשני בחרנו משתנה נקודה צפה.

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

  • משתנים לציונים, grade_1, grade_2, וgrade_3.
  • משתנה לממוצע ציונים, grade_average.
  • משתנה לזווית, angle.


פתרון


עבודה עם משתנים

הצהרה והשמה בשלמים

כתוב תוכנית שתצהיר על משתנה שלם (int) בשם a, לאחר מכן תשים אליו את הערך 7, ולאחר מכן תשים אליו את הערך 9.


פתרון


החלפה בין ערכי שני משתנים

נניח שיש שני משתני מספרים שלמים, a וb, המאותחלים לערכים כלשהם. כתוב תכנית שתחליף בין ערכיהם (רמז: השתמש במשתנה זמני נוסף, temp).


הפתרון


אורך החיים וטווח ההכרה של משתנים

סווג משתנים לגלובליים ולוקליים

התבונן בתכנית הבאה:

int x

int main()
{
  int a;

  a = 3;

  {
    int b;
  }

  {
    {
      int c = 5;
    }
  }
}
  • כמה משתנים לוקליים וכמה משתנים גלובליים יש בתכנית?
  • לכמה בלוקים שייך המשתנה c?


הפתרון

לפי הכללים שראינו בשפת C/משתנים#אורך החיים וטווח ההכרה של משתנים:

  • כל אחד מa, b, וc נמצאים בין סוגריים מסולסלים. הם חלק מבלוקים, ולכן משתנים לוקליים. x אינו חלק מאף בלוק, ולכן הינו משתנה גלובלי.
  • המשתנה c שייך ל3 בלוקים.