Whiteangel Posted December 4, 2015 at 03:05 PM Report Share #590373 Posted December 4, 2015 at 03:05 PM Boas pessoal, estou a fazer uma pesquisa num ficheiro pelo nome, mas o codigo está só me vai buscar o nome que se encontra na posição 1, tirando isso nao mostra mais dados. Podem ajudar? void PesquisaNome(){ int numReg; char npesquisa[50]; fich = fopen("alunos.DAT","r+b"); fseek(fich,0,SEEK_END); numReg=ftell(fich/sizeof(a); fseek(fich,0,SEEK_SET); printf("Nome ?"); fflush(stdin); gets(npesquisa); for(int i = 0; i<numReg;i++){ fread(&a,sizeof(a),1,fich); if(strcmp(a.nome,npesquisa)==1){ printf("Numero Aluno..: %-8d\n",a.numero); printf("Nome..........: %-80s\n",a.nome); printf("Curso.........: %-80s\n",a.curso); printf("Email.........: %-80s\n",a.email); printf("Morada........: %-80s\n",a.morada); } } fclose(fich); } Link to comment Share on other sites More sharing options...
HappyHippyHippo Posted December 4, 2015 at 03:17 PM Report Share #590376 Posted December 4, 2015 at 03:17 PM quantas mensagens de erro o compilador apresenta ? não digas nenhuma porque é impossível depois de dizeres quantas, apresenta aqui as que te são apresentadas IRC : sim, é algo que ainda existe >> #p@p Portugol Plus Link to comment Share on other sites More sharing options...
Whiteangel Posted December 4, 2015 at 03:32 PM Author Report Share #590377 Posted December 4, 2015 at 03:32 PM quantas mensagens de erro o compilador apresenta ? não digas nenhuma porque é impossível depois de dizeres quantas, apresenta aqui as que te são apresentadas O compilador apresenta-me estes alertas: Undeclared function 'gets' (did you mean 'getc'?); assuming 'extern' returning 'int'. Old-style function definition for 'PesquisaNome'. Link to comment Share on other sites More sharing options...
HappyHippyHippo Posted December 4, 2015 at 03:41 PM Report Share #590378 Posted December 4, 2015 at 03:41 PM tem que dar mais, vou dar o primeiro erro que vi (depois disso, deixei de ver o código): numReg=ftell(fich/sizeof(a);// |// onde está o fecho disto ?[/Code] IRC : sim, é algo que ainda existe >> #p@p Portugol Plus Link to comment Share on other sites More sharing options...
Whiteangel Posted December 4, 2015 at 03:50 PM Author Report Share #590379 Posted December 4, 2015 at 03:50 PM tem que dar mais, vou dar o primeiro erro que vi (depois disso, deixei de ver o código): numReg=ftell(fich/sizeof(a);// |// onde está o fecho disto ?[/Code] Terei de o terminar onde? no if não será igual a 0 em vez de 1? Link to comment Share on other sites More sharing options...
HappyHippyHippo Posted December 4, 2015 at 07:29 PM Report Share #590392 Posted December 4, 2015 at 07:29 PM leste o comentário que coloquei ? IRC : sim, é algo que ainda existe >> #p@p Portugol Plus Link to comment Share on other sites More sharing options...
skipper234 Posted December 6, 2015 at 02:20 PM Report Share #590415 Posted December 6, 2015 at 02:20 PM no if não será igual a 0 em vez de 1? podes ver os valores de retorno aqui strcmp. em ralação ao "(" tens de o terminar porque estas a abrir dois a e fechar um, logo terá de dar erro a compilar. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now