C if ... else Erklæring

I denne opplæringen vil du lære om uttalelse (inkludert hvis … annet og nestet hvis … annet) i C-programmering ved hjelp av eksempler.

C hvis uttalelse

Syntaksen for ifutsagnet i C-programmering er:

 if (test expression) ( // statements to be executed if the test expression is true )

Hvordan hvis uttalelse fungerer?

Den ifuttalelsen evaluerer testen uttrykket inne i parentes ().

  • Hvis testuttrykket blir evaluert til sant, blir utsagn i kroppen ifutført.
  • Hvis testuttrykket blir evaluert til usant, blir utsagn i kroppen ifikke utført.

For å lære mer om når testuttrykk blir evaluert til sant (ikke-nullverdi) og usant (0), sjekk relasjonelle og logiske operatorer.

Eksempel 1: if uttalelse

 // Program to display a number if it is negative #include int main() ( int number; printf("Enter an integer: "); scanf("%d", &number); // true if number is less than 0 if (number < 0) ( printf("You entered %d.", number); ) printf("The if statement is easy."); return 0; )

Utgang 1

Skriv inn et heltall: -2 Du skrev inn -2. Hvis uttalelsen er enkel.

Når brukeren angir -2, blir testuttrykket number<0evaluert til sant. Derfor, Du skrev inn -2 vises på skjermen.

Utgang 2

 Skriv inn et heltall: 5 if-setningen er enkel.

Når brukeren skriver inn 5, blir testuttrykket number<0evaluert til falskt og utsagnet i kroppen av ifblir ikke utført

C if… else Erklæring

Den ifuttalelsen kan ha en valgfri elseblokk. Syntaksen for if… elseutsagnet er:

 if (test expression) ( // statements to be executed if the test expression is true ) else ( // statements to be executed if the test expression is false )

Hvordan hvis … annet uttalelse fungerer?

Hvis testuttrykket blir vurdert til sant,

  • uttalelser i kroppen av ifblir utført.
  • uttalelser i kroppen av elsehoppes over fra henrettelsen.

Hvis testuttrykket blir evaluert til falsk,

  • uttalelser i kroppen av elseblir utført
  • uttalelser i kroppen av ifhoppes over fra henrettelsen.

Eksempel 2: hvis … annet uttalelse

 // Check whether an integer is odd or even #include int main() ( int number; printf("Enter an integer: "); scanf("%d", &number); // True if the remainder is 0 if (number%2 == 0) ( printf("%d is an even integer.",number); ) else ( printf("%d is an odd integer.",number); ) return 0; )

Produksjon

 Skriv inn et heltall: 7 7 er et oddetall.

Når brukeren skriver inn 7, blir testuttrykket number%2==0evaluert til falskt. Derfor blir utsagnet i kroppen av elseutført.

C hvis … ellers Ladder

Den if… elseuttalelse utfører to forskjellige koder, avhengig av hvorvidt testen uttrykket er sant eller usant. Noen ganger må det tas et valg fra mer enn to muligheter.

Stigen if … else lar deg sjekke mellom flere testuttrykk og utføre forskjellige utsagn.

Syntaks for hvis … ellers Ladder

 if (test expression1) ( // statement(s) ) else if(test expression2) ( // statement(s) ) else if (test expression3) ( // statement(s) )… else ( // statement(s) )

Eksempel 3: C hvis … ellers Ladder

 // Program to relate two integers using =,> or < symbol #include int main() ( int number1, number2; printf("Enter two integers: "); scanf("%d %d", &number1, &number2); //checks if the two integers are equal. if(number1 == number2) ( printf("Result: %d = %d",number1,number2); ) //checks if number1 is greater than number2. else if (number1> number2) ( printf("Result: %d> %d", number1, number2); ) //checks if both test expressions are false else ( printf("Result: %d < %d",number1, number2); ) return 0; )

Produksjon

 Skriv inn to heltall: 12 23 Resultat: 12 <23

Nestet hvis … annet

Det er mulig å inkludere en if… elseuttalelse i kroppen til en annen if… elseuttalelse.

Eksempel 4: Nestet hvis … annet

Dette programmet som er gitt nedenfor, relaterer to heltall som bruker begge <, >og =ligner på if… elsestigenes eksempel. Vi vil imidlertid bruke en nestet if… elseuttalelse for å løse dette problemet.

 #include int main() ( int number1, number2; printf("Enter two integers: "); scanf("%d %d", &number1, &number2); if (number1>= number2) ( if (number1 == number2) ( printf("Result: %d = %d",number1,number2); ) else ( printf("Result: %d> %d", number1, number2); ) ) else ( printf("Result: %d < %d",number1, number2); ) return 0; )

Hvis if… elsepåstanden i en uttalelse bare har én påstand, trenger du ikke bruke parentes ().

For eksempel denne koden

 if (a> b) ( print("Hello"); ) print("Hi");

tilsvarer

 if (a> b) print("Hello"); print("Hi"); 

Interessante artikler...