Příkaz switch umožňuje větvit program na základě nějakého selektoru. Selektorje proměnná nebo výraz datového typu celé číslo, znak nebo výčet.
switch (selektor) { case hodnota1 : prikaz1;break; case hodnota2 : prikaz2;break; ... case hodnotan : prikazn;break; default: prikazD;break; }
int znamka = 2; switch (znamka) //selektor větvení { case 1: printf("Vyborny\n"); break; case 2: printf("Chvalitebny\n"); break; case 3: printf("Dobry\n"); break; case 4: printf("Dostatcny\n"); break; case 5: printf("Nedostatcny\n"); break; default: printf("Chybny vstup!\n"); break; }
char rimska = 'D'; int arabsky; switch (rimska) //selektor větvení { case 'I': arabsky = 1; break; case 'V': arabsky = 5; break; case 'X': arabsky = 10; break; case 'L': arabsky = 50; break; case 'C': arabsky = 100; break; case 'D': arabsky = 500; break; case 'M': arabsky = 1000; break; default: printf("Neznama cislice\n"); arabsky = 0; break; } printf("Rimska cislice %c je %i\n", rimska, arabsky);
enum tyden { pondeli, utery, streda, ctvrtek, patek, sobota, nedele }; enum tyden dnes = streda; switch (dnes) //selektor větvení { case pondeli: case patek: case utery:printf("13 - 18");break; case streda:printf("12 - 20");break; case ctvrtek:printf("8 - 12");break; case sobota: case nedele:printf("zavreno");break; }