Ir ao conteúdo
  • Cadastre-se

Rafael Carvalho Alencar

Membro Júnior
  • Posts

    5
  • Cadastrado em

  • Última visita

Reputação

7
  1. Gostaria de saber como faço para meu programa pular para o próximo scanf quando o usuario digitar um numero de caracteres específico. Ex: int a,b,c; scanf("%d", &a); // Nesse o usuario deve digitar 2 numeros, e sem ter que apertar enter o programa deve pular para a proxima leitura automaticamente. scanf("%d", &b); // Mesmo procedimento. scanf("%d", &c); // Nesse ultimo só muda que o usuário deve inserir 4 digitos. Minha dúvida é essa. Obrigado.
  2. Olá amigo. Eu "consegui" criar o menu para salvar os usuarios, mas de um jeito que ele salva o todos os usuarios no arquivo de uma vez, toda vez que eu cadastro um novo usuario. Se alguem souber como fazer isso de forma que ele adicione só o usuario que eu acabei de cadastrar no arquivo seria melhor. E tambem um método que exclua algum usuario. #include<iostream> #include<stdio.h> #include<conio2.h> #include<stdlib.h> #include<string.h> #include<fstream> using namespace std; FILE *arquser=fopen("dbusers.db", "a+"); struct Usuarios{ char nome[ 30]; char sobrenome[ 30]; char cargo[ 30]; char cpf[ 30]; char rg[ 30]; char senha[ 15]; }; Usuarios usuario[9999]; int tam_struct = 0; void Listar(); void Cadastrar(); void Deletar(); void Inicio(); int main(void){ int i = 0; bool repete = true; if(arquser==NULL){printf("Erro no arquivo !\n");exit(0);} while( fscanf(arquser, "%s", usuario[i].nome ) != EOF && fscanf(arquser, "%s", usuario[i].sobrenome ) != EOF && fscanf(arquser, "%s", usuario[i].cargo ) != EOF && fscanf(arquser, "%s", usuario[i].rg ) != EOF && fscanf(arquser, "%s", usuario[i].cpf ) != EOF && fscanf(arquser, "%s", usuario[i].senha ) ){ i++; tam_struct++; } fclose(arquser); Inicio(); } void Inicio() { // INTERFACE int op; bool repete = true; do{ system("cls"); printf("\n\tBEM VINDO - Usuarios - %d \n", tam_struct); printf("\n 1 - Ver Usuarios Cadastrados.\n 2 - Cadastrar Novo Usuario.\n 3 - Excluir Usuario\n 4 - Sair"); printf("\n Sua escolha: "); scanf("%d", &op); switch(op){ case 1: Listar(); break; case 2: Cadastrar(); break; case 3: void Deletar(); break; case 4: repete == false; break; } }while(repete); } void Listar(){ int i=0; int u=0; system("cls"); for(i=0;i<tam_struct;i++){ u++; printf("\n\tUSUARIO %d:", u); printf("\nNOME: %s %s.", usuario[i].nome, usuario[i].sobrenome); printf("\nCARGO: %s.", usuario[i].cargo); printf("\nCPF: %s", usuario[i].cpf); printf("\nRG: %s", usuario[i].rg); printf("\n===================================="); } getch(); Inicio(); } void Cadastrar(){ int i = 0; int u = 2; char temp[30] = ""; system("cls"); i = tam_struct; u == i; printf("\tUSUARIO %u", u); printf("\n NOME: "); scanf("%s", &temp); strcpy(usuario[i].nome, temp); temp == ""; printf("\n SOBRENOME: "); scanf("%s", &temp); strcpy(usuario[i].sobrenome, temp); temp == ""; printf("\n CARGO: "); scanf("%s", &temp); strcpy(usuario[i].cargo, temp); temp == ""; printf("\n CPF: "); scanf("%s", &temp); strcpy(usuario[i].cpf, temp); temp == ""; printf("\n RG: "); scanf("%s", &temp); strcpy(usuario[i].rg, temp); temp == ""; printf("\n SENHA: "); scanf("%s", &temp); strcpy(usuario[i].senha, temp); char s[10] = " "; char f[10] = "\n"; tam_struct++; int gravar = 0; FILE *arqgravar=fopen("dbusers.db", "wt"); while(gravar<tam_struct){ fprintf(arqgravar, usuario[gravar].nome); fprintf(arqgravar, s); fprintf(arqgravar, usuario[gravar].sobrenome); fprintf(arqgravar, s); fprintf(arqgravar, usuario[gravar].cargo); fprintf(arqgravar, s); fprintf(arqgravar, usuario[gravar].cpf); fprintf(arqgravar, s); fprintf(arqgravar, usuario[gravar].rg); fprintf(arqgravar, s); fprintf(arqgravar, usuario[gravar].senha); fprintf(arqgravar, f); gravar++; } fclose(arqgravar); printf("\n\n Pronto! Pressione qualquer botao."); getch(); Inicio(); } adicionado 22 minutos depois Eu sou novo em programação, mas acho que isso que eu fiz se chama "GAMBIARRA NO CÓDIGO". KKKKK
  3. Olá, parceiro! Valeu pela dica, sou iniciante no C++. Me diga, como eu faria nesse caso: O programa leu 2 linhas: 1 Rafael Carvalho Admin - > usuario[0] 2 Joao Almeida Admin ->usuario[1] Se eu inserir um usuário na posição usuario[2], qual o código para o programa salvar? Cara se tu tiver interessado te pago 30ntão pra tu por esse código num projeto que eu comecei aqui.
  4. Oi, boa noite. Não, na verdade isso aí é só um exemplo. do que eu preciso. Botei a struct e as variaves pra onde preciso mandar minhas informações. Agradeço atenção! adicionado 19 minutos depois Mas pra deixar mais claro, é simples, eu preciso que o programa: 1 - (caso já encontre um arquivo) Pegue as informações desse arquivo e insira em seus respectivos lugares. São elas nome, sobrenome, cargo, código. 2 - Essas informações precisam ir até uma Struct Usuarios. 3 - Depois dos passos anteriores ele tem que salvar todos os danos novamente no arquivo junto com algum que o usuário tenha cadastrado. Isso em um arquivo TXT porque eu não manjo de MySQL.
  5. Bom dia/tarde/noite. Estou desenvolvendo um programa para praticar c++, só que estou com um problema. O programa vai precisar de uma struct Usuarios: struct Usuarios{ int codigo[5]; char nome[15]; char sobrenome[30]; char cargo[30]; }; int main(){ int i; // valor que o usuario vai digitar para identificar a que usuario está se referindo. Usuarios usuario; O programa tem que salvar cada item dessa estrutura e sua determinada posição no arquivo e depois ser capaz de ler o arquivo e colocar cada item na sua posição nas variaves(usando o codigo da estrutura que ao abrir da ao programa a indicação de que posição ele tem que ficar). ex: salvei um usuario Codigo: 5792 Nome: Rafael Sobrenome:Carvalho Cargo: Admin. Todos eles vão ficar armazenados em usuario[5792].variavel ao serem salvos e na hora de abrir o arquivo. Quem souber me salva, por favor.

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