Jump to content
Fórum Script Brasil
  • 0

Programa que Diga se é Vogal ou Consoante


Linconn

Question

Amigos estou tentando fazer um codigo em c, que quando o suario digitar uma letra aparece o resultado se é Vogal consoante ou não é letra.

comecei assim:

int main(){
    
   char L;
    
    
    printf("Digite uma Letra \n");
    scanf("c",L);
    
    if (L == "A" )//|| L== "B")
    printf("Essa letra e vogal \n");
    
   //  else
    // printf("Essa letra e cosoante \n");

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Voce comecou bem, so faltou algumas partes.

Fiz um codigo com algumas explicacoes pra tentar te ajudar.

Qualquer duvida posta ai.

Abs


#include <ctype.h>
#include <stdio.h>
#include <conio.h>

void main(void)
{
char letra;
int laco;

// laco para 5 interaçoes com o usuario
for (laco = 0; laco < 5; laco++)
{
printf("\n\ndigite uma letra:\n");
scanf("%c", &letra);
// limpa o buffer do teclado evitando que a rotina trate o ENTER
fflush(stdin);

// a funcao isalpha <ctype.h> testa se o caracter informado é uma
// letra entre 'A' e 'Z' e 'a' e 'z'.
// ela retorna um valor maior que 0 (zero) se realmente for uma letra
if (isalpha(letra) > 0)
{
// a funcao toupper <ctype.h> converte uma letra para maiusculo.
// isso é feito apenas pra facilitar o teste sem ter que comparar
// letras maiusculas e minusculas
letra = toupper(letra);
switch(letra)
{
// caso seja uma das letras abaixo exibe a mensagem de que
// é uma vogal.
case 'A':
case 'E':
case 'I':
case 'O':
case 'U':
printf("\n\n<%c> é uma vogal\n", letra);
break;
default:
// se não passou nos cases acima e com certeza é uma letra
// então so pode ser uma consoante
printf("\n\n<%c> é uma consoante\n", letra);
}
}
else
{
// se chegou aqui é porque a funcao isalpha já identificou que não
// é uma letra
printf("\n\n<%c> não é uma letra\n", letra);
}
}
}
[/codebox]

Link to comment
Share on other sites

  • 0
Voce comecou bem, so faltou algumas partes.

Fiz um codigo com algumas explicacoes pra tentar te ajudar.

Qualquer duvida posta ai.

Abs

Amigão obrigado mas ainda falta muito para eu chegar nesse conhecimento que você tem.

Parabens.


#include <ctype.h>
#include <stdio.h>
#include <conio.h>

void main(void)
{
char letra;
int laco;

// laco para 5 interaçoes com o usuario
for (laco = 0; laco < 5; laco++)
{
printf("\n\ndigite uma letra:\n");
scanf("%c", &letra);
// limpa o buffer do teclado evitando que a rotina trate o ENTER
fflush(stdin);

// a funcao isalpha <ctype.h> testa se o caracter informado é uma
// letra entre 'A' e 'Z' e 'a' e 'z'.
// ela retorna um valor maior que 0 (zero) se realmente for uma letra
if (isalpha(letra) > 0)
{
// a funcao toupper <ctype.h> converte uma letra para maiusculo.
// isso é feito apenas pra facilitar o teste sem ter que comparar
// letras maiusculas e minusculas
letra = toupper(letra);
switch(letra)
{
// caso seja uma das letras abaixo exibe a mensagem de que
// é uma vogal.
case 'A':
case 'E':
case 'I':
case 'O':
case 'U':
printf("\n\n<%c> é uma vogal\n", letra);
break;
default:
// se não passou nos cases acima e com certeza é uma letra
// então so pode ser uma consoante
printf("\n\n<%c> é uma consoante\n", letra);
}
}
else
{
// se chegou aqui é porque a funcao isalpha já identificou que não
// é uma letra
printf("\n\n<%c> não é uma letra\n", letra);
}
}
}
[/codebox]

Link to comment
Share on other sites

  • 0

outra solução, e deixo p/ você fazer a diferenciação de letras e outros caracteres :closedeyes:

#include <string.h>

int verifica(char letra)
{
    int i;
    char vogais[] = {'a','e','i','o','u'};
    for (i=0; i<5; i++)
    {
          if (tolower(letra) == vogais[i])
                {
                   return -99;
                   break;
                   }
    }
}

main (void)
{
     char letra;
     printf("Informe uma letra: ");
     letra = getch();
     if (verifica(letra) == -99)
        printf ("\n\n %c = vogal \n\n", letra);
        else printf("\n\n %c = consoante \n\n", letra);
     system("pause");
     exit(0);     
}

Edited by LacosTTe
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...