Форматиращи спецификатори в C

Спецификаторите на формата дефинират вида на данните, които ще се отпечатват на стандартния изход. Трябва да използвате спецификатори на формат, независимо дали отпечатвате форматиран изход с printf()или приемате въвеждане с scanf().

Някои от% спецификаторите, които можете да използвате в ANSI C, са както следва:

СпецификаторИзползвани за
%° Седин знак
струна
% здравейкратко (подписано)
% huкратко (неподписано)
% Lfдълъг двойник
не отпечатва нищо
десетично цяло число (приема основа 10)
% iдесетично цяло число (автоматично открива основата)
% oосмично (основа 8) цяло число
шестнадесетично (основа 16) цяло число
% pадрес (или указател)
% fномер с плаваща запетая за плувки
% uint неподписан десетичен знак
% дчисло с плаваща запетая в научна нотация
% Eчисло с плаваща запетая в научна нотация
%%символът

Примери:

%c спецификатор на формат на един символ:

#include  int main() { char first_ch = 'f'; printf("%c\n", first_ch); return 0; } 

Изход:

f

%s спецификатор на низ формат:

#include  int main() { char str[] = "freeCodeCamp"; printf("%s\n", str); return 0; } 

Изход:

freeCodeCamp

Въвеждане на символи със %cспецификатора на формата:

#include  int main() { char user_ch; scanf("%c", &user_ch); // user inputs Y printf("%c\n", user_ch); return 0; } 

Изход:

Y

Въвеждане на низ със %sспецификатора на формата:

#include  int main() { char user_str[20]; scanf("%s", user_str); // user inputs fCC printf("%s\n", user_str); return 0; } 

Изход:

fCC

%dи %iдесетични спецификатори на цели числа:

#include  int main() { int found = 2015, curr = 2020; printf("%d\n", found); printf("%i\n", curr); return 0; } 

Изход:

2015 2020

%fи %eспецификатори на формат на число с плаваща запетая:

#include  int main() { float num = 19.99; printf("%f\n", num); printf("%e\n", num); return 0; }

Изход:

19.990000 1.999000e+01

%o спецификатор на осмично цяло число:

#include  int main() { int num = 31; printf("%o\n", num); return 0; }

Изход:

37

%x шестнадесетичен спецификатор на целочисления формат:

#include  int main() { int c = 28; printf("%x\n", c); return 0; } 

Изход:

1c