Избавиться от лишнего '\n' при получении названия переменной - C (СИ)

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

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

Добрый день, вот код, когда срабатывает первый scanf, он получает 2 символа: буква и '\n'. И из-за этого в цикле мы записываем '\n' в массив. Как решить эту проблему? Заранее спасибо.
#include <stdio.h>
 
void main() {
    char button;
    printf("Do you want to code or decode? Press c or d:\n");
    char a;
    scanf_s("%c", &a);
    if (a == 'd') {
        printf("\nVively d");
    }
    else if (a == 'c') {
        printf("\vVi vveli c");
    }
    char b = 'a';
    char array[100];
    for (int i = 0; b != '\n'; i++)
    {
        scanf("%c", &b);
        array[i] = b;
    }
}

Решение задачи: «Избавиться от лишнего '\n' при получении названия переменной»

textual
Листинг программы
scanf_s(" %c", &b, 1);

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

  1. Вводится символ 'b' в переменную b типа char.
  2. Переменная b содержит символ, который был введен с клавиатуры.
  3. Символ 'b' был введен с клавиатуры.
  4. Значение переменной b - это символ 'b'.

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


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

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

10   голосов , оценка 4 из 5
Похожие ответы