Menu
Coddy logo textTech

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

Часть раздела Fundamentals путешествия по C на Coddy — урок 32 из 63.

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

  • %d или %i: Целое число
  • %u: Беззнаковое целое число
  • %f: Число с плавающей запятой или двойной точности
  • %e или %E: Экспоненциальная запись
  • %g или %G: Использовать %f или %e, в зависимости от того, что короче
  • %x или %X: Шестнадцатеричный формат
  • %o: Восьмеричное число
  • %c: Символ
  • %s: Строка
  • %p: Адрес указателя

Вы также можете управлять шириной и точностью вывода:

  • %5d: Целое число шириной 5
  • %7.2f: Число с плавающей запятой шириной 7 и 2 знаками после запятой
  • %-10s: Выровненная по левому краю строка шириной 10

Пример:

printf("%10.2f\n", 3.14159);  // Вывод:      3.14
printf("%.3f\n", 3.14159);   // Выводит: 3.142
printf("%+d\n", 42);         // Выводит: +42
printf("%x\n", 255);         // Выводит: ff
challenge icon

Задание

Легко

Напишите программу на языке C, которая демонстрирует использование различных спецификаторов формата. Ваша программа должна:

  1. Объявить целое число num со значением 255
  2. Объявить число с плавающей точкой pi со значением 3.14159
  3. Объявить символ letter со значением 'A'
  4. Вывести num как десятичное, шестнадцатеричное и восьмеричное число
  5. Вывести pi с 2 знаками после запятой
  6. Вывести letter как символ и его значение ASCII

Используйте соответствующие спецификаторы формата для каждого вывода.

Шпаргалка

Функция printf() использует спецификаторы формата для точного управления выводом:

  • %d или %i: Целое число
  • %u: Беззнаковое целое число
  • %f: Число с плавающей точкой (float или double)
  • %e или %E: Экспоненциальная запись
  • %g или %G: Использовать %f или %e, в зависимости от того, что короче
  • %x или %X: Шестнадцатеричное число
  • %o: Восьмеричное число
  • %c: Символ
  • %s: Строка
  • %p: Адрес указателя

Управление шириной и точностью:

  • %5d: Целое число с шириной поля 5
  • %7.2f: Число с плавающей точкой с шириной поля 7 и 2 знаками после запятой
  • %-10s: Строка с выравниванием по левому краю и шириной поля 10
printf("%10.2f\n", 3.14159);  // Вывод:      3.14
printf("%.3f\n", 3.14159);   // Вывод: 3.142
printf("%+d\n", 42);         // Вывод: +42
printf("%x\n", 255);         // Вывод: ff

Попробуйте сами

#include <stdio.h>

int main() {
    int num = 255;
    float pi = 3.14159;
    char letter = 'A';
    
    // Ваш код здесь
    
    return 0;
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Fundamentals