viciado 1 Denunciar post Postado Dezembro 16, 2008 Qual os problemas desse codigo que não compila #include <stdio.h> #include <stdlib.h> struct estados { char nome[30]; int num_veiculos; int num_acidentes; }dados[15]; void indice(); void percentual(); void media(); int main() { int i; for(i=0;i<15;i++){ printf("Informe o nome do estado \n"); scanf("%s",&dados[i].nome); printf("Informe o numero de veiculos \n"); scanf("%d",&dados[i].num_veiculos); printf("Informe o numero de acidentes \n"); scanf("%d",&dados[i].num_acidentes); } indice(); percentual(); media(); system("PAUSE"); return 0; } void indice(){ char nome1[30], nome2[30]; int maior = dados[0].num_acidentes; int menor = dados[0].num_acidentes; int i; for(i=0;i<15;i++){ if(dados[i].num_acidentes > maior){ maior = dados[i].num_acidentes; nome1 = dados[i].nome; } } printf("O estado com mais acidentes e: \n %s com %d acidentes \n",nome1, maior); for(i=0;i<15;i++){ if(dados[i].num_acidente < menor){ menor = dados[i].num_acidentes; nome2 = dados[i].nome; } } printf("O estado com mais acidentes e: \n %s com %d acidentes \n",nome2, menor); } void percentual(){ int i float total = 0; for(i=0;i<15;i+){ total = total + dados[i].num_veiculos; } for(i=0;i<15;i++){ printf("%s \n",dados[i].nome); float perc = (dados[i].num_veiculos * 100) / total; printf("%f % veiculos \n",perc); } } void media(){ int i; float total = 0; for(i=0;i<15;i++){ total = total + dados[i].acidentes; } for(i=0;i<15;i++){ printf("%s \n",dados[i].nome); float media = (dados[i].acidentes * 100) / total; printf("%f media de acidentes \n"); } } Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Dezembro 16, 2008 poste as mensagens de erro, que fica mais fácil ajudarmos Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Dezembro 16, 2008 tirei os erros: #include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct estado { char nome[30]; int num_veiculos; int num_acidentes; }; estado dados[15]; void indice(); void percentual(); void media(); int main() { int i; for(i=0;i<15;i++){ printf("Informe o nome do estado \n"); scanf("%s",&dados[i].nome); printf("Informe o numero de veiculos \n"); scanf("%d",&dados[i].num_veiculos); printf("Informe o numero de acidentes \n"); scanf("%d",&dados[i].num_acidentes); } indice(); percentual(); media(); system("PAUSE"); return 0; } void indice(){ char nome1[30], nome2[30]; int maior = dados[0].num_acidentes; int menor = dados[0].num_acidentes; int i; for(i=0;i<15;i++){ if(dados[i].num_acidentes > maior){ maior = dados[i].num_acidentes; strcpy(nome1,dados[i].nome); } } printf("O estado com mais acidentes e: \n %s com %d acidentes \n",nome1, maior); for(i=0;i<15;i++){ if(dados[i].num_acidentes < menor){ menor = dados[i].num_acidentes; strcpy(nome2,dados[i].nome); } } printf("O estado com mais acidentes e: \n %s com %d acidentes \n",nome2, menor); } void percentual(){ int i; float total = 0; for(i=0;i<15;i++){ total = total + dados[i].num_veiculos; } for(i=0;i<15;i++){ printf("%s \n",dados[i].nome); float perc = (dados[i].num_veiculos * 100) / total; printf("%f % veiculos \n",perc); } } void media(){ int i; float total = 0; for(i=0;i<15;i++){ total = total + dados[i].num_acidentes; } for(i=0;i<15;i++){ printf("%s \n",dados[i].nome); float media = (dados[i].num_acidentes * 100) / total; printf("%f media de acidentes \n"); } }coisas como:falta de ponto e virgula.. nome de variavel da struct sendo chamado no programa por outro nome.. e trocar '=' por strcpy, no caso de strings. []s Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Dezembro 16, 2008 por isso é bom prestar atenção nas mensagens de erro e ATIVAR A EXIBIÇÃO DE WARNINGS (avisos) E postar essas mensagens quando postar um tópico assim Compartilhar este post Link para o post Compartilhar em outros sites
gRoOvE 0 Denunciar post Postado Dezembro 23, 2008 viciado, o compilador te avisa em qual linha está o erro e qual o motivo, não consigo entender qual a dificuldade nisso "/ Compartilhar este post Link para o post Compartilhar em outros sites