Ir ao conteúdo
  • Cadastre-se

Pedro VN

Membro Júnior
  • Posts

    3
  • Cadastrado em

  • Última visita

Tudo que Pedro VN postou

  1. O problema realmente era o "&" do scanf, tirei ele e funcionou normalmente com o Ç. Obrigado a todos, é incrível como um pequeno detalhe muda tudo na programação, eu nunca havia tido este problema antes atribuindo string desta maneira, vou parar com esse hábito. @arfneto Interessante! Vou procurar dar uma olhada neste post.
  2. @KXSY Ola, primeiramente obrigado pelo feedback, talvez seja meu compilador, sou iniciante e o professor da minha faculdade recomendou usar o CodeBlocks, e o sistema que eu uso é o Windows. Sobre o programa é um exercício que comecei a fazer (isso ae é apenas o começo) que tem como objetivo gerenciar uma locadora. Dependendo do tipo de fita (Se for comum ou lançamento) e o dia da semana( de 1 a 7) o programa irá acrescentar um acréscimo ou um desconto em cima da fita escolhida (ainda não fiz essa parte). Os testes escritos no printf eram só pra testar se as funções if e else estavam retornando corretamente. Agora eu não entendo porque aí no seu funcionou e aqui n kkk. Enfim, vou tentar trocar de IDE pra ver se da certo. Ah e apenas mais uma duvida porque o scanf está errado? Eu sei que ele não é o mais adequado, mas pelo que eu li e me foi falado não tem problema usar pra ler strings em programas simples (pelo menos para iniciantes). Obrigado.
  3. .Ola pessoal, estou desenvolvendo alguns programas básicos para aprender a linguagem C, porém estou tendo um problema muito estranho neste programa. Quando eu tento comparar a palavra = LANÇAMENTO, o programa simplesmente não compara, porém quando eu mudo para LANCAMENTO sem o Ç ele funciona normalmente. Primeiro achei que era normal, pois não tinha colocado a biblioteca locale.h, mas depois de ter colocado ainda continua a mesma coisa. Segue o código abaixo: #include <stdio.h> #include <math.h> #include <string.h> #include <locale.h> int main (){ setlocale(LC_ALL, "Portuguese"); float desconto, lancamento, preco; char fita [50]; int dia; desconto= 0.40; lancamento= 0.15; printf (" Dia da semana: "); scanf ("%d", &dia); printf (" Tipo de fita: "); scanf ("%s", &fita); printf (" Preco da fita: "); scanf ("%f", &preco); if (((strcmp (fita, "COMUM")) ==0 || (strcmp (fita, "comum"))==0) && (dia == 2 || dia ==3 || dia == 5)) { printf ("teste"); } else if (((strcmp (fita, "COMUM")) ==0 || (strcmp (fita, "comum"))==0) && (dia == 4 || dia ==6 || dia == 7 || dia == 1)) { printf ("teste2"); } else if (((strcmp (fita, "LANCAMENTO")) ==0 || (strcmp (fita, "lancamento"))==0) && (dia == 2 || dia ==3 || dia == 5)) { printf ("teste3"); } else if (((strcmp (fita, "LANCAMENTO")) ==0 || (strcmp (fita, "lancamento"))==0) && (dia == 4 || dia ==6 || dia == 7 || dia == 1)) { printf ("teste4"); } system("pause"); Return: 0; } Bom, desta forma funciona corretamente, agora quando eu coloco pra comparar LANÇAMENTO ou lançamento, aí que da *****. Mal comecei a fazer o programa e já estou preso nesta questão kkk, quem souber responder qual é o problema agradeço desde já.

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...