@WorldEn

Как вставить значение переменной после % в printf()?

Подскажите если не трудно. Только начал изучать Си.
int n = 3;
int s[10];
scanf("%s", &s); // допустим "aaa"
printf("%s", s); 
printf("%3d", n); // выведет ааа
                            //                 3
                            
// но мне надо, чтобы вместо 3 в printf было значение переменной n 
// типо printf("%dd", n, n) Это выведет просто 3n а надо "   3"
  • Вопрос задан
  • 607 просмотров
Решения вопроса 2
15432
@15432
Системный программист ^_^
Хм. Ну допустим, так:

char s[10]; //буфер для строки формата
sprintf(s, "%%%dd", n); //создаем строку формата. если n=3, в буфере s получится "%3d"
printf(s, n); //эквивалентно printf("%3d", n);
Ответ написан
@Mercury13
Программист на «си с крестами» и не только
printf("%*d", nDigits, value);

А-а-а, уже было в комментариях!..
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы