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

Zabezpieczenie przed wpisywaniem innych wartości niż litery

0 głosów
345 wizyt
pytanie zadane 23 października 2018 w C i C++ przez Świeżak01 Nowicjusz (180 p.)

Dokładne polecenie:

Napisz program, który pobiera od użytkownika 5 liter. W przypadku gdy pobrana litera jest mała zamień ją na wielką, a następnie wyświetl. Jeśli litera jest wielka wyświetl ją bez zamiany.

Mam problem z zabezpieczeniem scanfa przed przyjęciem czegokolwiek innego niż litery, chciałabym też żeby przy próbie wprowadzenia więcej niż 5 wartości do tablicy od razu wypisywał "incorrect input". Na razie mam coś takiego, bardzo proszę o wskazanie błędów:

#include <stdio.h>
#include <ctype.h>

int main() {

  char litery[6];
  int i;
  printf("Podaj litery: ");
  int a=scanf("%5s" ,litery);
  if (a!=1) printf("incorrect input");
  for (i=0;i<6;i++)
  {
    if ((litery[i] >= 'A' && litery[i] <= 'Z') || (litery[i] >= 'a' && litery[i] <= 'z')) 
    {
      for (i=0;i<6;i++) 
      {
        if (litery[i] >= 'A' && litery[i] <= 'Z') 
        {
          printf("%c" ,litery[i]);
        }
        else if (litery[i] >= 'a' && litery[i] <= 'z') 
        {
          printf("%c" ,toupper(litery[i]));
        }
   
      }
    }
    else printf("incorrect input");
  }
  
 return 0;

} 
 

 

1 odpowiedź

0 głosów
odpowiedź 23 października 2018 przez RafalS VIP (122,820 p.)
Walidacja liter: http://www.cplusplus.com/reference/cctype/isalpha/

Co do sprawdzenia czy wpisano 6. Literę po wczytaniu 5 bez narzucenia wczytywania 6. zawsze to jedyne co mi przychodzi do głowy to prompt czy chcesz wczytywac dalej.
komentarz 24 października 2018 przez Świeżak01 Nowicjusz (180 p.)
Dzięki!

Podobne pytania

0 głosów
1 odpowiedź 255 wizyt
pytanie zadane 16 stycznia 2020 w C i C++ przez PaaaV Nowicjusz (140 p.)
0 głosów
1 odpowiedź 270 wizyt
+1 głos
1 odpowiedź 42 wizyt

85,873 zapytań

134,644 odpowiedzi

298,914 komentarzy

56,740 pasjonatów

Advent of Code 2021

Top 15 użytkowników

  1. 926p. - rucin93
  2. 925p. - Whistleroosh
  3. 912p. - nidomika
  4. 876p. - adrian17
  5. 867p. - Michal Drewniak
  6. 866p. - Mikbac
  7. 863p. - Mateusz Bogdan
  8. 859p. - CC PL
  9. 797p. - Argeento
  10. 704p. - ScriptyChris
  11. 683p. - tokox
  12. 660p. - Vinox
  13. 645p. - TheLukaszNs
  14. 642p. - s. Dorota Kowalewska
  15. 628p. - WhiskeyTaster
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

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

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...