Ir para conteúdo
Fórum Script Brasil
  • 0

Linguagem C, sou iniciante,


ovelha_negra

Pergunta

Olá pessoal, comecei essa semana estudar a linguagem C, alguém pode me ajudar com o seguinte problema?

Segue a baixo a questão passada pela professora:

"Desenvolva um programa usando struct que crie um cadastro de Aparelhos de Celular, a struct deve ter: código, marca, modelo e preço, sendo que este último deve ser o valor informado pelo usuário mais 30%. Por exemplo: o usuário informa o preço R$ 60,00, e o programa mostra o preço atualizado de R$ 78,00."

Gente por favor me ajudem eu não faço nem ideia de como fazer.

Desde já agradeço

Obrigado :unsure:

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Olá ovelha,

Eis um exemplo simples tirado da internet pelo Google:

/*  EXEMPLO BASICO DE STRUCT EM C
    DESENVOLVIDO POR MARCOS VINICIUS
    EMAIL: MARCOS.VINICIUS.SECURITY@GMAIL.COM
*/

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

struct funcionario {
                     char nome[50];
                     int idade;
                                        };

main () {
                struct funcionario func[50];
                int i = 0;
                //int n; //variavel "n" de numero de iterações sugerida por mim


              /*ATENÇÃO ovelha : para variar o numero de iterações faça assim:
                printf("Digite o numero de funcionarios a cadastrar: ");
                scanf("%d",&n);
                fflush(stdin);
                for (i=1;i<n;i++)*/

                for (i=1;i<3;i++)
                {
                  printf("\nNome do %uo Funcionario: ", i);
                  scanf("%s", &func[ i ].nome);

                  printf("Idade do %uo Funcionario: ", i);
                  scanf("%u", &func[ i ].idade);
                };

                system("clear");  /*ou system("cls"); Limpa a tela acima e emite o relatório abaixo. Se clear não funcionar use o cls. Dica sugerida por mim*/
                //for (i=1;i<n;i++) //variavel "n" de numero de iterações sugerida por mim
                
                for (i=1; i<3; i++)
                {
                  printf("-----------------------------------\n");
                  printf("Nome do %uo Funcionario: %s ", i, &func[ i ].nome);
                  printf("\nIdade do %uo Funcionario: %u \n", i, func[ i ].idade);
                  printf("-----------------------------------\n");
                  printf("\n");
                };
             system("PAUSE"); //Acrescentado por mim. Conclue o programa pedindo para pressionar uma tecla
             return 0;
             }

Editado por Jonathan Queiroz
Adicionar tag's (Jonathan)
Link para o comentário
Compartilhar em outros sites

  • 0

Olá Ovelha,

Crie duas constantes float assim:

float percentual = (p / 100.0); // x% constante percentual

float k = percentual+ 0.3*valor;//constante k

p é a variável no lugar de idade.

valor é a variável no lugar do nome.

Ex.: p==5;

O resultado seria assim:

printf("O resultado e : %f ", k);

Veja bem refaça o programa para atender a seu gosto. Sugestão: Troque funcionario por Calculo, nome por float valor e idade por float p e mantenha n como o número de iterações.

Editado por good guy
Link para o comentário
Compartilhar em outros sites

  • 0

Bom eu cheguei a isso, até ai ta funcionando. claro copiei do forum,

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

struct celular {
          char marca[50];
          char modelo[50];
          int codigo,preço;

};

main () {
                struct celular func[50];
                int i = 0;
                int n = 0;
                int cont_c=0;
                int cont_m=0;

                printf("Digite o numero de celulares a cadastrar: ");
                scanf("%d",&n);
                fflush(stdin);
                for (i=0;i<n;i++)
                {
                  cont_c++;
                  printf("\nCodigo do %u celular: ",cont_c);
                  scanf("%u", &func[i].codigo);

                  printf("Modelo do %u celular: ",cont_c);
                  scanf("%s", &func[i].modelo);

                  printf("Marca do %u celular: ",cont_c);
                  scanf("%s", &func[i].marca);

                  printf("preço do %u celular: ",cont_c);
                  scanf("%u", &func[i].preço);
                };


                for (i=0; i<n; i++)
                {
                  cont_m++;
                  printf("\nCelular numero %u:",cont_m);
                  printf("\n-----------------------------------\n");
                  printf("Codigo: %u ", func[ i ].codigo);
                  printf("\nModelo: %s \n", func[ i ].modelo);
                  printf("Marcado: %s \n", func[ i ].marca);
                  printf("preço: %u \n", func[ i ].preço);
                  printf("-----------------------------------\n");
                  printf("\n");
                };
             system("PAUSE"); //Acrescentado por mim. Conclue o programa pedindo para pressionar uma tecla
             return 0;
             }

porem não estou conseguindo fazer o valor ser o digitado mais os 3%.

good guy, tentei fazer do seu jeito mas não consegui.

poderias me dar mais uma mão ai.?

abraço e obrigado a todos.

não conseguir colocar um CODE BOX aki, dai algumas palavras ele corrige automatico.

Editado por Jonathan Queiroz
Adicionar tag's (Jonathan)
Link para o comentário
Compartilhar em outros sites

  • 0

Ola ovelha,

Retire o cont_c referente a essas variáveis nas printf e substitua pelas nova variáveis (codigo, modelo[30], marca[30], preço.

Abaixo de scanf coloque fflush(stdin);

Tire o cont_c e cont_m.

A formatação não é %u, mas:

%d , codigo

%s , modelo[50]

%s , marca[50]

%.2f , preço // tire a cedilha e coloque c

Defina uma constante k:

#define const float k = (0.30 * preço) + preço

Nas últimas linhas do código ficará assim:

printf("preço: %.2f \n", func[ i ].k);

Editado por good guy
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...