לעבור ... הצהרת מקרה ב- C (דוגמאות)

מהי הצהרת מתג ב- C?

הצהרת מתג ב- C בודק את ערך המשתנה ומשווה אותו למספר מקרים. לאחר שנמצא התאמת התיק, מבוצע גוש הצהרות הקשור למקרה הספציפי הזה.

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

אם לא נמצאה התאמה למקרה, הצהרת ברירת המחדל מבוצעת והפקד יוצא מגוש המתגים.

במדריך זה תלמד-

תחביר מקרה

תחביר כללי לאופן יישום switch-case בתוכנית 'C' הוא כדלקמן: | _+_ |

  • הביטוי יכול להיות ביטוי שלם או ביטוי תו.
  • ערך 1, 2, n הם תוויות רישיות המשמשות לזיהוי כל מקרה לגופו. זכור כי תוויות האריזה לא צריכות להיות זהות מכיוון שהן עלולות ליצור בעיה בעת ביצוע תוכנית. נניח שיש לנו שני מקרים עם אותו תווית כמו '1'. לאחר מכן בעת ​​ביצוע התוכנית, המקרה שמופיע תחילה יבוצע למרות שאתה רוצה שהתוכנית תבצע מקרה שני. זה יוצר בעיות בתוכנית ואינו מספק את הפלט הרצוי.
  • תוויות האריזה תמיד מסתיימות במעי הגס (:). כל אחד מהמקרים הללו קשור לחסימה.
  • בלוק אינו אלא הצהרות מרובות המקובצות למקרה מסוים.
  • בכל פעם שהמתג מבוצע, ערכו של ביטוי הבדיקה מושווה לכל המקרים שהגדרנו בתוך המתג. נניח שביטוי הבדיקה מכיל ערך 4. ערך זה מושווה עם כל המקרים עד למקרה שתווית ארבע שלו נמצאת בתוכנית. ברגע שנמצא מקרה מתבצע גוש ההצהרות הקשורות לאותו מקרה ספציפי והבקרה יוצאת מהמתג.
  • מילת המפתח break בכל מקרה מציינת את סיומה של מקרה מסוים. אם לא נשים את ההפסקה בכל מקרה, למרות שהמקרה הספציפי מבוצע, המעבר ב- C ימשיך לבצע את כל המקרים עד לסיום. זה לא אמור לקרות; מכאן שתמיד עלינו לשים מילת מפתח הפסקה בכל מקרה ומקרה. הפסקה תסיים את התיק ברגע שהוא מבוצע והשליטה תיפול מהמתג.
  • מקרה ברירת המחדל הוא מקרה אופציונלי. בכל פעם שהערך של ביטוי הבדיקה אינו תואם לאף אחד מהמקרים בתוך המתג, ברירת המחדל תבוצע. אחרת, אין צורך לכתוב ברירת מחדל במתג.
  • לאחר ביצוע המתג הבקרה תעבור אל המשפט-x, והפעלת התוכנית תימשך.

תרשים זרימת תרשים זרימה של מארז מתג

התרשים הבא ממחיש כיצד נבחר מקרה במקרה מתג:

כיצד פועל מתג



בדיקת שירותי אינטרנט באמצעות דרייבר אינטרנט סלניום

החלפת מקרה דוגמא ב- C

התוכנית הבאה ממחישה את השימוש במתג: | _+_ |

פלט: | _+_ |

  1. בתוכנית הנתונה הסברנו אתחול משתנה num עם ערך 8.
  2. מבנה מתג משמש להשוות את הערך המאוחסן במשתנה num ולבצע את גוש ההצהרות הקשורות למקרה התואם.
  3. בתוכנית זו, מכיוון שהערך המאוחסן במשתנה num הוא שמונה, מתג יבצע את התיק שתווית התיק שלו היא 8. לאחר ביצוע המקרה, הפקד ייפול מהמתג והתוכנית תיפסק עם התוצאה המוצלחת על ידי הדפסת הערך במסך הפלט.

נסה לשנות את הערך של המשתנה num והבחין בשינוי הפלט.

לדוגמה, אנו שוקלים את התוכנית הבאה המוגדרת כברירת מחדל: | _+_ |

פלט: | _+_ |

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

מקרה ברירת המחדל האופציונלי פועל כשאין התאמות אחרות.

אנו רואים את הצהרת המתג הבאה: | _+_ |

פלט: | _+_ |

מתג מקונן ב- C

ב- C, אנו יכולים להפעיל מתג פנימי במתג חיצוני. כמו כן, קבועי המקרה של המתג הפנימי והחיצוני עשויים להיות בעלי ערכים משותפים וללא התנגשויות.

אנו רואים בתוכנית הבאה שהמשתמש יקליד מזהה משלו, אם המזהה תקף היא תבקש ממנו להזין את הסיסמה שלו, אם הסיסמה נכונה התוכנית תדפיס את שם המשתמש, אחרת התוכנית תדפיס שגויה סיסמה ואם המזהה אינו קיים, התוכנית תדפיס מזהה שגוי | _+_ |

פלט: | _+_ |

  1. בתוכנית הנתונה הסברנו שני משתנים מאתחלים: מזהה וסיסמא
  2. מבנה מתג חיצוני משמש להשוואת הערך שהוזן במזהה המשתנה. הוא מבצע את גוש ההצהרות הקשורות למקרה התואם (כאשר מזהה == 500).
  3. אם הצהרת החסימה מבוצעת עם המקרה המתואם, מתג פנימי משמש להשוואת הערכים שהוזנו בסיסמת המשתנה וביצוע ההצהרות המקושרות עם המקרה התואם (כאשר סיסמא == 000).
  4. אחרת, מקרה המתג יפעיל את מקרה ברירת המחדל וידפיס את הטקסט המתאים בנוגע למתווה התוכנית.

מדוע אנו זקוקים למארז Switch?

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

הפתרון לבעיה זו הוא הצהרת המתג.

כללים להצהרת מתג:

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

סיכום

  • מתג הוא מבנה קבלת החלטות ב- 'C.'
  • מתג משמש בתוכנית שבה מעורבים מספר החלטות.
  • מתג חייב להכיל ביטוי ניתני להפעלה.
  • כל מקרה חייב לכלול מילת מפתח.
  • תווית האריזה חייבת להיות קבועה וייחודית.
  • ברירת המחדל היא אופציונלית.
  • הצהרות מתג מרובות יכולות להיות מקוננות זו בזו.