Esercizio 4
Scrivi un programma C++ per rendere maiuscola la prima lettera di ogni parola di una data stringa.
Di default poniamo sempre la prima lettera della stringa (di indice i=0) in maiuscolo. L'eventuale commutazione in maiuscolo avviene tramite la funzione della libreria standard toupper() opposta alla funzione tolower() che commuta eventualmente un carattere in minuscolo.
#include<iostream>
#include<string>
using namespace std;
main(){
string s="uno due tre quattro";
int i,n=s.size();
for(i=0;i<n;i++)
if(i==0 || (s[i-1]==' ' && s[i]!=' '))s[i]=toupper(s[i]);
cout<<s;
} //fine main
Se l'elemento attuale non è il primo, la commutazione in maiuscolo avviene solo se il carattere precedente è uno pazio (s[i-1]==' ') mentre il carattere attuale non lo è (s[i]!=' ').