我是 C 新手,正在做一些练习,但在 while 循环中遇到了 get() 问题。在搜索中,我相信它可能与 \n 字符有关,但我希望有人能够更彻底地解释这里发生的事情:
这个循环只会运行一次——它会再次打印“输入姓氏”到屏幕上,然后在 gets() 有机会第二次接受任何输入之前退出循环:
while (employee_num <= 10)
{
printf("Enter last name ");
gets(employee[employee_num].last_name);
if(strlen(employee[employee_num].last_name) == 0)
break;
printf("Enter first name ");
gets(employee[employee_num].first_name);
printf("Enter title ");
gets(employee[employee_num].title);
printf("Enter salary ");
scanf("%d", &employee[employee_num].salary);
++employee_num;
}
提前致谢!