C Ввод / вывод: printf () и scanf ()

В этом руководстве вы научитесь использовать функцию scanf () для приема ввода от пользователя и функцию printf () для отображения вывода пользователю.

C Выход

В программировании на C printf()это одна из основных функций вывода. Функция отправляет форматированный вывод на экран. Например,

Пример 1: Выход C

 #include int main() ( // Displays the string inside quotations printf("C Programming"); return 0; )

Вывод

 Программирование на C

Как работает эта программа?

  • Все допустимые программы на 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; ) 

Вывод

 характер = а 

Для печати charмы используем %cспецификатор формата.

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: плавающий и двойной ввод / вывод

 #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 число1 = 12,523000 число2 = 10.200000

Мы используем %fи %lfспецификатор формата для floatи doubleсоответственно.

Пример 7: ввод-вывод символов C

 #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

Интересные статьи...