Введення-виведення в сі

Введення-виведення в сі

Основним завданням програмування є обробка інформації,
тому будь-яку мову програмування має кошти для введення і виведення інформації. У мові Сі немає операторів введення-виведення.

Введення і виведення інформації здійснюється через функції стандартної бібліотеки. Прототипи розглянутих функцій знаходяться у файлі stdio.h. Ця бібліотека містить функції

  • printf () - для виведення інформації
  • scanf () - для введення інформації.

висновок інформації

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

Загальна форма запису функції printf ():

printf ( "СтрокаФорматов". об'ект1, об'ект2. об'ектn);

СтрокаФорматов складається з наступних елементів:

  • керуючих символів;
  • тексту, представленого для безпосереднього виведення;
  • форматів, призначених для виведення значень змінних різних типів.

Об'єкти можуть бути відсутні.

Керуючі символи виводяться на екран, а керують розташуванням символів, що виводяться. Відмінною рисою керуючого символу є наявність зворотного слеша '\' перед ним.

Основні керуючі символи:

  • '\ N' - новий рядок;
  • '\ T' - горизонтальна табуляція;
  • '\ V' - вертикальна табуляція;
  • '\ B' - повернення на символ;
  • '\ R' - повернення на початок рядка;
  • '\ A' - звуковий сигнал.


Формати потрібні для того, щоб вказувати вид, в якому інформація буде виведена на екран. Відмінною рисою формату є наявність символу відсоток '%' перед ним:

  • . - ціле число типу int зі знаком в десятковій системі числення;
  • % U - ціле число типу unsigned int;
  • % X - ціле число типу int зі знаком в шістнадцятковій системі числення;
  • % O - ціле число типу int зі знаком в вісімковій системі числення;
  • % Hd - ціле число типу short зі знаком в десятковій системі числення;
  • % Hu - ціле число типу unsigned short;
  • % Hx - ціле число типу short зі знаком в шістнадцятковій системі числення;
  • % Ld - ціле число типу long int зі знаком в десятковій системі числення;
  • % Lu - ціле число типу unsigned long int;
  • % Lx - ціле число типу long int зі знаком в шістнадцятковій системі числення;
  • % F - речовинний формат (числа з плаваючою точкою типу float);
  • % Lf - речовинний формат подвійної точності (числа з плаваючою точкою типу double);
  • % E - речовинний формат в експоненційної формі (числа з плаваючою точкою типу float в експоненційної формі);
  • % C - символьний формат;
  • % S - строковий формат.

#include
int main ()
int a = 5;
float x = 2.78;
printf ( "a =. \ n". a);
printf ( "x =% f \ n". x);
getchar (); getchar ();
return 0;
>

Результат роботи програми

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

#include
int main ()
float x = 1.2345;
printf ( "x =% 10.5f \ n". x);
getchar (); getchar ();
return 0;
>

У наведеному прикладі 10 - загальна кількість знакомест під значення змінної; 5 - кількість позицій після десяткового дробу. У зазначеному прикладі кількість знакомест в виведеному числі менше 10, тому вільні знакомісця зліва від числа заповнюються пробілами. Такий спосіб форматування часто використовується для побудови таблиць.

Введення-виведення в сі

введення інформації

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

Рядок форматів і список аргументів для функції обов'язкові.

#define _CRT_SECURE_NO_WARNINGS // для можливості використання scanf
#include
#include // для переходу на російську мову
int main ()
float y;
system ( "chcp 1251"); // переходимо в консолі на російську мову
system ( "cls"); // очищаємо вікно консолі
printf ( "Введіть y:"); // виводимо повідомлення
scanf ( "% f". y); // вводимо значення змінної y
printf ( "Значення змінної y =% f". y); // виводимо значення змінної y
getchar (); getchar ();
return 0;
>


Результат роботи програми:

\ T - горизонтальна табуляція - відступ, щоб при виведенні значень в кілька стовпчиків вони виводилися один під одним.
\ V - вертикальна табуляція - переводить курсор на наступний рядок і починає висновок не з початку рядка, а з поточної позиції, але в деяких випадках спрацьовує некоректно.
\ A - звуковий сигнал, який чути при «виведенні на друк» цього символу.

Схожі статті