Pernyataan C if ... else

Dalam tutorial ini, Anda akan belajar tentang pernyataan if (termasuk if… else dan nested if… else) dalam pemrograman C dengan bantuan contoh.

Pernyataan C if

Sintaks ifpernyataan dalam pemrograman C adalah:

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

Bagaimana jika pernyataan berhasil?

The ifpernyataan mengevaluasi ekspresi tes dalam kurung ().

  • Jika ekspresi pengujian dievaluasi ke true, pernyataan di dalam tubuh ifdieksekusi.
  • Jika ekspresi pengujian dievaluasi ke false, pernyataan di dalam tubuh iftidak akan dijalankan.

Untuk mempelajari lebih lanjut tentang kapan ekspresi pengujian dievaluasi menjadi benar (nilai bukan nol) dan salah (0), periksa operator relasional dan logika.

Contoh 1: pernyataan if

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

Keluaran 1

Masukkan integer: -2 Anda memasukkan -2. Pernyataan if itu mudah.

Saat pengguna memasukkan -2, ekspresi pengujian number<0dievaluasi menjadi benar. Karenanya, Anda memasukkan -2 ditampilkan di layar.

Keluaran 2

 Masukkan integer: 5 Pernyataan if itu mudah.

Ketika pengguna memasukkan 5, ekspresi tes number<0dievaluasi menjadi false dan pernyataan di dalam tubuh iftidak dieksekusi

Pernyataan C if… else

The ifpernyataan mungkin memiliki opsional elseblok. Sintaks dari if… elsepernyataan tersebut adalah:

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

Bagaimana jika… pernyataan lain berhasil?

Jika ekspresi tes dievaluasi menjadi benar,

  • pernyataan di dalam tubuh ifdieksekusi.
  • pernyataan di dalam tubuh elseakan dilewati dari eksekusi.

Jika ekspresi tes dinilai salah,

  • pernyataan di dalam tubuh elsedieksekusi
  • pernyataan di dalam tubuh ifakan dilewati dari eksekusi.

Contoh 2: pernyataan if… else

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

Keluaran

 Masukkan bilangan bulat: 7 7 adalah bilangan bulat ganjil.

Saat pengguna memasukkan 7, ekspresi tes number%2==0dievaluasi menjadi salah. Oleh karena itu, pernyataan di dalam tubuh elsedieksekusi.

C jika… Ladder lainnya

The if… elsepernyataan mengeksekusi dua kode yang berbeda tergantung pada apakah ekspresi tes benar atau salah. Terkadang, pilihan harus dibuat dari lebih dari 2 kemungkinan.

Tangga if… else memungkinkan Anda untuk memeriksa di antara beberapa ekspresi pengujian dan menjalankan pernyataan yang berbeda.

Sintaks dari if… else Ladder

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

Contoh 3: C if… else 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; )

Keluaran

 Masukkan dua bilangan bulat: 12 23 Hasil: 12 <23

Bersarang jika… lain

Dimungkinkan untuk menyertakan if… elsepernyataan di dalam tubuh if… elsepernyataan lain .

Contoh 4: Bersarang if… else

Program yang diberikan di bawah ini menghubungkan dua bilangan bulat menggunakan salah satu <, >dan =mirip dengan contoh if… elseladder. Namun, kami akan menggunakan if… elsepernyataan bersarang untuk menyelesaikan masalah ini.

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

Jika badan if… elsepernyataan hanya memiliki satu pernyataan, Anda tidak perlu menggunakan tanda kurung ().

Misalnya kode ini

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

setara dengan

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

Artikel yang menarik...