Három szám közül melyik a legnagyobb?
A feladat, hogy három szám közül döntsük el melyik a legnagyobb
If-el sikerült megcsinálni, de a switch-ben nem, ott hogyan adom meg a 3 esetet? hiszen a case után csak számot írhatok
if-el így csináltam:
int main () {
int a, b, c;
scanf("%d %d %d", &a, &b, &c);
if( a >= b && a >= c) {
printf("Legnagyobb: %d\n", a);
}else if( b >= a && b >= c) {
printf("Legnagyobb: %d\n", b);
}else if( c >= a && c >= b) {
printf("Legnagyobb: %d\n", c);
}
return 0;
}
Egymásba ágyazott switch-ekkel is meg tudod csinálni, de aki az én cégemnél ilyet éles kódban leírna, az lenne az utolsó napja:
switch (a >= b && a >= c) {
case 1:
printf("Legnagyobb: %d\n", a);
break;
case 0:
switch (b >= a && b >= c) {
case 1:
printf("Legnagyobb: %d\n", b);
break;
case 0:
printf("Legnagyobb: %d\n", c);
}
break;
}
Még mindig #6 vagyok, csak hogy megspóroljam neked az újabb kérdést, ?:-tal itt a válasz:
printf("Legnagyobb: %d\n",
a >= b && a >= c
? a
: b >= a && b >= c
? b
: c);
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!