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(). 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