Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Hellsius

[Resolvido] Programa armazena o sexo e idade da pessoa.

Recommended Posts

Sou novato em programção e estou tentando desenvolver este exercicio em linguagem C.

"Faça um programa que leia o sexo e idade. Se sexo for feminino e idade for menor que 25, imprimir em tela a palavra ACEITA. Caso contrario NAO ACEITA."

 

Obs: Se eu coloco o sexo como "m" e coloco a idade menor que 25 ele aceita, sendo que não deveria aceitar.

Erro mostrado pelo programa: 19 C:\Documents and Settings\Administrador\Desktop\sexo idade.c [Warning] assignment makes integer from pointer without a cast

 

Segue o fonte abaixo:

____________________________________________________________________________________________________________________

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

int main ()
{
   // Variaveis
   char sexo;
   int idade;

   // Entrada de Dados
   printf("Qual seu sexo? " 
   "\nDigite M para Masculino e F para feminino: ");
   scanf("%char", &sexo);
   printf("Qual sua idade? ");
   scanf("%d", &idade);

   // Processamento
   if(sexo="f"){
               if(idade<=25){
                             printf("ACEITA!");
                             }else{
                                   printf("NAO ACEITA!");
                                   }
               }else{
                     printf("NAO ACEITA!");
                     }
   // Final do Código
   getch ();
   return 0;
}

___________________________________________________________________________________________________________________

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, achei alguns problemas no seu código.

Primeiro:

scanf("%char", &sexo);

Isso pode até funcionar, mas na minha opinião o correto seria apenas "%c", ficando desse jeito:

scanf("%c", &sexo);

 

Segundo:

if(sexo="f"){

Dois erros, quando você vai comparar duas variáveis dentro do IF se usa == (dois sinais de iguais), e quando a variável é do tipo char, se usa aspas simples (''), não dupla como você uso, por isso que ta dando esse erro que você reporto ai. O correto seria assim:

if(sexo=='f'){

 

Quando você usa apenas um sinal de igual, é para atribuição, por exemplo, se você queiser que a variável sexo receba o char f:

sexo = 'f';

Dentro do IF e para comparações == (dois iguais), para atribuição de valores = (um igual).

 

Uma dica, quando for postar códigos, use a tag

 para ficar mais organizado, é regra aqui no fórum.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.