Switch-lausunto
switch
-lause on ohjelmoinnissa käytetty ohjausrakennelma, jonka avulla voidaan suorittaa yksi koodilohko useista mahdollisista vaihtoehdoista muuttujan tai lausekkeen arvon perusteella. Se tarjoaa rakenteellisemman ja luettavamman vaihtoehdon useiden if-else
-lauseiden käytölle, kun vertaillaan samaa arvoa useisiin mahdollisiin vaihtoehtoihin.
main.cpp
switch.h
1234567891011121314151617181920212223242526272829#include <iostream> int main() { int userOption = 1; // 1: Check, 2: Deposit, 3: Withdraw, 4: Exit switch (userOption) { case 1: std::cout << "Checking balance...\n"; break; case 2: std::cout << "Depositing money...\n"; break; case 3: std::cout << "Withdrawing money...\n"; break; case 4: std::cout << "Exiting. Thank you!\n"; break; default: std::cout << "Invalid option.\n"; break; } }
Muuttujaa userOption
tarkastellaan, ja jos sen arvo on 1
, ohjelma näyttää viestin tilin saldon tarkistamisesta. break
-lause katkaisee suorittamisen switch-case
-lohkon sisällä, estäen muiden tapausten suorittamisen.
-
break
– lause tarkoittaa poistumista koodilohkosta; -
default
– on valinnainen osa, mutta hyödyllinen. Tämä osa suoritetaan, jos mikään tapauksista ei täsmää.
break-avainsana
On kuitenkin tärkeä seikka, joka liittyy switch
-lauseeseen. Jos break
-lausetta ei tarkoituksella lisätä tapaukseen, ohjelman suoritus jatkuu seuraaviin tapauksiin, vaikka niiden ehdot eivät täyttyisikään. Tätä käyttäytymistä kutsutaan fall-through-ilmiöksi, ja se voi olla hyödyllinen tietyissä tilanteissa, mutta voi johtaa odottamattomiin tuloksiin, ellei sitä käytetä huolellisesti.
main.cpp
1234567891011121314151617181920212223242526#include <iostream> int main() { // Example user choice: 1 for Check Balance, 2 for Deposit, etc. int userOption = 1; // Simulating a banking system menu using a switch statement switch (userOption) { case 1: // Check account balance std::cout << "Checking account balance..." << std::endl; case 2: // Deposit money std::cout << "Depositing money into your account..." << std::endl; case 3: // Withdraw money std::cout << "Withdrawing money from your account..." << std::endl; case 4: // Exit std::cout << "Exiting the system. Thank you for banking with us!" << std::endl; default: // Invalid option std::cout << "Invalid option. Please choose a valid menu option." << std::endl; } }
Ilman break
-komentoa ohjelman kulku ohittaa kaikki seuraavat tarkistukset ja suorittaa seuraavien tapausten komennot, kunnes se kohtaa break
-lauseen tai koko switch
-lohkon lopun.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Can you give an example of how fall-through works in a switch statement?
What are some scenarios where fall-through might be useful?
Can you explain the difference between using break and not using break in a switch statement?
Awesome!
Completion rate improved to 3.85
Switch-lausunto
Pyyhkäise näyttääksesi valikon
switch
-lause on ohjelmoinnissa käytetty ohjausrakennelma, jonka avulla voidaan suorittaa yksi koodilohko useista mahdollisista vaihtoehdoista muuttujan tai lausekkeen arvon perusteella. Se tarjoaa rakenteellisemman ja luettavamman vaihtoehdon useiden if-else
-lauseiden käytölle, kun vertaillaan samaa arvoa useisiin mahdollisiin vaihtoehtoihin.
main.cpp
switch.h
1234567891011121314151617181920212223242526272829#include <iostream> int main() { int userOption = 1; // 1: Check, 2: Deposit, 3: Withdraw, 4: Exit switch (userOption) { case 1: std::cout << "Checking balance...\n"; break; case 2: std::cout << "Depositing money...\n"; break; case 3: std::cout << "Withdrawing money...\n"; break; case 4: std::cout << "Exiting. Thank you!\n"; break; default: std::cout << "Invalid option.\n"; break; } }
Muuttujaa userOption
tarkastellaan, ja jos sen arvo on 1
, ohjelma näyttää viestin tilin saldon tarkistamisesta. break
-lause katkaisee suorittamisen switch-case
-lohkon sisällä, estäen muiden tapausten suorittamisen.
-
break
– lause tarkoittaa poistumista koodilohkosta; -
default
– on valinnainen osa, mutta hyödyllinen. Tämä osa suoritetaan, jos mikään tapauksista ei täsmää.
break-avainsana
On kuitenkin tärkeä seikka, joka liittyy switch
-lauseeseen. Jos break
-lausetta ei tarkoituksella lisätä tapaukseen, ohjelman suoritus jatkuu seuraaviin tapauksiin, vaikka niiden ehdot eivät täyttyisikään. Tätä käyttäytymistä kutsutaan fall-through-ilmiöksi, ja se voi olla hyödyllinen tietyissä tilanteissa, mutta voi johtaa odottamattomiin tuloksiin, ellei sitä käytetä huolellisesti.
main.cpp
1234567891011121314151617181920212223242526#include <iostream> int main() { // Example user choice: 1 for Check Balance, 2 for Deposit, etc. int userOption = 1; // Simulating a banking system menu using a switch statement switch (userOption) { case 1: // Check account balance std::cout << "Checking account balance..." << std::endl; case 2: // Deposit money std::cout << "Depositing money into your account..." << std::endl; case 3: // Withdraw money std::cout << "Withdrawing money from your account..." << std::endl; case 4: // Exit std::cout << "Exiting the system. Thank you for banking with us!" << std::endl; default: // Invalid option std::cout << "Invalid option. Please choose a valid menu option." << std::endl; } }
Ilman break
-komentoa ohjelman kulku ohittaa kaikki seuraavat tarkistukset ja suorittaa seuraavien tapausten komennot, kunnes se kohtaa break
-lauseen tai koko switch
-lohkon lopun.
Kiitos palautteestasi!