Boa noite,
Estou com uma duvida sobre o um programa simples de cadastro de pacientes…
Ao editar um cadastro usando o método fgets, por exemplo caso não
queira editar tal informação e apenas apertar enter(manter a informação atua), o que ira ser
gravado no vetor?
Pois não estou conseguindo verificar se o usuário editou ou não a informação, para então modificar os dados.
Segue método utilizado abaixo:
int editar_paciente(int id)
{
int retorno=id;
char opcao;
char nome_aux[10][100];
char sobrenome_aux[10][100];
int dia_aux[10];
int mes_aux[10];
int ano_aux[10];
float altura_aux[10];
float peso_aux[10];
printf("Digite o nome (%s): ", nome[id]);
getchar();
fgets(nome_aux,100, stdin);
printf("Digite o sobrenome (%s): ", sobrenome[id]);
fgets(sobrenome_aux,100, stdin);
printf("Digite o dia do seu nascimento (%d): ", dia[id]);
fgets(dia_aux,100, stdin);
printf("Digite o mês do seu nascimento (%d): ", mes[id]);
fgets(mes_aux,100, stdin);
printf("Digite o o ano do seu nascimento (%d): ", ano[id]);
fgets(ano_aux,100, stdin);
printf("Digite sua altura (%f): ", altura[id]);
fgets(altura_aux,100, stdin);
printf("Digite seu peso (%f): ", peso[id]);
fgets(peso_aux,100, stdin);
int i=0;
if(nome_aux[id] != NULL){
for(i=0; i<100;i++){
nome[id][i] = nome_aux[id][i];
}
}
if(sobrenome_aux[id] != NULL){
for(i=0; i<100;i++){
sobrenome[id][i] = sobrenome_aux[id][i];
}
}
if(dia_aux[id] != NULL){
dia[id]=dia_aux[id];
}
if(mes_aux[id] != NULL){
mes[id]=mes_aux[id];
}
if(ano_aux[id] != NULL){
ano[id]=ano_aux[id];
}
if(altura_aux[id] != NULL){
altura[id]=altura_aux[id];
}
if(peso_aux[id] != NULL){
peso[id]=peso_aux[id];
}
printf("Deseja editar o cadastro do paciente? [s/n]: ");
scanf("%s", &opcao);
if(opcao == 's'){
printf("Cadastro do paciente alterado com sucesso [id=%d]\n",retorno);
}
if(opcao == 'n'){
retorno= -1;
}
return retorno;
}
Alguém tem alguma dica para dar?
Obrigado.