C ja ... citādi paziņojums

Šajā apmācībā jūs uzzināsit par if apgalvojumu (ieskaitot, ja … cits un ligzdots, ja … cits) C programmēšanā, izmantojot piemērus.

C, ja paziņojums

Paziņojuma sintakse ifC programmēšanā ir:

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

Kā tad, ja paziņojums darbojas?

ifPaziņojumā izvērtē testa izteiksmi iekšpusē iekavās ().

  • Ja testa izteiksme tiek vērtēta kā patiesa, iftiek izpildīti apgalvojumi ķermeņa iekšpusē .
  • Ja testa izteiksme tiek vērtēta kā nepatiesa, paziņojumi pamattekstā ifnetiek izpildīti.

Lai uzzinātu vairāk par to, kad testa izteiksme tiek vērtēta kā patiesa (vērtība nav nulle) un nepatiesa (0), pārbaudiet relāciju un loģiskos operatorus.

1. piemērs: ja paziņojums

 // 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; )

1. izeja

Ievadiet veselu skaitli: -2 Jūs ievadījāt -2. Ja paziņojums ir vienkāršs.

Kad lietotājs ievada -2, testa izteiksme number<0tiek novērtēta kā patiesa. Tādējādi ekrānā tiek parādīts ievadītais kods -2.

2. izeja

 Ievadiet veselu skaitli: 5 Ja paziņojums ir vienkāršs.

Kad lietotājs ievada 5, testa izteiksme number<0tiek novērtēta kā nepatiesa, un paziņojums pamattekstā ifnetiek izpildīts

C ja … cits paziņojums

ifPaziņojums var būt papildu elsebloku. if… elseIzraksta sintakse ir šāda:

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

Kā būtu, ja … cits paziņojums strādā?

Ja testa izteiksme tiek vērtēta kā patiesa,

  • iftiek izpildīti paziņojumi ķermeņa iekšienē .
  • paziņojumi ķermeņa iekšienē elsetiek izlaisti no izpildes.

Ja testa izteiksme tiek vērtēta kā nepatiesa,

  • elsetiek izpildīti paziņojumi ķermeņa iekšienē
  • paziņojumi ķermeņa iekšienē iftiek izlaisti no izpildes.

2. piemērs: ja … cits paziņojums

 // 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; )

Rezultāts

 Ievadiet veselu skaitli: 7 7 ir nepāra skaitlis.

Kad lietotājs ievada 7, testa izteiksme number%2==0tiek novērtēta kā nepatiesa. Tādējādi paziņojums ķermeņa iekšienē elsetiek izpildīts.

C ja … vēl kāpnes

if… elsePaziņojums izpilda divus dažādus kodus atkarībā no tā, vai tests izteiksme ir patiess vai nepatiess. Dažreiz jāizdara izvēle no vairāk nekā divām iespējām.

Ja… cits kāpnes ļauj pārbaudīt vairākas testa izteiksmes un izpildīt dažādus paziņojumus.

Ja… citādu kāpņu sintakse

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

3. piemērs: C, ja… vēl kāpnes

 // 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; )

Rezultāts

 Ievadiet divus skaitļus: 12 23 Rezultāts: 12 <23

Ligzdots, ja … citādi

Ir iespējams iekļaut if… elsepaziņojumu cita if… elsepaziņojuma pamattekstā .

4. piemērs: ligzdots, ja … citādi

Šī zemāk sniegtā programma attiecas uz diviem veseliem skaitļiem, izmantojot jebkuru no šiem elementiem <, >un =līdzīgi if… elsekāpņu piemēram. Tomēr if… elsešīs problēmas risināšanai mēs izmantosim ligzdotu paziņojumu.

 #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; )

Ja paziņojuma pamattekstā if… elseir tikai viens paziņojums, jums nav jāizmanto iekavas ().

Piemēram, šis kods

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

ir ekvivalents

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

Interesanti raksti...