Ir para conteúdo

POWERED BY:

Arquivado

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

daviCav

Leitura de string. Estranho!

Recommended Posts

Pessoal, estou com um erro muito esquisito. Primeiro porque não é um erro, não é detectado nada na compilação.Estou fazendo uma calculadora binária usando strings.Não fiz as funções ainda de soma e etc. Apenas organizei o programa para se tornar mais amigável.Na função main tenho esse trecho de código que quando ele é executado o programa está pulando uma linhado{ printf("%s",MENU); scanf(" %c",&operador); if(operador == 'q') break; if(operador == '+' || operador == '-' || operador == '*' || operador == '/'){ printf("Digite o primeiro numero: "); fgets(N1,BITS,stdin); LINHA PULADA printf("Digite o segundo numero: "); fgets(N2,BITS,stdin); } if (operador == '+'){ soma(N1,N2); } else if (operador == '-'){ subtrai(N1,N2); } else if (operador == '*'){ multiplica(N1,N2); } else if (operador == '/'){ //if (n2 != 0){ divide(N1,N2); //} //else // printf("Resultado: divisao por 0 resultado indefinido!\n"); } else printf("\nOperador invalido %c recebido! Repita ou saia(q).",operador); } while(operador!='q');O que acontece duranta a execução é issoEle imprime o MENU, espera você entrar o caracter. Se for "q" ele sai do programa, senão, ele pede a primeira string. Ai vem o problema. Era pra ele esperar eu digitar, mas ele salta essa linha fgets(N1,BITS,stdin); e já pergunta a segunda string.Muito estranho, já tentei de tudo!Vale ressaltar que eu programei isso no Linux Kurumin versão 6.1 usando o gccPeguei o arquivo texto e trouxe para o windows e continua a mesma coisa.Agradeceria a ajuda, pois é um trabalho da faculdade e esto com pouco tempo.Eu não sabia que era obrigado usar strings e acabei fazendo de outro jeito.=\

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.