Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> Bahasa C

switch…case di C (Switch Statement in C) dengan Contoh

Apa itu Pernyataan Switch di C?

Ganti pernyataan di C menguji nilai variabel dan membandingkannya dengan beberapa kasus. Setelah kecocokan kasus ditemukan, blok pernyataan yang terkait dengan kasus tertentu akan dieksekusi.

Setiap kasing dalam blok sakelar memiliki nama/nomor berbeda yang disebut sebagai pengenal. Nilai yang diberikan oleh pengguna dibandingkan dengan semua kasus di dalam blok sakelar hingga kecocokan ditemukan.

Jika kecocokan kasus TIDAK ditemukan, maka pernyataan default dijalankan, dan kontrol keluar dari blok sakelar.

Dalam tutorial ini, Anda akan belajar-

Ganti Sintaks Huruf Besar

Sintaks umum bagaimana switch-case diimplementasikan dalam program 'C' adalah sebagai berikut:

switch( expression )
{
	case value-1:
			Block-1;
			Break;
	case value-2:
			Block-2;
			Break;
	case value-n:
			Block-n;
			Break;
	default:
			Block-1;
			Break;
}
Statement-x;

Diagram Alir Pernyataan Beralih

Diagram berikut mengilustrasikan bagaimana sebuah case dipilih dalam switch case:

Contoh Ganti Kasus di C

Program berikut mengilustrasikan penggunaan switch:

#include <stdio.h>
    int main() {
        int num = 8;
        switch (num) {
            case 7:
                printf("Value is 7");
                break;
            case 8:
                printf("Value is 8");
                break;
            case 9:
                printf("Value is 9");
                break;
            default:
                printf("Out of range");
                break;
        }
        return 0;
    }

Keluaran:

Value is 8

  1. Dalam program yang diberikan kami telah menjelaskan menginisialisasi variabel num dengan nilai 8.
  2. Konstruk switch digunakan untuk membandingkan nilai yang disimpan dalam variabel num dan mengeksekusi blok pernyataan yang terkait dengan kasus yang cocok.
  3. Dalam program ini, karena nilai yang disimpan dalam variabel num adalah delapan, sebuah switch akan mengeksekusi kasus yang berlabel kasus 8. Setelah mengeksekusi kasus, kontrol akan keluar dari switch dan program akan dihentikan dengan hasil yang berhasil dengan mencetak nilai pada layar keluaran.

Coba ubah nilai variabel num dan perhatikan perubahan outputnya.

Misalnya, kami mempertimbangkan program berikut yang default:

#include <stdio.h>
int main() {
int language = 10;
  switch (language) {
  case 1:
    printf("C#\n");
    break;
  case 2:
    printf("C\n");
    break;
  case 3:
    printf("C++\n");
    break;
  default:
    printf("Other programming language\n");}}

Keluaran:

Other programming language

Saat bekerja dengan switch case di C, Anda mengelompokkan beberapa case dengan label unik. Anda perlu memasukkan pernyataan break dalam setiap kasus ke cabang di akhir pernyataan switch.

Kasus default opsional berjalan ketika tidak ada kecocokan lain yang dibuat.

Kami mempertimbangkan pernyataan switch berikut:

#include <stdio.h>
int main() {
int number=5;
switch (number) {
  case 1:
  case 2:
  case 3:
    printf("One, Two, or Three.\n");
    break;
  case 4:
  case 5:
  case 6:
    printf("Four, Five, or Six.\n");
    break;
  default:
    printf("Greater than Six.\n");}}

Keluaran:

Four, Five, or Six.

Saklar Bersarang di C

Di C, kita dapat memiliki sakelar dalam yang tertanam di sakelar luar. Selain itu, konstanta kasus dari sakelar dalam dan luar mungkin memiliki nilai yang sama dan tanpa konflik apa pun.

Kami mempertimbangkan program berikut di mana pengguna mengetikkan ID-nya sendiri, jika ID itu valid, ia akan memintanya untuk memasukkan kata sandinya, jika kata sandinya benar, program akan mencetak nama pengguna, jika tidak, program akan mencetak Salah Password dan jika ID tidak ada, program akan mencetak ID salah

#include <stdio.h>
int main() {
        int ID = 500;
        int password = 000;
        printf("Plese Enter Your ID:\n ");
        scanf("%d", & ID);
        switch (ID) {
            case 500:
                printf("Enter your password:\n ");
                scanf("%d", & password);
                switch (password) {
                    case 000:
                        printf("Welcome Dear Programmer\n");
                        break;
                    default:
                        printf("incorrect password");
                        break;
                }
                break;
            default:
                printf("incorrect ID");
                break;
        }
}

OUTPUT:

Plese Enter Your ID:
 500
Enter your password:
 000
Welcome Dear Programmer

  1. Dalam program yang diberikan kami telah menjelaskan dua variabel yang diinisialisasi:ID dan kata sandi
  2. Konstruk sakelar luar digunakan untuk membandingkan nilai yang dimasukkan dalam ID variabel. Ini mengeksekusi blok pernyataan yang terkait dengan kasus yang cocok (ketika ID==500).
  3. Jika pernyataan blok dieksekusi dengan kasus yang cocok, sakelar dalam digunakan untuk membandingkan nilai yang dimasukkan dalam kata sandi variabel dan mengeksekusi pernyataan yang ditautkan dengan kasus yang cocok (saat kata sandi==000).
  4. Jika tidak, switch case akan memicu case default dan mencetak teks yang sesuai mengenai outline program.

Mengapa kita membutuhkan Switch case?

Ada satu masalah potensial dengan pernyataan if-else yaitu kompleksitas program meningkat setiap kali jumlah jalur alternatif meningkat. Jika Anda menggunakan beberapa konstruksi if-else dalam program, sebuah program mungkin menjadi sulit untuk dibaca dan dipahami. Kadang-kadang bahkan membingungkan pengembang yang menulis program itu sendiri.

Solusi untuk masalah ini adalah pernyataan switch.

Aturan untuk pernyataan switch

  • Ekspresi harus selalu dieksekusi ke hasil.
  • Label huruf besar-kecil harus berupa konstanta dan unik.
  • Label huruf besar harus diakhiri dengan titik dua ( :).
  • Kata kunci break harus ada dalam setiap kasus.
  • Hanya ada satu label default.
  • Kita dapat membuat banyak pernyataan switch.

Ringkasan

  • Switch adalah konstruksi pengambilan keputusan di 'C.'
  • Switch digunakan dalam program yang melibatkan banyak keputusan.
  • Sakelar harus berisi ekspresi uji yang dapat dieksekusi.
  • Setiap kasus harus menyertakan kata kunci break.
  • Label huruf besar-kecil harus konstan dan unik.
  • Defaultnya adalah opsional.
  • Beberapa pernyataan sakelar dapat disarangkan satu sama lain.

Bahasa C

  1. Pernyataan sakelar C#
  2. C++ do… while loop dengan Contoh
  3. C++ Switch Case Statement dengan CONTOH
  4. C++ Pointer dengan Contoh
  5. Operator C++ Overloading dengan Contoh
  6. Fungsi C++ dengan Contoh Program
  7. Tutorial Koleksi C# dengan Contoh
  8. Pernyataan Python Print():Cara Mencetak dengan Contoh
  9. Python String count() dengan CONTOH
  10. Python round() fungsi dengan CONTOH