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; ) 

Изход

 знак = a 

За печат charизползваме %cспецификатор на формат.

C Вход

При програмирането на C scanf()е една от често използваните функции за приемане на входни данни от потребителя. Най scanf()функция чете форматиран вход от стандартния вход, като например клавиатури.

Пример 5: Integer Input / Output

 #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 num1 = 12.523000 num2 = 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.

I / O множество стойности

Ето как можете да вземете множество входове от потребителя и да ги покажете.

 #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 

Спецификатори на формата за I / O

Както можете да видите от горните примери, ние използваме

  • %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

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