שפת C/משתנים/תרגילים

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

עריכה

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

עריכה

דרגת קושי: ☆ ☆ ★ ★


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

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

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

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

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


פתרון
int main()
{
  unsigned int grade_1 ,grade_2 ,grade_3;
  float grade_average;
  float angle;

  return 0;
}


שמות משתנים

עריכה

דרגת קושי: ☆ ☆ ★ ★


החלט האם כל אחד מהשמות הבאים מתאים להיות שמו של משתנה. אם לא, הסבר מדוע.

  1. hello
  2. 2hello
  3. hello2
  4. hello_2
  5. hello-5
  6. my var


פתרון

להלן פירוט:

  1. מותר
  2. אסור - לשם משתנה אסור להתחיל במספר
  3. מותר
  4. מותר
  5. אסור - שם משתנה אינו יכול להכיל את התו '-'
  6. אסור - שם משתנה אינו יכול להכיל רווח


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

עריכה

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

עריכה

דרגת קושי: ☆ ☆ ★ ★


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


פתרון
int main()
{
  int a;
  a = 7;
  a = 9;

  return 0;
}


הצהרה, אתחול, והשמה בשלמים

עריכה

דרגת קושי: ☆ ☆ ★ ★


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


פתרון
int main()
{
  int a = 7;
  a = 9;

  return 0;
}


הצהרה והשמה במספרי נקודה צפה

עריכה

דרגת קושי: ☆ ☆ ★ ★


כתוב תוכנית שתצהיר על משתנה נקודה צפה (float) בשם pi, ותשים אליו את הערך 3.1415.


פתרון
int main()
{
  float pi;
  
  pi = 3.1415;
  
  return 0;
}


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

עריכה

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

עריכה

דרגת קושי: ☆ ☆ ★ ★


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

int x

int main()
{
  int a;

  a = 3;

  {
    int b;
  }

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


הפתרון

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

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