PC Tema 1

De la WikiLabs
Jump to navigationJump to search

În telecomunicații, diferite caractere trimise în cadrul unui SMS au un statut special și de aceea trebuie numărate pentru a calcula corect dimensiunea în octeți a mesajului, și deci costul serviciului de transmisie. Pentru această temă, se cere numărarea și afișarea diferitelor tipuri de caractere dintr-un mesaj citit de la tastatură.

Cerință

Dându-se un șir de caractere, citit caracter cu caracter, de la tastatură, până la întâlnirea caracterului newline ('\n'), să se numere și să se afișeze câte caractere s-au introdus din ficare categorie:

  • litere mici (a-z)
  • litere mari (A-Z)
  • cifre (0-9)
  • caractere neprintabile (spații sau caractere tab - '\t')
  • caractere speciale (orice alt caracter printabil de pe tastatură care nu este literă, cifră sau spațiu).

Observații

  1. Un caracter se poate citi de la tastatură cu funcția getchar(). Această funcție este definită în fișierul header stdio.h. Exemplu:
    #include<stdio.h>
    
    int main(){
        printf("Introduceti un caracter: ");
        char c = getchar();
        printf("Caracterul introdus a fost:  %c\n", c);
        return 0;
    }
    
  2. Tasta Enter produce un caracter numit newline care are codul ASCII 10 (sau '\n').

Date de intrare

O singura linie de text, terminată cu Enter.

Exemplu

Andrei s-a dus la piata si a cumparat 3 kilograme de cartofi si 5 de castraveti!

Date de ieșire

Cinci linii de text, de formatul următor:

Litere mici: %d
Litere mari: %d
Cifre: %d
Caractere neprintabile: %d
Caractere speciale: %d

Exemplu (pentru intrarea de mai sus)

Litere mici: 60
Litere mari: 1
Cifre: 2
Caractere neprintabile: 15
Caractere speciale: 2