Scanf не работает дважды - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Вот и я решил завести аккаунт на этом форуме, т.к. часто выручает в случае каких-либо передряг и казусов в работе с С. Но не в этом суть Казалось бы, простая вещь, но почему-то во второй раз

scanf

уже не срабатывает. Сталкиваюсь уже не раз, как-то не придавал значения, т.к. использую в основном потоковый I/O.
#include <stdio.h>
 
int main()
{
    char x,z;
    int y,w;
    printf("Enter the initial coordinates: ");
    scanf("%c %d",&x,&y);
    printf("Enter the final coordinates: ");
    scanf("%c %d",&z,&w);
    printf("%c %c",x,z);
    return 0;
}

Решение задачи: «Scanf не работает дважды»

textual
Листинг программы
#include <stdio.h>
 
int main()
{
    char x,z;
    int y,w;
    printf("Enter the initial coordinates: ");
    scanf("%d %c",&y,&x);
    printf("Enter the final coordinates: ");
    scanf("%d %c",&w,&z);
    printf("%x %x",x,z);
    return 0;
}

Объяснение кода листинга программы

  1. В начале кода подключается стандартная библиотека ввода-вывода .
  2. В функции main() объявлены четыре переменные: две целочисленные y и w и две символьные x и z.
  3. В первой команде вывода (printf) пользователю предлагается ввести начальные координаты.
  4. Вторая команда сканирует введенные пользователем данные, сохраненные в переменных y и x.
  5. Во второй команде вывода (printf) пользователю предлагается ввести конечные координаты.
  6. Третья команда сканирует введенные пользователем данные, сохраненные в переменных w и z.
  7. В третьей команде вывода (printf) выводятся значения переменных x и z в шестнадцатеричной системе счисления.
  8. Функция main() возвращает 0, что означает успешный конец работы программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.5 из 5