Форматные функции 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, что означает успешный конец работы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д