C Вхід / вихід: printf () та scanf ()

У цьому посібнику ви навчитеся використовувати функцію 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

Цікаві статті...