У меня проблема при получении ввода от пользователя. Я использовал функцию scanf
для получения ввода от пользователя, который, как мне кажется, является причиной проблемы.
Я хочу, чтобы два запроса были в отдельных строках.
СледующееКод является простым примером проблемы:
#include <stdio.h>
int main(void)
{
char name[20];
int age = 0;
int index;
printf("1- Insert a new student.\n");
printf("2- Delete a student.\n");
printf("3- Show all students.\n");
printf("4- Exit.\n\nChoose: ");
scanf("%d", &index);
printf("Enter your name: ");
scanf("%20[^\n]s", name);
//fgets(name, 20, stdin); // <--- Does the same thing.
printf("Enter your age: ");
scanf("%d", &age);
printf("Name: %s, Age: %d\n", name, age);
return 0;
}
Результат в виде текста:
1- Insert a new student.
2- Delete a student.
3- Show all students.
4- Exit.
Choose: 2
Enter your name: Enter your age:
Изображение:
Почему два запроса отображаются в одной строке?