Ir ao conteúdo

Posts recomendados

Postado

pessoal eu to fazendo um exercicio da faculdade e me deparei com uma dificuldade na escrita do codigo

abaixo segue o codigo e uma anexo com o problema a se resolver...

 

 

#include <cstdio> //permite os comandos scanf, printf
#include <cstdlib>
struct Cliente{
    char nome;
    int num_compras;
    float total_gastos;
};


int calcula_cliente(float g, char n[100]){
        int var;
        if (g > 1000){
            printf("O Cliente %s Atingiu o Limite de Gastos!\n\n", n);
            var = 1;
           var = ++var;
           
        }
    return var;
}

int main(){
    Cliente cliente;
    char nomes[100][100];
    float gastos[2];
    int compras[2];

    for(int i=0; i <= 100; i++){
         if(i==3){
break; 
/*Se a variável 'button' for igual a 27, o laço será interrompido e código proseguirá...*/ 
}
        printf("Digite o Nome do Cliente %d:\n ", i );
        scanf("%s", &nomes);

        printf("Digite o Total de gastos do Cliente %d: \n ",i);
        scanf("%f", &gastos);

        cliente.total_gastos = cliente.total_gastos + gastos;

        printf("Digite o Numero de Compras do Cliente %d: \n ",i);
        scanf("%d", &compras);

        cliente.num_compras = cliente.num_compras + compras;

        system("cls");
    }
  printf("----------RELATORIO DE CLIENTES----------\n");

 for(int i=1; i <= 100; i++){
    nomes = calcula_cliente(gastos,nomes);
    }
    printf("___________________________________________\n\n");
    printf("\nTotal de Clientes com Limite Estourado: %d", &cliente.nome);
    printf("\nTotal de Compras: %d", &cliente.num_compras);
    printf("\nTotal Gasto: %.2f\n", &cliente.total_gastos);

}

 

 

exercicio:

image.png.f0436e7ccfd1bd25651602623f40905d.pngimage.png.f0436e7ccfd1bd25651602623f40905d.png

 

 

erro devc++

image.thumb.png.8091e587f7f78de4961b89de8217b3bc.png

  • Curtir 1
Postado

Você está atribuindo à string nomes uma função que retorna um valor inteiro. Esse tipo de atribuição não vai funcionar pelo fato de você estar atribuindo um número para toda a linha i da matriz, a não ser que use nomes[0] ou outro índice no lugar de 0.

  • Amei 2
Postado

@Deivison Souza    realmente o @iHollyZinhO    tem razão ,   e existe outros erros como  no printf você colocou o caractere &  e também %d para imprimir string  ,  não entendi bem sua ideia qual era da lógica do programa , então apenas arrumei ele para compilar e agora ele está rodando , mas não sei se  o resultado seja o que você quer .    e para postar seu código você precisa usar o botão  <>  que está lá na barra de ferramentas da janela de responder, pois sem ele seu código ficou faltando alguns caracteres como os  [ i ]  que sumiram .   então seu código com algumas modificações ficou assim  :

#include <cstdio> //permite os comandos scanf, printf
#include <cstdlib>
#include <conio.h>
struct Cliente{
    char nome[30];
    int num_compras;
    float total_gastos;
};
int calcula_cliente(float g, char n[100]){
    int var;
    if(g > 1000){
        printf("O Cliente %s Atingiu o Limite de Gastos!\n\n", n);
        var = 1;
        var = ++var;
    }
    return var;
}
int main(){
    Cliente cliente[100];
    char nomes[100][100];
    int nom[100];
    float gastos[2];
    int compras[2];
    for(int i=0; i < 100; i++){
        if(i==3){
            break;
            /*Se a variável 'button' for igual a 27, o laço será interrompido e código proseguirá...*/
        }
        printf("Digite o Nome do Cliente %d:\n ", i );
        scanf("%s", &cliente[i].nome);
        printf("Digite o Total de gastos do Cliente %d: \n ",i);
        scanf("%f", &gastos[i]);
        cliente[i].total_gastos += gastos[i];
        printf("Digite o Numero de Compras do Cliente %d: ",i);
        scanf("%d", &compras[i]);
        cliente[i].num_compras=0;
        cliente[i].num_compras += compras[i];
        system("cls");
    }
    printf("----------RELATORIO DE CLIENTES----------\n");
    for(int i=1; i <= 100; i++){
        nom[i] = calcula_cliente(gastos[i],nomes[i]);
    }
    printf("___________________________________________\n\n");
    printf("\nTotal de Clientes com Limite Estourado: %s", &cliente[0].nome);
    printf("\nTotal de Compras: %d",cliente[0].num_compras);
    printf("\nTotal Gasto: %.2f\n", cliente[0].total_gastos);
}

 

  • Amei 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!