Enviado em 19/04/2019 - 20:38h
Boa noite pessoal, tudo bem? Então, tenho um probleminha com meu código, o objetivo dele é cadastrar pessoas e armazenar os nomes em uma array, dai quando eu terminar de cadastrar, eu posso ter a opção de pesquisar os nomes novamente e verificar se eles estão no "banco de dados" digamos assim. Ele está funcionando em partes, pois quando cadastro os nomes, e retorno ao menu inicial, as vezes ele salva o nome e encontra todos os nomes que digitei, porém, quando peço para pesquisar outro nome, ou voltar ao menu inicial, registrar outro nome e pesquisar novamente, ele perde alguns nomes que cadastrei anteriormente, fica meio confuso de entender falando, então vou mandar o código para vocês verem como eu estruturei isso tudo, não tenho conhecimentos avançados em C, comecei a estudar faz 3 dias, então peço perdão pelos erros e pela falta de noção de indentação do código, não estou acostumado com ele ainda hehe.#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
int choice,yn;
int num;
int i;
int cont;
char nomes[10][100];
char name[50];
char voider;
int main(){
void menu(void);
menu();
return 0;
}
void menu(void){
void cadastro(void);
void pesquisa(void);
printf("\n/----------------------------------------------------------------------/");
printf("\n/----------------------------------------------------------------------/");
printf("\n/-----------------------G A T H E R E R V2.0 --------------------------/");
printf("\n/----------------------------------------------------------------------/");
printf("\n/----------------------------------------------------------------------/");
printf("\n\nPress enter to continue...");
gets(&voider);
system("cls");
printf("\n/----------------------------------------------------------------------/");
printf("\n/-----------------------M A I N M E N U -----------------------------/");
printf("\n/----------------------------------------------------------------------/");
printf("\n/----------------------------------------------------------------------/");
printf("\n/---1 - REGISTER PEOPLE ===============================================/");
printf("\n/---2 - SEARCH PEOPLE =================================================/");
printf("\n/----------------------------------------------------------------------/");
printf("\n/----------------------------------------------------------------------/");
printf("\n/---Select a option----------------------------------------------------/\n");
scanf("%d",&choice);
fflush(stdin);
switch (choice){
case 1:
system("cls");
cadastro();
break;
case 2:
system("cls");
pesquisa();
break;
}
}
void cadastro(void){
void menu(void);
int g;
g = 0;
i = 0;
while(g == 0){
printf("\n/----------------------------------------------------------------------/");
printf("\n/---------------------------REGISTER PEOPLE----------------------------/");
printf("\n/----------------------------------------------------------------------/");
printf("\n/----------------------------------------------------------------------/");
printf("\n/--------- Enter with the person's name: ------------------------------/\n");
scanf("%s",nomes[i]);
fflush(stdin);
i = i + 1;
system ("cls");
printf("\n/----------------------------------------------------------------------/");
printf("\n/---------------------------REGISTER PEOPLE----------------------------/");
printf("\n/----------------------------------------------------------------------/");
printf("\n/----------------------------------------------------------------------/");
printf("\n/--------- Do you want to register another person?: -------------------/");
printf("\n/'Y = 1' 'N = 2'-------------------------------------------------------/\n");
scanf("%d",&yn);
if(yn == 1){
system("cls");
}
else{
menu();
}
}
}
void pesquisa(void){
void menu(void);
int g;
g = 0;
i = 0;
while(g == 0){
printf("\n/----------------------------------------------------------------------/");
printf("\n/---------------------------SEARCH PEOPLE -----------------------------/");
printf("\n/----------------------------------------------------------------------/");
printf("\n/----------------------------------------------------------------------/");
printf("\n/--------- Enter the name to search in database: ----------------------/\n");
fflush(stdin);
gets(name);
if(strcmp(nomes[i],name) == 0){
system("cls");
printf("\n/----------------------------------------------------------------------/");
printf("\n/---------------------------SEARCH PEOPLE -----------------------------/");
printf("\n/----------------------------------------------------------------------/");
printf("\n/----------------------------------------------------------------------/");
printf("\n/---------The following name has been found: %s ",nomes[i]);
i = i + 1;
}
else{
printf("\n/---------No name has been found in database --------------------------/");
}
printf("\n/---------Do you want to try another search? --------------------------/");
printf("\n/'Y = 1' 'N = 2'-------------------------------------------------------/\n");
scanf("%d",&yn);
if(yn == 1){
system("cls");
}
else{
menu();
}
}
}
Agora temos uma assistente virtual no fórum!!! (247)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
Reset do linux sem perder dual boot (1)
Lançado Ubuntu 24.04 Final (6)
redirecionando saida de comando touch para o AWK[AJUDA] (1)