Как использовать %i и %d для печати целых чисел в C с помощью printf()

Kak Ispol Zovat I I D Dla Pecati Celyh Cisel V C S Pomos U Printf



В языке программирования C спецификаторы формата играют решающую роль, поскольку они помогают отображать значение на выходе. Эти спецификаторы формата используются с функцией printf() для указания типа данных, которые необходимо вывести. Одними из широко используемых спецификаторов формата в языке программирования C являются и %d которые используются для печати целых чисел.

Если вы не знаете о и %d спецификаторы формата, следуйте рекомендациям этой статьи.

%i Спецификатор формата

В языке программирования Си, используется для вывода целого числа со знаком при использовании с функцией printf(). Целые числа со знаком — это числа, которые могут быть как положительными, так и отрицательными. В программировании на C при использовании %i передаваемое значение аргумента должно быть выражением или целочисленным типом, который автоматически вычисляется в целочисленном типе данных. Вы также можете использовать спецификатор для чтения символьного значения, которое входит в диапазон целого числа со знаком.







%d Спецификатор формата

%d Спецификатор формата, с другой стороны, используется для вывода целого числа без знака на языке программирования C. Здесь беззнаковые целые числа являются положительными целыми числами. В языке C, когда вы используете %d, значение типа аргументов инт .



Отличия

Оба и %d спецификаторы формата часто используются в языке программирования C для печати целых чисел. Они могут выглядеть одинаково с точки зрения использования, а также вести себя одинаково при использовании функции printf().



Давайте рассмотрим пример кода, в котором используются оба спецификатора формата.





#include

инт основной ( ) {

инт цифра ;

printf ( 'Пожалуйста, введите любую цифру:' ) ;

сканф ( '%я' , & цифра ) ;

printf ( ' \n Цифра: %i \n ' , цифра ) ;

printf ( 'Цифра: %d \n ' , цифра ) ;

возвращаться 0 ;

}

В этом коде мы сначала инициализируем переменную и получаем значение от пользователя, используя scanf(). Затем мы показываем вывод, используя %d и %i .

Выход:



Оба обеспечивают аналогичный результат при использовании с printf() функция. Неважно, введете ли вы положительное значение или отрицательное, результат всегда будет одинаковым.

Однако, если мы посмотрим на функцию scanf, мы сможем правильно их различить. В приведенном выше коде, если мы введем десятичное значение, например «012» . Если мы используем «%д» вместо %я, вы получите результат 12. Причина в том, что %d игнорирует нулевое значение 0 из пользовательского ввода.

#include

инт основной ( ) {

инт цифра ;

printf ( 'Пожалуйста, введите любую цифру:' ) ;

сканф ( '%д' , & цифра ) ;

printf ( ' \n Цифра: %i \n ' , цифра ) ;

printf ( 'Цифра: %d \n ' , цифра ) ;

возвращаться 0 ;

}

Выход

Если одно и то же значение вводится с помощью как и в функции scanf(), в этом случае на выходе будет 10. Причина в том, печатает десятичное значение 012 (восьмеричное представление).

#include

инт основной ( ) {

инт цифра ;

printf ( 'Пожалуйста, введите любую цифру:' ) ;

сканф ( '%я' , & цифра ) ;

printf ( ' \n Цифра: %i \n ' , цифра ) ; //вывод обуви

printf ( 'Цифра: %d \n ' , цифра ) ; //вывод обуви

возвращаться 0 ;

}

Заключение

Спецификатор формата — это шаблон, который изначально начинается с % знак, и он обычно говорит нам, какие данные помещаются на вход и какие данные должны отображаться. %d и два спецификатора, широко используемые в программировании на C. Они похожи при использовании с функцией printf(), но выдают разные результаты при использовании с функцией scanf().