Dalam tutorial ini, anda akan mengetahui pernyataan if (termasuk jika … lain dan bersarang jika … yang lain) dalam pengaturcaraan C dengan bantuan contoh.
C sekiranya Penyataan
Sintaks if
pernyataan dalam pengaturcaraan C adalah:
if (test expression) ( // statements to be executed if the test expression is true )
Bagaimana jika penyataan berfungsi?
The if
kenyataan menilai ungkapan ujian dalam tanda kurung ()
.
- Sekiranya ungkapan ujian dinilai benar, pernyataan di dalam badan
if
akan dilaksanakan. - Sekiranya ungkapan ujian dinilai salah, pernyataan di dalam badan
if
tidak akan dilaksanakan.
Untuk mengetahui lebih lanjut mengenai kapan ekspresi ujian dinilai kepada benar (nilai bukan sifar) dan salah (0), periksa operator hubungan dan logik.
Contoh 1: jika penyataan
// 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 bilangan bulat: -2 Anda memasukkan -2. Penyataan if itu mudah.
Apabila pengguna memasuki -2, ungkapan ujian number<0
dinilai menjadi benar. Oleh itu, Anda memasukkan -2 dipaparkan di skrin.
Keluaran 2
Masukkan bilangan bulat: 5 Pernyataan if mudah.
Apabila pengguna memasuki 5, ungkapan ujian number<0
dinilai menjadi salah dan penyataan di dalam badan if
tidak dilaksanakan
C jika… lain Penyataan
The if
kenyataan mungkin mempunyai pilihan else
blok. Sintaks if… else
pernyataan 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 berfungsi?
Sekiranya ungkapan ujian dinilai benar,
- pernyataan di dalam badan
if
dilaksanakan. - pernyataan di dalam badan
else
dilangkau dari pelaksanaan.
Sekiranya ungkapan ujian dinilai salah,
- pernyataan di dalam badan
else
dilaksanakan - pernyataan di dalam badan
if
dilangkau dari pelaksanaan.
Contoh 2: jika… pernyataan lain
// 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; )
Pengeluaran
Masukkan bilangan bulat: 7 7 adalah bilangan bulat ganjil.
Apabila pengguna memasuki 7, ungkapan ujian number%2==0
dinilai menjadi salah. Oleh itu, penyataan di dalam badan else
dilaksanakan.
C jika… lain Tangga
The if… else
kenyataan melaksanakan dua kod berbeza bergantung kepada sama ada ungkapan ujian adalah benar atau palsu. Kadang kala, pilihan mesti dibuat dari lebih dari 2 kemungkinan.
Tangga if… else membolehkan anda memeriksa antara beberapa ungkapan ujian dan melaksanakan pernyataan yang berbeza.
Sintaks jika … lain Tangga
if (test expression1) ( // statement(s) ) else if(test expression2) ( // statement(s) ) else if (test expression3) ( // statement(s) )… else ( // statement(s) )
Contoh 3: C jika … lain Tangga
// 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; )
Pengeluaran
Masukkan dua bilangan bulat: 12 23 Hasil: 12 <23
Bersarang jika… lain
Adalah mungkin untuk memasukkan if… else
pernyataan di dalam badan if… else
pernyataan lain .
Contoh 4: Bersarang jika… lain
Program yang diberikan di bawah ini mengaitkan dua bilangan bulat menggunakan salah satu <
, >
dan =
serupa dengan if… else
contoh tangga. Walau bagaimanapun, kami akan menggunakan if… else
penyataan bertingkat 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; )
Sekiranya badan if… else
penyataan hanya mempunyai satu pernyataan, anda tidak perlu menggunakan tanda kurung ()
.
Contohnya, kod ini
if (a> b) ( print("Hello"); ) print("Hi");
adalah bersamaan dengan
if (a> b) print("Hello"); print("Hi");