Как изменить через printf ширину выводимой на экран строки - C (СИ)
Формулировка задачи:
Здравствуйте, подскажите пожалуйста, как изменить через printf ширину выводимой на экран строки?
допустим,в строке лежит "programmers"
а мне нужно,чтобы длина строки была равна 5, то есть выводилось "progr",а остальное обрезалось.
Вроде бы должно быть что то типа printf("%5.5s",.....)
Что значат числа 5 и 5 перед s???
Решение задачи: «Как изменить через printf ширину выводимой на экран строки»
textual
Листинг программы
#include <stdio.h> void writelnn(char *, int); int main(void) { char *str = "programmers"; int n = 5; writelnn(str,n); return 0; } void writelnn(char *str, int n) { if (n && str[0]) { putchar(str[0]); writelnn(++str, --n); } else putchar('\n'); }
Объяснение кода листинга программы
В этом коде определенная строка выводится на экран с заданным количеством пробелов в начале строки. Пробелы реализуются путем печати символов новой строки (\n) в функции printf.
- #include
— Включает файл стандартного ввода/вывода, который содержит прототипы функций для ввода и вывода данных. - *char str =
programmers
;* — Объявляет переменную типа указатель на char (char) со значениемprogrammers
. - int n = 5; — Объявляет переменную типа int (int) со значением 5.
- writelnn(str,n); — Вызывает функцию writelnn с аргументами str и n.
- *void writelnn(char str, int n)** — Объявляет функцию writelnn.
- if (n && str[0]) — Проверяет, что n не равно нулю и что первый символ строки str не равен нулю.
- { — Начало блока кода.
- putchar(str[0]); — Выводит первый символ строки str с помощью функции putchar.
- writelnn(++str, --n); — Рекурсивно вызывает функцию writelnn, увеличивая str на 1 и уменьшая n на 1.
- } — Конец блока кода.
- else — Если условие в if не выполнено.
- putchar('\n'); — Выводит символ новой строки (\n) с помощью функции putchar.
- } — Конец функции writelnn.
- int main(void) — Объявляет функцию main.
- { — Начало блока кода.
- *char str =
programmers
;* — Объявляет переменную типа указатель на char (char) со значениемprogrammers
. - int n = 5; — Объявляет переменную типа int (int) со значением 5.
- writelnn(str,n); — Вызывает функцию writelnn с аргументами str и n.
- return 0; — Возвращает 0, указывая, что программа успешно завершилась.
- } — Конец блока кода и конец функции main.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д