Ir ao conteúdo
  • Cadastre-se

Marcelo Danelon

Membro Júnior
  • Posts

    10
  • Cadastrado em

  • Última visita

Reputação

9
  1. @devair1010 consegui resolver Na hora de atribuir a string para a matriz deixei somente um índice, e coloquei mais um [50] a matriz de strings Obrigado pela ajuda
  2. Boa noite. Estou com dificuldade em armazenar uma string em uma matriz, o erro está ocorrendo no strcpy de cada if, o sistema roda mas trava nessa posição. Alguem saberia me dizer o que estou fazendo de errado? do{ andar=rand()%4; if(andar==1 && resp1!=1){ if(casas==1){ printf(" %i : %s",casas,aux.resposta1); strcpy(perg[1][0],aux.resposta1); casas++; resp1=1; } else if(casas==2){ printf(" %i : %s",casas,aux.resposta1); strcpy(perg[2][0],aux.resposta1); casas++; resp1=1; } else if(casas==3){ printf(" %i : %s",casas,aux.resposta1); strcpy(perg[3][0],aux.resposta1); casas++; resp1=1; } } else if(andar==2 && resp2!=1){ if(casas==1){ printf(" %i : %s",casas,aux.resposta2); strcpy(perg[1][0],aux.resposta2); casas++; resp2=1; } else if(casas==2){ printf(" %i : %s",casas,aux.resposta2); strcpy(perg[2][0],aux.resposta2); casas++; resp2=1; } else if(casas==3){ printf(" %i : %s",casas,aux.resposta2); strcpy(perg[3][0],aux.resposta2); casas++; resp2=1; } } else if(andar==3 && resp3!=1){ if(casas==1){ printf(" %i : %s",casas,aux.resposta3); strcpy(perg[1][0],aux.resposta3); casas++; resp3=1; } else if(casas==2){ printf(" %i : %s",casas,aux.resposta3); strcpy(perg[2][0],aux.resposta3); casas++; resp3=1; } else if(casas==3){ printf(" %i : %s",casas,aux.resposta3); strcpy(perg[3][0],aux.resposta3); casas++; resp3=1; } } }while(casas<4);
  3. @BEZERRA_BRITO @cpusam @Luís Roberto C. da Silva Obrigado pela ajuda. Deu certo galera. valeu mesmo
  4. Bom dia. Estou tentando realizar um bestScore que armazene se tiver pontos maiores que os pontos anteriores, no código eu estou lendo o arquivo e verificando se o valor armazenado nele é maior que os pontos na partida, mas o código para nesse ponto e encerra o programa. o que eu estou fazendo de errado? void bestScore( int pontos ){ FILE *p; int best=0; int best2=0; p=fopen("ranking.qz","rb"); if ( p!=NULL ) { fread(best,sizeof(pontos),1,p); fclose(p); } else{ printf("Erro ao abrir o arquivo"); } if(pontos>best){ p=fopen("ranking.qz","wb"); if ( p!=NULL ) { fputs(pontos,p); } else{ printf("Erro ao abrir o arquivo."); } } fclose(p); printf("conseguiu! %i",best); }
  5. Estou tentando criar um quiz e o que acontece é que eu criei varias perguntas em meu arquivo, tudo certo, consigo ate jogar e uma das perguntas que criei acertar ou não, maassss o que aconteceu é que so esta aparecendo aquela pergunta do meu arquivo, não consigo fazer ir para as outras. Pensei em fazer um contador (num) que quando acertasse, ele iria para a pergunta seguinte, mas o sistema não esta permitindo. Me ajudem? PS: É um struct com as perguntas e respostas que é armazenado no arquivo. void criarQuestoes( pergunta questao[50] ){ char num=1; printf("Digite a sua pergunta \n",num); fflush(stdin); fgets(questao->pergunta,40,stdin); q=fopen("perguntas.qz","ab"); if ( q!=NULL ) { fwrite(questao[num], sizeof(pergunta), 1, q); fclose(q); printf("\n"); printf("Pergunta criada com Sucesso. \n"); system("pause"); }
  6. @isrnick Consegui fazer com que depois de criar o primeiro cadastro eu consiga logar. Mas dos cadastros para frente já não estou conseguindo fazer login.
  7. @Anonymous Programmer A sua explicação se encaixaria com o que estou tentando fazer, realizei a criação de um strutc e o cadastro do usuario e coloquei em um arquivo pelo fwrite aberto como "a", porém não estou conseguindo realizar o acesso dos usuários no arquivo criado, fread, até cheguei a criar outro vetor do struct para poder comparar mas mesmo assim não estou conseguindo. void acesso ( perfil pessoa2[50] ) { system ( "cls" ); static int i = 0; char login[40]; int senha; int len_vet = sizeof(pessoa2) - 1; FILE *a; a = fopen ( "perfil.qz", "a+" ); FILE *c; c = fopen ( "contador.qz", "w+"); if ( a == NULL || c == NULL ) { printf ( "Erro ao abrir arquivo" ); } else { if ( i < 50 ) { fread(&i,40,1,c); printf ( "Login: " ); fflush ( stdin ); fgets ( login, 40, stdin ); printf ( "\n" ); printf ( "Senha: " ); fflush ( stdin ); scanf ( "%i", &senha ); do{ if ( i < 50 ) { for(i = 0; i < len_vet; i++){ fread(&pessoa2[i], sizeof(perfil), 1, a); fclose(a); } } printf ( "%s", pessoa2[i].login ); printf ( "%i", pessoa2[i].senha ); }while(strcmp(pessoa2[i].login,login)==0); } } fclose ( a ); fclose ( c ); }
  8. @vangodp Obrigado pela ajuda, consegui identifica o que foi falou, as referencias de registros não foram muito falado durante a aula, o que tornava difícil continuar com o código sem que ele desse erro, vou fazer a parte de acesso e ver se consigo colocar um contador para que ao abrir o código de novo, o cadastro continue a partir do ultimo.
  9. Boa noite pessoal. Sou estudante de programação e estou iniciando com registros. Estou tentando realizar a inclusão de um acesso com login e senha no programa. Mas o meu debug não funciona, não esta parando apos apertar o start,f8 e etc no pic onde foi colocado na linha. E o programa roda mas ao entrar em uma opção ele para de responder. Se alguém puder me ajudar, agradeço. #include <stdio.h> #include <stdlib.h> #include <locale.h> typedef struct{ char login[40]; int senha; }perfil; int main() { setlocale(LC_ALL, "Portuguese"); perfil pessoa[50]; int escMenu1,i=0; Menu1(&escMenu1); if(escMenu1==1){ acesso(&pessoa[50]); } else if(escMenu1==2){ cadastro(&pessoa[50]); } } void cadastro(perfil *pessoa[50]){ system("cls"); int i=0; FILE *a; a=fopen("perfilLogin.qz","w"); FILE *b; b=fopen("perfilSenha.qz","w"); if(a==NULL || b==NULL){ printf("Erro ao abrir arquivo"); } else{ if(i<50){ printf("Digite seu nome de Acesso: "); fflush(stdin); fgets(pessoa->login,40,stdin); printf("\n"); printf("Digite sua senha: "); fflush(stdin); scanf("%i",pessoa->senha); printf("%s",pessoa->login); printf("%i",pessoa->senha); if(i<50){ fputs(pessoa->login,a); fwrite(pessoa->senha,40,1,b); i++; } } } fclose(a); fclose(b); } void acesso(perfil *pessoa[50]){ system("cls"); FILE *a; a=fopen("perfilLogin.qz","r"); FILE *b; b=fopen("perfilSenha.qz","r"); char login2[40]; int senha2[40],i; printf("\n"); printf(" Login: "); fflush(stdin); fgets(pessoa->login,40,stdin); printf("\n"); printf(" Senha: "); fflush(stdin); scanf("%i",pessoa->senha); fread(login2,40,1,a); fread(senha2,40,1,b); if(pessoa->login==login2){ printf("Conseguiu !!"); } fclose(a); fclose(b); } void Menu1(int *escolha){ printf(" =============================== \n"); printf(" Escolha uma ação: \n"); printf("\n"); printf(" 1 - Acessar / Jogar\n"); printf(" 2 - Novo usuário\n"); printf(" 3 - Acesso de Admin\n"); printf(" =============================== \n"); printf(" Escolha: "); scanf("%i",escolha); }
  10. Boa Tarde Pessoal. estou com grande dificuldade em conseguir conectar a internet. acontece o seguinte, a empresa tem vários cabos de rede, o cabo de rede (internet) que desce devo conecta-lo ao switch ou ao roteador? ja verifiquei não é problema com o roteador pois funciona perfeitamente em outro ambiente. já cheguei a configurar o roteador para dynamic ip, mas o dynamic ip não aparece, ja tentei dar renew, resetar o roteador e começar do zero, coloquei o cabo com internet tanto no roteador quanto no switch e ainda não funciona o que façoo??

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