switch ... case dalam Pemrograman C.

Dalam tutorial ini, Anda akan belajar membuat pernyataan sakelar dalam pemrograman C dengan bantuan sebuah contoh.

Pernyataan switch memungkinkan kita untuk mengeksekusi satu blok kode di antara banyak alternatif.

Anda bisa melakukan hal yang sama dengan if… else… iftangga. Namun, sintaks switchpernyataan jauh lebih mudah untuk dibaca dan ditulis.

Sintaks sakelar… case

 switch (expression) ( case constant1: // statements break; case constant2: // statements break;… default: // default statements )

Bagaimana cara kerja pernyataan sakelar?

Ekspresi dievaluasi sekali dan dibandingkan dengan nilai dari setiap label huruf.

  • Jika ada yang cocok, pernyataan yang sesuai setelah label yang cocok dijalankan. Misalnya, jika nilai ekspresi sama dengan konstanta2, pernyataan setelah case constant2:dieksekusi hingga breakditemukan.
  • Jika tidak ada kecocokan, pernyataan default dijalankan.

Jika kita tidak menggunakan break, semua pernyataan setelah label yang cocok dijalankan.

Omong-omong, defaultklausa di dalam switchpernyataan itu opsional.

switch Statement Flowchart

Contoh: Kalkulator Sederhana

 // Program to create a simple calculator #include int main() ( char operator; double n1, n2; printf("Enter an operator (+, -, *, /): "); scanf("%c", &operator); printf("Enter two operands: "); scanf("%lf %lf",&n1, &n2); switch(operator) ( case '+': printf("%.1lf + %.1lf = %.1lf",n1, n2, n1+n2); break; case '-': printf("%.1lf - %.1lf = %.1lf",n1, n2, n1-n2); break; case '*': printf("%.1lf * %.1lf = %.1lf",n1, n2, n1*n2); break; case '/': printf("%.1lf / %.1lf = %.1lf",n1, n2, n1/n2); break; // operator doesn't match any case constant +, -, *, / default: printf("Error! operator is not correct"); ) return 0; ) 

Keluaran

 Masukkan operator (+, -, *,): - Masukkan dua operan: 32,5 12,4 32,5 - 12,4 = 20,1

Operator - yang dimasukkan oleh pengguna disimpan dalam variabel operator. Dan, dua operan 32.5 dan 12.4 masing-masing disimpan dalam variabel n1 dan n2.

Sejak operator -, kontrol program melompat ke

 printf ("%. 1lf -% .1lf =% .1lf", n1, n2, n1-n2);

Akhirnya, pernyataan break mengakhiri switchpernyataan tersebut.

Artikel yang menarik...