Форматные функции printf() и scanf() - C (СИ)
Формулировка задачи:
Вот читал про рсдн про эти функции.Убил моск...Помогите разобраться.
Вот она,статья:
_http://www.rsdn.ru/forum/cpp/1128588.1.aspx
Как обычно, квадратные скобки означают, что этот элемент спецификатора может отсутствовать. По сравнению со спецификатором формата для вывода только символ *(звездочка) имеет другой смысл: если она указана, то запись значения в соответствующую переменную не происходит. Например, можно определить ввод двух значений в две числовых переменных, разделяя их при вводе любым символом
Хрень какаято ей Богу.Про звёздочку не понял.В какую,***,соответствующцую переменную,если их тут всего две ?! Последнее предложение аналогично. Каким образом тут разделять значения переменных a и b я не знаю... explode() в РНР куда проще осилить.Затем возникла головная боль о фильтрации данных.Пользователь может навводить тут чёрт знает что!
double a,b; scanf("%lf%*c%lf",&a,&b);
Решение задачи: «Форматные функции printf() и scanf()»
textual
Листинг программы
#include <stdio.h> int main (void) { float f = 12.34567; /* '%f' означает простая печать числа в формате float или double * В данном случае напечатается "1.234000" */ printf ("%f\n", f); /* '%e' означает печать числа в формате float или double в эспотенциальном виде * В данном случае напечатается "1.234567e+01", что следует понимать * как 1.234567 * 10^1 */ printf ("%e\n", f); /* '%.02f' означает то же, что и %f, но значение округляется до 2 знаков после запятой * В данном случае напечатается "12.35" */ printf ("%.02f\n", f); /* '%.02e' означает то же, что и %e, но значение округляется до 2 знаков после запятой * В данном случае напечатается "1.23e+01" */ printf ("%.02e\n", f); return 0; }
Объяснение кода листинга программы
- Объявлена переменная типа float f со значением 12.34567.
- Используя функцию printf() с форматом '%f', напечатано значение переменной f, после чего добавлен символ новой строки '\n'. Результат:
1.234000
. - Используя функцию printf() с форматом '%e', напечатано значение переменной f в экспоненциальном виде, после чего добавлен символ новой строки '\n'. Результат:
1.234567e+01
. - Используя функцию printf() с форматом '%.02f', напечатано значение переменной f, округленное до двух знаков после запятой, после чего добавлен символ новой строки '\n'. Результат:
12.35
. - Используя функцию printf() с форматом '%.02e', напечатано значение переменной f в экспоненциальном виде, округленное до двух знаков после запятой, после чего добавлен символ новой строки '\n'. Результат:
1.23e+01
. - Программа завершена, возвращено значение 0, что означает успешный конец работы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д