Необходимо преобразовать входные данные от пользователя в различные переменные для использования - PullRequest
0 голосов
/ 02 мая 2019

Вот функция для некоторого кода, над которым я работаю в C. Сейчас он принимает 2 разных пользовательских ввода и сохраняет их как город и расстояние. Я хочу, чтобы пользователь вводил только один раз. Например, «Введите название города и расстояние от предыдущего города: Арлингтон 200». Мне нужно разделить эту строку на значения для города и расстояния. Я думаю, что мне нужно использовать токены, но я не знаю, как.

void addCity ()
{
char city[30];
int distance;

printf("Enter city name : ");
scanf("%s",city);
printf("Enter distance from previous city: ");
scanf("%d",&distance);
printf("The city has been added.\n");

if(root == NULL){
root = (struct node *) malloc( sizeof(struct node) );
strcpy(root->city, city);
root->distance = distance;
root->next = NULL;
}
else
{

struct node *currentNode = root;
struct node *newNode = (struct node *) malloc( sizeof(struct node) );
while(currentNode->next!=NULL)
{
currentNode = currentNode->next;
}

strcpy(newNode->city, city);
newNode->distance = distance;

currentNode->next = newNode;
}
}

1 Ответ

0 голосов
/ 02 мая 2019

Вы можете запросить оба сразу:

printf("Enter the city name and distance from previous city: ");
scanf("%s %d",city, &distance);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...