Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam,
mam taki programik ktory pownien zliczac ilosc literek w tekscie
#include <stdio.h> #include <iostream> #include <cstdlib> int main() { char znak; int petla; int ilosc_znakow; do { printf("\nWprowadz tekst: "); ilosc_znakow = 0; for (ilosc_znakow = 0; getchar() != '\n'; ++ilosc_znakow); printf("%d\n", ilosc_znakow); for (petla=1; petla<=ilosc_znakow;++petla) { printf( "*" ); } printf("\nCzy chcesz zakonczyc program (t/n)"); // cin>>znak; scanf("%c",&znak); }while(znak!='t'); system("pause"); }
Wszystko dziala calkiem ok do momentu pytania o powtorzenie dzialania, tzn wyjsc z programu wyjdzie jesli damy t ale nie wykona ponownie petli tylko bd wypisywal ze nie ma wcale znakow.
co jest nie tak?
Z gory dzieki za pomoc.
Offline
#include <stdio.h> #include <stdlib.h> int main() { char znak; int petla; int ilosc_znakow; do { printf("\nWprowadz tekst: "); ilosc_znakow = 0; for (ilosc_znakow = 0; getchar() != '\n'; ++ilosc_znakow); printf("%d\n", ilosc_znakow); for (petla=1; petla<=ilosc_znakow;++petla) { printf( "*" ); } printf("\nCzy chcesz zakonczyc program (t/n)"); // cin>>znak; scanf("%c",&znak); getchar(); }while(znak!='t'); //system("pause"); return 0; }
Na koniec pobierasz znak ale w buforze jest jeszcze Enter ('\n'), którego to pobiera później pętla for.
Offline
Pomogło, ślicznie dziękuję za pomoc.
Offline