Mi a hiba? Hogyan kell használni a switch-case kulcsszavakat?
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int muv1;
float x;
float y;
float z;
printf("\nOSSZETETT SZAMOLOGEP\n\n");
printf("\nKEREM IRJON BE EGY SZAMOT!\n\n");
scanf("%f",&x);
printf("\nKEREM VALASSZON EGY MUVELETET AZ ALABBIAK KOZUL!\nazt a szamot irja be ahanyadik a muvelet a sorban\n\nOSSZEADAS, KIVONAS, SZORZAS, OSZTAS\n\n");
scanf("%d",&muv1);
printf("\nKEREM IRJA BE A KOVETKEZO SZAMOT!\n\n");
scanf("%f",&y);
switch(muv1);
{
case 1: x+y=z;
case 2: x-y=z;
case 3: x*y=z;
case 4: x/y=z;
default: printf("\nNEM A FELSOROLTAK KOZUL VALASZTOTTAL MUVELETET\n\n");
}
printf("\nA MUVELET EREDMENYE %f!",z);
system("PAUSE");
return 0;
}
Minden case rész végére kell egy break;
Am ez (x+y=z) pontosan micsoda? Fordítva van értelme, így nincs.
Az egyes case blokkok közé mindig kell egy-egy break, különben az első után, ami elundul, sorban lefut az összes többi is.
switch(muv1);
{
case 1: x+y=z; break;
case 2: x-y=z; break;
case 3: x*y=z; break;
case 4: x/y=z; break;
default: printf("\nNEM A FELSOROLTAK KOZUL VALASZTOTTAL MUVELETET\n\n");
}
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!