Estou tendo um problema ao usar gets() em um char[51] que faz parte de uma struct.
Compilo e não tenho qualquer erro, mas quando vou testar a entrada da variável "nome" simplesmente é ignorada e a execução passa para a entrada do salário. Estou usando o Dev C++ para compilar. O que pode ser isso?
Se eu fizer o gets() uma vez apenas, fora do for, não dá problema.
Vou colocar os trechos que considero importantes do código. Se alguém puder me ajudar, agradeço.
[]s
Alan
int main() {
struct registro {
int RF;
float salario;
char nome[51];
} funcionarios[5];
int i;
for (i=0; i<5; i++) {
printf("\nDigite o registro do funcionario: ");
scanf("%d", &funcionarios[i].RF);
printf("Digite o nome do funcionario: ");
gets(funcionarios[i].nome);
printf("Digite o salario do funcionario: ");
scanf("%f", &funcionarios[i].salario);
}
Pergunta
Guest --Alan --
Olá pessoal.
Estou tendo um problema ao usar gets() em um char[51] que faz parte de uma struct.
Compilo e não tenho qualquer erro, mas quando vou testar a entrada da variável "nome" simplesmente é ignorada e a execução passa para a entrada do salário. Estou usando o Dev C++ para compilar. O que pode ser isso?
Se eu fizer o gets() uma vez apenas, fora do for, não dá problema.
Vou colocar os trechos que considero importantes do código. Se alguém puder me ajudar, agradeço.
[]s
Alan
int main() { struct registro { int RF; float salario; char nome[51]; } funcionarios[5]; int i; for (i=0; i<5; i++) { printf("\nDigite o registro do funcionario: "); scanf("%d", &funcionarios[i].RF); printf("Digite o nome do funcionario: "); gets(funcionarios[i].nome); printf("Digite o salario do funcionario: "); scanf("%f", &funcionarios[i].salario); }Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.