Ir ao conteúdo
  • Cadastre-se

String - Contar vogais


rs40

Posts recomendados

Boa noite,

não estou conseguindo terminar este programa que e assim:

Fazer uma função que receba uma string como parâmetro e retornar o número de vogais na string. A função deve seguir o protótipo: int conta_vogais (char* str);

segue a minha tentativa:


#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int conta_vogais( char* str); /*função */

int main()
{
char frase[100];
int i, contador = 0;

printf("Digite uma frase\n");
fgets(frase, 100, stdin);

for(i=0; i<strlen(frase); i++)
{
if((frase[i]=='a')||(frase[i]=='i')||(frase[i]=='e')||(frase[i]=='o')||(frase[i]=='u'))
{
contador++;
}
}


/*Programa principal*/
int conta_vogais( char* str)
{

printf("\nNumero de vogais: %d\n\n", contador);

getche();

}

mas esta com erro não consigo terminar o programa principal para o programa rodar corretamente.

Alguém poderia me ajudar?

Link para o comentário
Compartilhar em outros sites

cara você n entendeu a parte da contagem deve estar dentro da outra funcao e não da principal.

Do jeito que voce fez está tentando acessar a variavel contador definida em uma funcao dentro de outra funcao.

Da uma olhada no codigo que fiz.

#include<stdio.h>

#include<stdlib.h>

#include<string.h>

int conta_vogais(char* str){

int i=0,contador=0;

while(str!='\0'){

if((str=='a')||(str=='e')||(str=='i')||(str=='o')||(str=='u')||(str=='A')||(str=='E')||(str=='I')||(str=='O')||(str=='U')){

contador++;

}

i++;

}

return contador;

}

int main(){

char frase[100];

printf("digite uma frase:\n");

gets(frase);

printf("O numero de vogais e: %d",conta_vogais(frase));

return 0;

}

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Uma versão mais enxuta:


int conta_vogais(const char * s)
{
int i, num = 0;
char vogais[10] = "AaEeIiOoUu";

while (*s)
{
for (i=0; i<10; i++)
if (*s == vogais[i])
num++;
s++;
}
return num;
}

PS.: Não precisa colocar tags no título do tópico, como é o caso de "[Ajuda]". Não temos esse costume aqui. ;)

Abraço!

Link para o comentário
Compartilhar em outros sites

  • 6 anos depois...

Me ajudem nessa atividade:

Agora que já vimos o que são strings e como elas podem ser implementadas (também criamos alguns exemplos), crie uma função em C que conta quantas consoantes existem em uma string. Siga o padrão usado na unidade 16 para a função que conta quantas vogais existem. Ou seja, crie a função que conta quantas consoantes há em uma string e também crie uma implementação para a função main na qual a sua função é testada corretamente.

Contar quantas letras existem na string e subtrair o número de vogais pode ser mais fácil do que contar a ocorrência de cada consoante.

  • Triste 1
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!