Wyspiarz Napisano Kwiecień 1, 2014 Udostępnij Napisano Kwiecień 1, 2014 Witam,Jestem początkującym. Zatrzymałem się na pewnym etapie robienia interfejsu do mojego układu miernika. Dla dobrego zobrazowania napisałem prosty program. Dokładnie mówiąc to mam problem z wracaniem do początku pętli. Jeżeli na konsoli wpiszę np liczbę 3 to chcę, żeby program wrócił do początku i żebym znów mógł wybrać jeszcze raz (tak długo, aż wpiszę 1 lub 2); Tu wklejam kod: #include <stdio.h> #include <stdlib.h> /* run this program using the console pauser or add your own getch, system("pause") or input loop */ int main() { printf("wybor liczby \n"); int x; scanf("%d", &x); if(x==1 | x==2) switch(x) { case 1: printf("jeden \n"); break; case 2: printf("dwa \n"); break; } else printf("wybierz jeszcze raz"); getchar(); return 0; } Próbowałem z break'ami, ale on tylko zatrzymują program. Próbowałem z continue, ale on tylko przechodzi do następnego etapu programu. Co radzicie?
Wikkan Kwiecień 1, 2014 Udostępnij Kwiecień 1, 2014 Program musi wykonywać się w pętli nieskończonej for lub while. Po drugie nie wiem czy komórka mi tak wyświetla kod ale źle korzystasz z funkcji if. 1
Slawus Kwiecień 1, 2014 Udostępnij Kwiecień 1, 2014 if(x==1 | x==2) i switch w którym sprawdzasz te same wartości są równoważne, zamiast if'a i else możesz w switchu dopisać klauzulę default. To tak poza tym, że musisz użyć pętli... 1
Wyspiarz Kwiecień 1, 2014 Autor tematu Udostępnij Kwiecień 1, 2014 Już udało mi się poprawić: #include <stdio.h> #include <stdlib.h> /* run this program using the console pauser or add your own getch, system("pause") or input loop */ int main() { printf("wybor liczby \n"); int x; while(1) { scanf("%d", &x); switch(x) { case 1: printf("jeden \n"); break; case 2: printf("dwa \n"); break; } getchar(); } }
Pomocna odpowiedź
Bądź aktywny - zaloguj się lub utwórz konto!
Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony
Utwórz konto w ~20 sekund!
Zarejestruj nowe konto, to proste!
Zarejestruj się »Zaloguj się
Posiadasz własne konto? Użyj go!
Zaloguj się »