Описание функции printf в языке C — синтаксис, аргументы и примеры использования

Синтаксис функции printf выглядит следующим образом:

printf(«format», arg1, arg2, …);

Строка формата состоит из обычных символов и специальных команд форматирования, каждая из которых начинается со знака %.

Например, чтобы вывести на экран целое число, нужно использовать команду %d:

int number = 123;

printf(«Число: %d», number);

Описание функции printf

Синтаксис функции printf выглядит следующим образом:

int printf(const char *format, ...)

Некоторые из наиболее часто используемых спецификаторов формата в функции printf:

    Пример использования функции printf:

    #include <stdio.h>
    int main() {
    int num = 10;
    printf("Значение переменной num: %d
    ", num);
    float f = 3.14;
    printf("Значение переменной f: %f
    ", f);
    char c = 'A';
    printf("Значение переменной c: %c
    ", c);
    char str[] = "Пример строки";
    printf("Значение переменной str: %s
    ", str);
    return 0;
    }

    Значение переменной num: 10
    Значение переменной f: 3.140000
    Значение переменной c: A
    Значение переменной str: Пример строки

    Синтаксис функции printf

    int printf(const char *format, ...);
    

    Функция printf возвращает количество символов, успешно выведенных на экран или в файл. Аргумент format представляет собой строку формата, в которую могут включаться специальные символы, называемые спецификаторами формата. Спецификаторы формата указывают, какие типы данных должны быть отформатированы и какие дополнительные параметры используются.

    Примеры спецификаторов формата:

      Функция printf может принимать произвольное количество аргументов, соответствующих спецификаторам формата. Количество аргументов должно быть равно количеству спецификаторов формата в строке формата. Аргументы передаются после строки формата через запятую.

      Ниже приведены примеры использования функции printf:

      int num = 42;
      double pi = 3.14159;
      char initial = 'A';
      char name[10] = "Alice";
      printf("Number: %d
      ", num);
      printf("Pi: %f
      ", pi);
      printf("Initial: %c
      ", initial);
      printf("Name: %s
      ", name);
      
      Number: 42
      Pi: 3.141590
      Initial: A
      Name: Alice
      

      Аргументы функции printf

      После строки формата следуют аргументы, которые соответствуют спецификаторам формата. Количество аргументов должно быть равно количеству спецификаторов формата и они должны быть переданы в правильном порядке.

      printf("Строка: %s, Число: %d", строка, число);
      

      Здесь спецификатор ‘%s’ означает, что должна быть выведена строка, а спецификатор ‘%d’ — число. Аргументы ‘строка’ и ‘число’ соответственно представляют значения, которые будут выведены вместо спецификаторов формата.

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

      Вот некоторые специальные символы, которые можно использовать в строке форматирования функции printf:

      • %d — отображение целых чисел;
      • %f — отображение десятичных чисел;
      • %c — отображение символов;
      • %s — отображение строк;
      • %x — отображение чисел в шестнадцатеричном формате;
      • — переход на новую строку;
      • \t — вставка горизонтальной табуляции;
      • \\ — отображение символа обратного слеша;

      Пример использования функции printf:

      #include <stdio.h>
      int main() {
      int x = 10;
      float y = 3.14;
      char c = 'A';
      char name[] = "John Smith";
      printf("Значение x: %d
      ", x);
      printf("Значение y: %.2f
      ", y);
      printf("Значение c: %c
      ", c);
      printf("Имя: %s
      ", name);
      return 0;
      }
      

      В данном примере функция printf используется для отображения значений переменных x, y, c и name. Каждая переменная соответствует своему спецификатору формата.

      Форматные спецификаторы функции printf

      Ниже приведены наиболее часто используемые форматные спецификаторы:

        Пример использования форматного спецификатора:

        #include <stdio.h>
        int main() {
        int num = 42;
        printf("Значение переменной: %d
        ", num);
        return 0;
        }

        Результат выполнения программы:

        Значение переменной: 42

        Примеры использования функции printf

        Пример 1:

        #include <stdio.h>
        int main()
        {
        printf("Привет, мир!");
        return 0;
        }
        
        Привет, мир!
        

        Пример 2:

        #include <stdio.h>
        int main()
        {
        int number = 10;
        float floatValue = 3.14;
        char character = 'A';
        printf("Целое число: %d
        ", number);
        printf("Вещественное число: %f
        ", floatValue);
        printf("Символ: %c
        ", character);
        return 0;
        }
        
        Целое число: 10
        Вещественное число: 3.140000
        Символ: A
        

        Пример 3:

        #include <stdio.h>
        int main()
        {
        int number = 5;
        printf("Значение числа: %d
        ", number);
        printf("Десятичное значение: %d
        ", number);
        printf("Восьмеричное значение: %o
        ", number);
        printf("Шестнадцатеричное значение: %x
        ", number);
        return 0;
        }
        
        Значение числа: 5
        Десятичное значение: 5
        Восьмеричное значение: 5
        Шестнадцатеричное значение: 5
        
        #include <stdio.h>
        int main() {
        int number = 42;
        printf("Целое число: %d", number);
        return 0;
        }

        Целое число: 42

        #include <stdio.h>
        int main() {
        float number = 3.14159;
        printf("Число с плавающей точкой: %.2f", number);
        return 0;
        }

        Число с плавающей точкой: 3.14

        #include <stdio.h>
        int main() {
        int number = 123;
        printf("Шестнадцатеричное представление числа: %x", number);
        return 0;
        }

        Шестнадцатеричное представление числа: 7b

        Узнать подробнее о синтаксисе и аргументах функции printf можно в официальной документации языка C.

        char ch = 'A';
        printf("Символ: %c
        ", ch);

        Этот код выведет на экран символ ‘A’. Здесь переменная ch содержит символ ‘A’, и с помощью спецификатора %c мы указываем функции printf, что нужно вывести символ, который находится в переменной ch.

        char str[] = "Hello, World!";
        printf("Строка: %s
        ", str);

        Этот код выведет на экран строку «Hello, World!». Здесь переменная str содержит строку «Hello, World!», и с помощью спецификатора %s мы указываем функции printf, что нужно вывести содержимое переменной str.

        char ch = 'A';
        char str[] = "Hello, World!";
        printf("Символ: %c
        Строка: %s
        ", ch, str);

        Этот код выведет на экран символ ‘A’ и строку «Hello, World!». Здесь мы используем два спецификатора %c и %s, и указываем функции printf, что нужно вывести символ и строку, соответственно.

        Печать специальных символов с помощью функции printf

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


        • — символ новой строки;
        • \t — символ табуляции;
        • \\ — символ обратного слеша;
        • \" — символ двойной кавычки;
        • \' — символ одиночной кавычки.

        Для использования специальных символов в функции printf, необходимо поместить соответствующую последовательность символов в строку форматирования. Например:

        #include <stdio.h>
        int main() {
        printf("Hello, World!
        ");
        printf("This is a tabulated line.\tThis is on the same line.
        ");
        printf("This is a backslash: \\, and this is a double quote: \"
        ");
        printf("This is a single quote: \'
        ");
        return 0;
        }
        

        При запуске этой программы на экране будет выведено:

        Hello, World!
        This is a tabulated line.    This is on the same line.
        This is a backslash: \, and this is a double quote: "
        This is a single quote: '
        

        Оцените статью