У цьому посібнику ви навчитеся використовувати функцію scanf () для отримання вхідних даних від користувача, а функцію printf () для відображення вихідних даних для користувача.
C Вихідні дані
У програмуванні на С printf()
є однією з основних вихідних функцій. Функція надсилає відформатований вихід на екран. Наприклад,
Приклад 1: Вихідні дані C
#include int main() ( // Displays the string inside quotations printf("C Programming"); return 0; )
Вихідні дані
C Програмування
Як працює ця програма?
- Усі допустимі програми на С повинні містити
main()
функцію. Виконання коду починається з початкуmain()
функції. - Це
printf()
функція бібліотеки для надсилання відформатованого виводу на екран. Функція друкує рядок усередині лапок. - Для використання
printf()
в нашій програмі нам потрібно включитиstdio.h
файл заголовка, використовуючи#include
оператор. - Оператор
return 0;
всерединіmain()
функції - це "Вихідний статус" програми. Це необов’язково.
Приклад 2: Цілочисельний результат
#include int main() ( int testInteger = 5; printf("Number = %d", testInteger); return 0; )
Вихідні дані
Число = 5
%d
Для друку int
типів ми використовуємо специфікатор формату . Тут %d
внутрішні котирування будуть замінені значенням testInteger.
Приклад 3: плаваючий та подвійний вихід
#include int main() ( float number1 = 13.5; double number2 = 12.4; printf("number1 = %f", number1); printf("number2 = %lf", number2); return 0; )
Вихідні дані
число1 = 13.500000 число2 = 12.400000
Для друку float
ми використовуємо %f
специфікатор формату. Подібним чином ми використовуємо %lf
для друку double
значень.
Приклад 4: Друк символів
#include int main() ( char chr = 'a'; printf("character = %c", chr); return 0; )
Вихідні дані
символ = a
Для друку char
ми використовуємо %c
специфікатор формату.
C Вхідні дані
У програмуванні на С scanf()
одна з найпоширеніших функцій для отримання вхідних даних від користувача. scanf()
Функція зчитує форматований введення зі стандартного вводу , такі як клавіатури.
Приклад 5: Цілочисельний вхід / вихід
#include int main() ( int testInteger; printf("Enter an integer: "); scanf("%d", &testInteger); printf("Number = %d",testInteger); return 0; )
Вихідні дані
Введіть ціле число: 4 Число = 4
Тут ми використовували %d
специфікатор формату всередині scanf()
функції для отримання int
вхідних даних від користувача. Коли користувач вводить ціле число, воно зберігається у змінній testInteger.
Зверніть увагу, що ми використовували &testInteger
всередині scanf()
. Це тому, що & testInteger отримує адресу testInteger, і значення, введене користувачем, зберігається в цій адресі.
Приклад 6: Float і подвійний ввід / вихід
#include int main() ( float num1; double num2; printf("Enter a number: "); scanf("%f", &num1); printf("Enter another number: "); scanf("%lf", &num2); printf("num1 = %f", num1); printf("num2 = %lf", num2); return 0; )
Вихідні дані
Введіть число: 12.523 Введіть інше число: 10.2 num1 = 12.523000 num2 = 10.200000
Ми використовуємо %f
і %lf
специфікатор формату для float
і double
відповідно.
Приклад 7: Символьний ввід / вивід
#include int main() ( char chr; printf("Enter a character: "); scanf("%c",&chr); printf("You entered %c.", chr); return 0; )
Вихідні дані
Введіть символ: g Ви ввели g
Коли користувач вводить символ у вищезазначену програму, сам символ не зберігається. Натомість зберігається цілочисельне значення (значення ASCII).
І коли ми відображаємо це значення у %c
текстовому форматі, відображається введений символ. Якщо ми використовуємо %d
для відображення символу, друкується його значення ASCII.
Приклад 8: Значення ASCII
#include int main() ( char chr; printf("Enter a character: "); scanf("%c", &chr); // When %c is used, a character is displayed printf("You entered %c.",chr); // When %d is used, ASCII value is displayed printf("ASCII value is %d.", chr); return 0; )
Вихідні дані
Введіть символ: g Ви ввели g. Значення ASCII - 103.
Кілька значень вводу / виводу
Ось як ви можете взяти від користувача кілька входів і відобразити їх.
#include int main() ( int a; float b; printf("Enter integer and then a float: "); // Taking multiple inputs scanf("%d%f", &a, &b); printf("You entered %d and %f", a, b); return 0; )
Вихідні дані
Введіть ціле число, а потім плаваюче: -3 3.4 Ви ввели -3 та 3.400000
Специфікатори формату для вводу-виводу
Як ви можете бачити з наведених прикладів, ми використовуємо
%d
дляint
%f
дляfloat
%lf
дляdouble
%c
дляchar
Ось список часто використовуваних типів даних C та їх специфікатори формату.
Тип даних | Специфікатор формату |
---|---|
int | %d |
char | %c |
float | %f |
double | %lf |
short int | %hd |
unsigned int | %u |
long int | %li |
long long int | %lli |
unsigned long int | %lu |
unsigned long long int | %llu |
signed char | %c |
unsigned char | %c |
long double | %Lf |