Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Вопрос по С

6.7K
12 сентября 2006 года
Ginza9
96 / / 30.06.2006
Может, и не в тему, но напишу сюда. Есть оператор форматного вывода printf(). В нем можно задавать смещение по столбцам(от 1 до 80), чтобы надписи выводились не в левом углу экрана, а, например, в центре.

prinf("%40c",переменная символьного типа);

Так вот: как мне в цикле изменять это смещение, т.е. число сорок либо увеличивать, либо уменьшать.
242
12 сентября 2006 года
Оlga
2.2K / / 04.02.2006
может есть способ более грамотный, но можно сделать функцию которая расспечатывает n пробелов, и вызывать её из цикла, а затем расспечатывать символ без всяких дополнительных смещений.
1.9K
12 сентября 2006 года
SABROG
242 / / 26.01.2006
 
Код:
char ind[10];
char pref[] = "%";
char post[] = "c";
char lim[] = "text";
char form[255];
for (int i=0; i < 40; i++)
{
itoa(i,ind,10);
printf(strcat(strcat(pref,ind),post),lim);
}


Так ?
6.7K
12 сентября 2006 года
Ginza9
96 / / 30.06.2006
Это какое-то некрасивое решение. Хотелось бы делать прямо в одном операторе: тем более дополнительные смещения у меня в цикле считаются
6.7K
12 сентября 2006 года
Ginza9
96 / / 30.06.2006
SABORG, а вот твое решение мне подходит. Я не знал itoa()
6.7K
12 сентября 2006 года
Ginza9
96 / / 30.06.2006
Идея хорошая, но работает совершенно неверно
1.9K
12 сентября 2006 года
SABROG
242 / / 26.01.2006
А такой вариант ?
 
Код:
for (int i=1; i < 40; i++)
{
printf("%*c",i,'X');
}
6.7K
13 сентября 2006 года
Ginza9
96 / / 30.06.2006
Вот это отлично..Именно его я и хотел. Просто не мог себе сказать, что в СИ нельзя так сделать 1 строчкой..
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог