Antonio Z 0 Denunciar post Postado Setembro 26, 2009 beleza Galera... Alguém por favor pode me ajudar? preciso entregar esta semana até dia 30/09 na facul trabalho de cadastro de times de futebol e estou com o programa quase pronto e entrei na aula de ponteiros agora então para dar dar muito na cara preciso fazer algo bem simples para entregar, no meu programa faltam apenas o bloco Alterar cadastro ( Case A ) e excluir cadastro ( Case E ), pensei em fazer uma função VOID que preciso ver como ficaria, alguém tem uma opção diferente para ajudar. Fico agradecido se me derem uma luz.Estou editando em DEV C++ e também no CODE Bloks segue o que já fiz: #include <stdlib.h> #include <stdio.h> #include <conio.h> #include <string.h> #include <ctype.h> #define MAXTIMES 50 main() { struct ctimes { char time[30]; int codigo; char ender[40]; char cidade[50]; char estado[40]; char ano[4]; }; struct ctimes menuTimes[MAXTIMES]; int i, achou, quantos = 0; int codigo; char opcao; char nometime[30]; do { system("cls"); fflush(stdin); printf("\n\n=======================================================\n\n"); printf("\n\nC A D A S T R O D E T I M E S D O C O R A C A O\n\n"); printf("\n\n=======================================================\n"); printf("\nI. Incluir novo Time"); printf("\nC. Consultar Times pelo codigo"); printf("\nA. Alterar um Time"); printf("\nE. Excluir um Time"); printf("\nP. Imprimir o cadastro de Times"); printf("\nS. S A I R"); printf("\n\n=======================================================\n"); printf("\nDigite a opcao desejada: "); scanf("%c", &opcao); printf("\n\n=======================================================\n\n"); switch(toupper(opcao)) { case 'I': // incluir novo time { printf("\nIncluir novo Time\n"); if(quantos < MAXTIMES) { printf("\nDigite o codigo do time: "); scanf("%d",&menuTimes[quantos].codigo); fflush(stdin); printf("\nDigite o nome do Time: "); gets(menuTimes[quantos].time); fflush(stdin); printf("\nDigite o endereco: "); gets(menuTimes[quantos].ender); fflush(stdin); printf("\nDigite a cidade : "); scanf("%s", &menuTimes[quantos].cidade); fflush(stdin); printf("\nDigite o estado: "); gets(menuTimes[quantos].estado); printf("\nDigite o ano de Fundacao do time: "); gets(menuTimes[quantos].ano); quantos++; } else { printf("\nErro na inclusao. O cadastro estah cheio\n"); } break; } case 'C': // Consultar um time pelo nome { achou = 0; fflush(stdin); printf("\nConsultar times pelo nome.\n"); printf("\nDigite o nome do Time: "); gets(nometime); for(i = 0; i < quantos; i++) { if(strcmp(menuTimes[i].time, nometime) == 0) { achou = 1; printf("\nNome do Time.: %s", menuTimes[i].time); printf("\nCodigo.......: %d", menuTimes[i].codigo); printf("\nEndereco.....: %s", menuTimes[i].ender); printf("\nCidade.......: %s", menuTimes[i].cidade); printf("\nEstado.......: %s", menuTimes[i].estado); printf("\nFundado em: .: %s\n", menuTimes[i].ano); } } if (!achou) { printf("\nO Time %s nao foi encontrado no cadastro\n", nometime); } break; } case 'A': // alterar um time { printf("\nAlterar um Time\n"); break; } case 'E': // Excluir um time { printf("\nExcluir um Time\n"); break; } case 'P': // imprimir o cadastro de times { printf("\nImprimir o cadastro de Times\n"); for(i = 0; i < quantos; i++) { printf("\nNome do Time.: %s", menuTimes[i].time); printf("\nCodigo.......: %i", menuTimes[i].codigo); printf("\nEndereco.....: %s", menuTimes[i].ender); printf("\nCidade.......: %s", menuTimes[i].cidade); printf("\nEstado.......: %s", menuTimes[i].estado); printf("\nFundado em...: %s\n", menuTimes[i].ano); } break; } case 'S': // sair { printf("\n=======================================================\n"); printf("\n============ A T E M A I S A M I G O ! =============\n"); printf("\n=======================================================\n"); break; } default: // opcao incorreta { printf("\nOpcao invalida\n"); break; } } printf("\n\n"); system("pause"); } while(toupper(opcao) != 'S'); } Compartilhar este post Link para o post Compartilhar em outros sites
VictorCacciari 42 Denunciar post Postado Setembro 26, 2009 Cara, desculpa. Mas o seu programa ta meio mal escrito. você definiu tudo na função main... não declarou a main corretamente e ela nem retorna nada. você poderia ter modularizado mais o código. não use fflush(stdin)!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! http://forum.imasters.com.br/index.php?/topic/336835-tutorial-systempause-e-fflushstdin/ Compartilhar este post Link para o post Compartilhar em outros sites
Antonio Z 0 Denunciar post Postado Setembro 27, 2009 Cara, desculpa. Mas o seu programa ta meio mal escrito. você definiu tudo na função main... não declarou a main corretamente e ela nem retorna nada. você poderia ter modularizado mais o código. não use fflush(stdin)!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! http://forum.imasters.com.br/index.php?/topic/336835-tutorial-systempause-e-fflushstdin/ É pode até estar mau escrito sim cara, também pudéra é meu 1º ano na faculdade tenho 35 anos trabalho muito e não está me sobrando tempo para estudar muito programação pois a correria é grande. Aproveitando alguma coisa do meu programa você poderia me ajudar a melhorá-lo, e seu eu incluir funções para alteração e exclusão de cadastro daria para aproveitar o que já fiz? Compartilhar este post Link para o post Compartilhar em outros sites
viciado 1 Denunciar post Postado Setembro 27, 2009 Você pode utilizar um vetor. Tenta fazer as funções #include <stdio.h> #include <stdlib.h> #define MAX 50 typedef struct { char time[30]; int codigo; char ender[40]; char cidade[50]; char estado[40]; char ano[4]; }ctime[MAX]; int main() { int op = 1; while(op!=6){ printf("(1) Incluir novo time \n"); printf("(2) Consultar um time \n"); printf("(3) Alterar um time \n"); printf("(4) Excluir um time \n"); printf("(5) Imprimir o cadastro de times \n"); printf("(6) Sair \n"); printf("Digite sua opcao \n"); scanf("%d",&op); switch(op){ case 1: incluir(); break; case 2: consultar(); break; case 3: alterar(); break; case 4: excluir(); break; case 5: imprimir(); break; case 6: exit(0); //Acho q não funciona no linux; break; default: printf("Opcao errada \n"); } } system("PAUSE"); return 0; } Compartilhar este post Link para o post Compartilhar em outros sites
Antonio Z 0 Denunciar post Postado Setembro 27, 2009 Você pode utilizar um vetor. Tenta fazer as funções #include <stdio.h> #include <stdlib.h> #define MAX 50 typedef struct { char time[30]; int codigo; char ender[40]; char cidade[50]; char estado[40]; char ano[4]; }ctime[MAX]; int main() { int op = 1; while(op!=6){ printf("(1) Incluir novo time \n"); printf("(2) Consultar um time \n"); printf("(3) Alterar um time \n"); printf("(4) Excluir um time \n"); printf("(5) Imprimir o cadastro de times \n"); printf("(6) Sair \n"); printf("Digite sua opcao \n"); scanf("%d",&op); switch(op){ case 1: incluir(); break; case 2: consultar(); break; case 3: alterar(); break; case 4: excluir(); break; case 5: imprimir(); break; case 6: exit(0); //Acho q não funciona no linux; break; default: printf("Opcao errada \n"); } } system("PAUSE"); return 0; } VAleu a dia cara! Vou tentar colocar as funções, espero que dê tempo de eu fazer pois tenho que entregar esta semana e estou com dificuldade no bloco de alteração e exclusão de cadastro, mas Deus me Ajude que vai dar tempo. Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
viciado 1 Denunciar post Postado Setembro 27, 2009 VAleu a dia cara! Vou tentar colocar as funções, espero que dê tempo de eu fazer pois tenho que entregar esta semana e estou com dificuldade no bloco de alteração e exclusão de cadastro, mas Deus me Ajude que vai dar tempo. Obrigado Vai postando aqui o que você fizer Compartilhar este post Link para o post Compartilhar em outros sites