Răspuns :
Într-un text cu cel mult 10^2 caractere, cuvintele sunt formate din litere mici și mari ale alfabetului englez și sunt separate prin câte un spațiu. Scrieți un program C/C++ care citește de la tastatură un text de tipul precizat, pe care îl transformă, astfel încât fiecare cuvânt să aibă prima literă mare, și toate
celelalte litere mici. Textul obținut se afişează pe ecran.
Exemplu: dacă de la tastatură se introduce textul ABIA aSTept sa Merg lA scoala se obține textul Abia Astept Sa Merg La Scoala
#include <iostream>
#include <string.h>
#include <ctype.h>
using namespace std;
int main()
{
char s[101];
int i;
cout<<"Introduceti textul:"<<endl;
cin.get(s,101); //citim textul ce contine si spatii
for(i=0; i<strlen(s); i++)
{
if(isupper(s[i])) //daca intalnim litere mari
s[i]=tolower (s[i]); // le facem mici
}
for(i=0; i<strlen(s); i++)
{
if(s[i-1]==' ') // daca caracterul anterior celui pe care ne aflam, este spatiu
s[i]=toupper(s[i]); // atunci il facem mare
}
s[0]=toupper(s[0]); // Facem si primul caracter mare
cout<<s;
return 0;
}
Mi s-a parut mai usor si interesant sa folosesc instructiunile bibliotecii ctype.h. Ti-am explicat pe cod ce am facut.