После ввода дробных чисел, данные не заносятся в переменные - C (СИ)

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

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

Пишу лабу для универа. Никогда не думал, что возникнут затыки на таком: После ввода целых чисел все нормально, считаются как надо. Но после ввода дробных чисел, данные во-первых не заносятся в переменные, во-вторых не понимаю че попадает в поток, за счет чего следующий scanf даже не предлагает мне ввести данные, мол он уже и так что-то прочитал и уже последний scanf опять спрашивает, что ввести? Помогите разобраться.
#include <stdio.h>
#include <string.h>
#include <locale.h>
 
int main(int argc, char **argv)
{
    // #1 Сумма трех чисел введенных с клавиатуры
    int arg1 = 0, arg2 = 0, arg3 = 0;
    double darg1 = 0, darg2 = 0, darg3 = 0;
    // #2 Форматированный вывод
    char st1[50], st2[50], st3[50];
    int x = 0, y = 0, z = 0;
 
    // #1
    setlocale(LC_ALL, "Russian_Russia.1251");
 
    printf("Введите 3 целых числа: ");
    scanf("%d %d %d", &arg1, &arg2, &arg3);
 
    printf("Сумма чисел равна: %d\n\n", (arg1 + arg2 + arg3));
 
    printf("Введите 3 числа с плавающей точкой: ");
    scanf("%lf %lf %lf", &darg1, &darg2, &darg3);
 
    printf("Сумма чисел равна: %f\n\n", (darg1 + darg2 + darg3));
 
    // #2
    printf("Введите 3 целых числа: ");
    scanf("%d %d %d", &x, &y, &z);
 
    printf("\nВведите 3 строки: ");
    scanf("%50s", &st1);
    scanf("%50s", &st2);
    scanf("%50s", &st3);
 
    printf("%55s%d\n%55s%d\n%55s%d\n", st1, x, st2, y, st3, z);
 
    return 0;
}

Решение задачи: «После ввода дробных чисел, данные не заносятся в переменные»

textual
Листинг программы
printf("Введите 3 числа с плавающей точкой: ");
    scanf("%lf %lf %lf", &darg1, &darg2, &darg3);

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

  1. Вводится строка с приглашением к вводу трех чисел с плавающей точкой.
  2. Используется функция scanf для чтения трех чисел с плавающей точкой.
  3. Введенные числа сохраняются в переменных darg1, darg2 и darg3.

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


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

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

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