#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define SIZE 50 //Max della frase
int controlla (char frase[], char chiave);
int main()
{
char frase[SIZE], chiave;
int risultato;
printf("Immetti la frase (max %d caratteri):\n", SIZE);//Viene chiesta la frase
gets(frase);
printf("Immetti il carattere che vuoi controllare = ");//Viene chiesto il carattere
chiave = getchar();
risultato = controlla(frase, chiave); //Viene elaborato la funzione che conta quante volte il carattere è presente
printf("Il carattere %c e' presente %d volte", chiave, risultato);
return 0;
}
int controlla (char frase[], char chiave)
{
int i, conta = 0,m;
m = strlen(frase);
for(i=0;i<m;i++) //Ciclo che controlla ogni carattere della frase con la chiave, in caso affermativo aumenta di 1
{
if(frase[i] == chiave)
conta++;
}
return conta;
}
Codice funzionante e con spiegazione.
Molte volte può essere utile guardare prima un esempio, ti consiglio di provarci comunque a farlo e ogni tanto "spiare la soluzione".