scanf си



Автор Без Палева задал вопрос в разделе Другие языки и технологии

Си. scanf(). не пойму почему не считываются значения. Подскажите, пожалуйста. и получил лучший ответ

Ответ от Ra[гуру]
Проверьте соответствие форматной строки и типов данных, посмотрите настройки локали, обратите внимание как вводятся float, а как double:

#include <stdio.h>
#include <locale.h>

int main() {
    float f;
    double d;
    struct lconv *lc;

    setlocale(LC_ALL, "C");
    lc = localeconv();
    printf("decimal point: %c
", *lc->decimal_point);
    printf("f d? ");
    scanf("%f", &f);
    scanf("%lf", &d);
    printf("you enter: %f %f
", f, d);

    setlocale(LC_ALL, "");
    lc = localeconv();
    printf("decimal point: %c
", *lc->decimal_point);

    printf("f d? ");
    scanf("%f %lf", &f, &d);
    printf("you enter: %f %f
", f, d);

    return 0;
}

scanf си

Ответ от Ёерж[гуру]
Возможно, у вас та же проблема, с которой я сам недавно столкнулся. Когда вводите, вводить вещественные числа нужно вводить, например, так 5,9, а не 5.9.

Ответ от Капитан Гугл[гуру]
1. Надо выкладывать задание. Написано "введите целочисленные", затем вводятся вещественные. Телепаты в отпуске. 2. Надо выкладывать код не картинкой, а, скажем, на pastebin.com - и не произвольно вырезанный кусок, а по возможности минимальный участок, где проявляется проблема. Этот участок кода не содержит кучу всего, от чего зависит выполнение - например, определений a,b,x,y. Телепаты.. . см. выше. 3. Надо конкретно описывать проблему. Значения не считываются? Отчего же - вот, -9.2559604013428634e+061 считалось. Может, считываются неправильно, или считываются неоттуда, или не в том порядке? Телепаты см. выше.

Ответ от =Serge=[гуру]
Задано считывать целые значения: int a,b,x;//объявление переменных scanf(%d %d %d &a,&b,&x);//считаем целые по формату целых Или нужно вещественные? Тогда float w,u,z; scanf(%f %f %f &w,&u,&z);//считаем float

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: Си. scanf(). не пойму почему не считываются значения. Подскажите, пожалуйста.

Не могу понять как работает scanf(). Си.
Использовать подобные функции не есть хорошо ибо как видишь глюки начинаются) И почему нельзя
подробнее...

scanf()
scanf() возвращает число успешно прочитанных элементов форматной строки, а не число байтов. В
подробнее...
спросили в Stdio h
Помогите написать программу со switch в СИ
#include <stdio.h>
#include <conio.h>
#include <math.h>

int
подробнее...

Как ввести строку с пробелами,используя scanf в Си,не используя gets?
Есть такая идея) , но нужно знать точно количество слов и их длину.. .
char
подробнее...
спросили в Stdio h Stdlib h
Динамический массив в Си
Операция new для языка C++, а в Си требуется такая конструкция при выделении памяти:подробнее...
Ответ от 3 ответа[гуру]
Привет! Вот еще темы с похожими вопросами:

Си++ СТРУКТУРЫ( задача внутри)
int sravnenie(char c){
 if ((c == \'m\') || (c == \'M\')) return 1;
 if (c ==
подробнее...
спросили в Stdio h
На языке си %d означает целое число, а как дробные и знаки операций? И ещё другие виды.
читай справку по stdio.h или по scanf например
вещественный %f, короче функций много у этой
подробнее...

Си рекурсия
Работающий вариант:

#include

long int func(int k, int l);

int
подробнее...

fgetc не работает. СИ
А кто тебе сказал что строчка заканчивается на /n?
Строчки в С всегда заканичваются нулём.подробнее...
спросили в Евгений IV
что означает знак процента "%" в си++ ?
Смотря где стоит. . если в printf, то отвечает за форматирование.
При остальных операциях -
подробнее...
спросили в Audi Cup Pavement
Как на языке Си вытащить из строки число
Почитайте работу с указателями.

Как пример что касается строк:
#include
подробнее...
спросили в Stdio h Stdlib h
Программирование. Одномерные массивы в си.
"я ни черта не понял на лекции" Совершенно нормально. Лекции служат только для того, чтобы понять,
подробнее...
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*