• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Wyświetlanie znaków po spacji

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
0 głosów
2,355 wizyt
pytanie zadane 3 grudnia 2015 w C i C++ przez Kaydan Początkujący (260 p.)
Witam,

muszę rozwiązać zadanie, w którym po podaniu stringa 1,2,3- wyrazowego konsola ma zwracać tylko pierwsze litery wyrazów zawartych w stringu. Jak kwestie konwersji na pojedyncze char rozwiązałem, mam problem z tym jak zakodować wszystko by zwracało mi litery z następnych wyrazów. Wiem, że muszę tutaj zaznaczyć żeby wczytać znak po spacji, lecz nie wiem jak..

Proszę o pomoc :)

1 odpowiedź

+1 głos
odpowiedź 3 grudnia 2015 przez Patrycjerz Mędrzec (192,320 p.)
wybrane 26 lutego 2016 przez Kaydan
 
Najlepsza
Szukaj w tekście znaku spacji - gdy takowy występuje, to pobierasz następny znak i analogicznie reszta.
komentarz 3 grudnia 2015 przez Kaydan Początkujący (260 p.)
Rozumiem, ale w jaki sposób to okodowac?
komentarz 3 grudnia 2015 przez Patrycjerz Mędrzec (192,320 p.)
#include <iostream>

int main()
{
    char tekst[12] = "Ala ma kota";
    std::cout << tekst[0] << " ";
    for(int i = 0; i < 11; i++)
    {
        if(tekst[i] == ' ')
            std::cout << tekst[i + 1] << " ";
    }
    return 0;
}

 

komentarz 3 grudnia 2015 przez krzemionskyy Użytkownik (630 p.)
Zauważ że może być przypadek w którym są dwie spacje pod rząd, a w tym momencie ten kod przestaje działać. W tego typu zadankach polecam użyć typu logicznego 'bool' ;) Pozdrawiam.
komentarz 3 grudnia 2015 przez Patrycjerz Mędrzec (192,320 p.)
Oczywiście, wiem o tym, ale chciałem pokazać tylko najprostsze rozwiązanie tego problemu - ewentualne poprawki autor pytania może dodać sam.
komentarz 3 grudnia 2015 przez Kaydan Początkujący (260 p.)
int main(void)
{
    string c= GetString();
 
    if(c !=NULL)
    {
        for(int i= 0, n= strlen(c); i<n; i=i+n)
        {                    
                printf("%c", toupper(c[0]));
              
        }
    }
}

 

mam takie coś, wprowadzana ilość znaków w string jest zmienna i miejsce spacji także, próbowałem to przełożyć jak napisałeś i nadal nie wychodzi.. Tylko dla pierwszego wyrazu mi wychodzi. 

Podobne pytania

0 głosów
1 odpowiedź 1,318 wizyt
pytanie zadane 3 stycznia 2016 w C i C++ przez agre Użytkownik (550 p.)
0 głosów
0 odpowiedzi 404 wizyt
pytanie zadane 15 października 2020 w PHP przez nowyklemens Początkujący (430 p.)
0 głosów
1 odpowiedź 726 wizyt
pytanie zadane 27 kwietnia 2020 w C i C++ przez ResCrove Obywatel (1,700 p.)

93,440 zapytań

142,432 odpowiedzi

322,679 komentarzy

62,802 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

...