vuoi
o PayPal
tutte le volte che vuoi
/*Scrivere un programma C che legga una frase introdotta da tastiera.
La frase è terminata dall’introduzione del carattere di invio.
La frase contiene sia caratteri maiuscoli che caratteri minuscoli e complessivamente
al più 100 caratteri. Il programma dovrà stampare su schermo le seguenti informazioni:
• per ognuna delle lettere dell’alfabeto, il numero di volte che la lettera compare nella stringa
• il numero di consonanti presenti nella stringa
• il numero di vocali presenti nella stringa.*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
int main ()
{ unsigned char frase[101],c,k,lettere[255][2],h=0,i,x,flag,appoggio,temp[1000];
int tracciaTemp=0;
for (k=0;k<255;k++)
{ lettere[k][1]=0;
}
k=0;
printf("inserire una frase:\n");
while (k<100 && (c=getche()) != 13)
{ if(c==8 && k==0) // se il carattere inserito e' un backspace ed e' il primo carattere...
{ continue; // richiedo l'inserimento passando alla prossima iterazione
}
else //altrimenti...
{ if(c==8) // se il carattere e' un backspace, diminuisco il contatore delle lettere, in modo che alla
prossima iterazione si sovrasciva
{ // la lettera precedentemente inserita
k--;
tracciaTemp--;
appoggio=temp[tracciaTemp];
if(lettere[appoggio][1]==1) //inoltre se l'ultima lettera inserita era la prima della sua serie, diminuisco il
contatore delle lettere diverse
{ lettere[appoggio][1]=0; //e riporto a 0 la cella contigua alla lettera cancellata, che conteneva il numero di
ripetizioni di quella lettera
}
else //altrimenti diminuisco il numero delle lettere di quel tipo
{ lettere[appoggio][1]--;
}
continue; // e passo alla prossima iterazione
}
c=tolower(c); //lavoro su lettere minuscole
frase[k]=c;
flag=0;