Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Довжина] [f | n ] [ h | l ] керуючий_символ

де % ¾ ознака початку форматного коду. Якщо за символом % треба символ, що не є керуючим символом формату, то він розглядається як звичайна послідовність символів. При цьому наступні за ним символи (до наступного символу %) також уважаються просто символами; якщо за символом % треба * (зірочка), те присвоювання наступного вхідного поля придушується, поле читається, але не зберігається;

поле "довжина" ¾ позитивне десяткове ціле число задає максимальне число символів, що може бути прочитане із вхідного потоку, поки не зустрінеться символ " пробіл" або символ, що не може бути перетворений відповідно до заданого формату;

fіn ¾ дозволяють придушити угоду за замовченням при використанні моделі пам'яті;

hіl¾ предикати, які визначають аргументи short і long відповідно;

керуючий_символ¾ задається одним із символів :

d ¾ десяткове ціле;

i ¾ десяткове, восьмерічне або шестнадцатерічне ціле зі знаком;

c ¾ одиночний символ;

u ¾ беззнакове десяткове число;

x, X ¾ беззнакове шестнадцатерічне число;

0 ¾ восьмерічне число;

s ¾ сприймає символи без перетворення до символу "\n",пробілу або поки не буде досягнута задана довжина ¾ при виводі видає в потік всі символи до символу "\0", або до досягнення заданої точності.

f ¾ значення із плаваючою крапкою;

e , E¾ значення у формі Е;

G , g ¾ значення зі знаком у формі f або e залежно від значення.

Аргументи у функції scanf( )повинні бути записані у формі покажчиків, тобто у вигляді &x, &y, &mas[i]і т.п. Наприклад, для введення змінних k(int) і p(float) ця функція має наступний вигляд:

scanf( " %d %f \n ", &k, &p); .

Приклад Ввести два числа й обчислити їх суму:

// P1_4.CPP (введення двох чисел і обчислення їхньої суми

#include <stdio.h>

int main( )

{

int a,b,c;

scanf ( " %d %d",&a,&b);

c=a+b;

printf ("Cума=%d \n", c);

return 0;

}

В результаті виконання програми буде виведено:

Сума=13

(13 значення змінної с, яке залежить від введених значень змінних aі b)

Форматний рядок пропонує функції scanf() ввести десяткове число, яке треба помістити в змінну а, а потім перейти до наступного не порожнього символу й із цього місця почати введення нового десяткового числа, що потім присвоєти змінній b. Якщо за рядком керування форматом аргументів більше, ніж специфікацій формату, зайві аргументи ігноруються. Якщо для специфікацій формату недостатньо аргументів, результат не визначений.

 

Функція printf() призначена для форматированного виводу. Щоб зв'язати програму користувача зі стандартною бібліотекою, де перебуває ця функція, необхідно на початку програми передбачити препроцесорне твердження

#includе <stdio.h>

Формат функції printf :

 

Функція printf може використатися для виводу повідомлення на екран.

Наприклад:

printf (" Введіть вхідні дані \n "); ,

де \n¾ керуюча послідовність, що забезпечує перехід на новий рядок: сама функція printf()автоматично на новий рядок курсор не переводить.

Повідомлення можна вивести на екран і в такий засіб:

printf (" Введіть ");

printf (" вхідні дані");

printf (" \n ");

Результат виконання фрагменту програми буде таким же, як і в першому випадку.

Найчастіше функція printf() використається для виводу значень змінних. Першим аргументом функції є рядок формату, який знаходиться у подвійних лапках, а наступними, якщо вони є, змінні, значення яких виводяться за вказаним форматом.

Рядок формату може містити звичайні символи, які копіюються при виводі й керуючі символи, що починаються зі знака %: за специфікатором необхідно вказати керуючий символ перетворення. Кожна специфікація перетворення відповідає одному з аргументів, які знаходяться за рядком формату, і між ними встановлюється однозначна відповідність, наприклад:

printf ("Значення а, b, с рівні: %d %d %d \n", a, b, c); ,

символ d у специфікації перетворення вказує, що значення аргументу повинне бути надруковане як десяткове ціле число.

При виводі використаються ті ж специфікації, що й при введенні:

% с ¾ для виводу окремого символу;

% s ¾ для друку символьного рядка;

% x¾ для виводу шестнадцятирічної літери;

% 0¾ для виводу восьмерічних чисел;

% f ¾ для виводу чисел із плаваючою крапкою;

В функії printf(),наприклад такого виду: printf (" % c=%d \n", g, g );значення змінної g виводиться як символ алфавіту, а після знака рівності ¾ як числове значення. Перед символом перетворення може стояти числовий коефіцієнт, що явно вказує кількість позицій у виведеному рядку, відведених для елемента виводу.

Список форматних кодів має форму запису:

% [ прапор ] [ довжина ] [.точність ] [ f | n] [ h | l ] керуючий_символ,

де прапор ¾ символ, керуючий вирівнюванням виводу й виводом пробілів, десяткової крапки, ознак чисел восьмеричної й шестнадцатеричной систем числення. Прапор може задаватися одним із символів:

"- "¾ вирівнювання вліво відносно заданого поля;

"+"¾ вивід знака числа;

"пробіл" ¾ приєднання пробілу до виведеного числа, якщо число має тип зі знаком і позитивно;

"#"¾ виводиться ідентифікатор системи числення для цілих: 0 - для восьмерічних чисел, або - для шестнадцатирічних чисел.

поле "довжина" ¾ визначає мінімальну кількість виведених символів. Якщо довжина більше виведеної кількості символів, то виведене значення доповнюється пробілами, якщо довжина менше кількості символів у виведеному значенні або вона не задана, виводяться всі символи значення ( відповідно до поля " точність", якщо воно є);

поле"точність" ¾ задається цілим числом після крапки й визначає кількість виведених символів, кількість знаків після коми. На відміну від поля довжини точність може привести до усікання даних, що виводяться.

Інші параметри списку форматних кодів мають раніше описаний зміст.

Приклад Обчислити значення функції:

Y= A*X*X-SIN(X) , якщо A=10.3; X[-1 ; +1]; hx=0.2.

// P1_5.CPP -¾ обчислення функції й використання

// форматних кодів при виводі результату

#include <stdio.h>

#include <math.h>

int main( )

{

float a, x, y;

a = 10.3;

fprintf ( stdprn,"\t Результати обчислення\n\n") ;

for ( x = - 1 ; x <= 1; x = x + 0.2 )

{

y = a * x * x - sin ( x );

fprintf ( stdprn," \t x = % 4.1 f y = % 6.3 f \ n", x, y ) ;

}

}

При виводі на принтер значень аргументу й значень функції використається функція fprintf(), у якому для виводу змінюється стандартний поток на stdprn.

Припустима так само наступна форма операторів виводу:

printf ( " %d %d \n ", n, func ( 2, n ) ); ,

де func (2, n ) - виклик деякої функції.




Переглядів: 784

<== попередня сторінка | наступна сторінка ==>
Закріплення вивченого матеріалу. | Оператор умовного переходу.

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

  

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.014 сек.