Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.05.2014, 17:30   #1
East Undia Trading
Форумчанин
 
Регистрация: 02.10.2013
Сообщений: 231
По умолчанию Табличный вывод.Язык Си.

Я написал программу, но нужно чтобы информация выводящаяся на экран имела приличный вид.Я хочу сделать в виде таблички, но не понимаю как посчитать сколько мне нужно сделать отступов, например здесь, чтобы табличка получилась с ровными полями, а не как у меня.
Код:
    printf("|%1s", info->name_f);
    printf("%17s|", info->name_p);
    printf("%27s|", info->date);
Что получилось у меня:

Полный код:
http://pastebin.com/kDzx6xyN
East Undia Trading вне форума Ответить с цитированием
Старый 03.05.2014, 18:03   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Не проверял:
Код:
puts(" _______________________________________________________________________");
puts("|                 |                        |          |                |");
puts("| Название театра | Название представления |   Дата   |      Жанр      |");
puts("|_________________|________________________|__________|________________|");
...
printf("|%17s|%24s|%10s|", info->name_f, info->name_p, info->date);
if (newList->type)
    printf("18+:%12s|\n", info->type1.adult);
else
    printf("0+:%13s|\n", info->type1.child);
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 03.05.2014, 20:01   #3
Bugrimov
C/C++, Java
Участник клуба
 
Аватар для Bugrimov
 
Регистрация: 28.03.2012
Сообщений: 1,679
По умолчанию

BDA поддерживаю Ваш вариант
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости"
Сложность - враг простоты и удобства!
Bugrimov вне форума Ответить с цитированием
Старый 04.05.2014, 21:58   #4
East Undia Trading
Форумчанин
 
Регистрация: 02.10.2013
Сообщений: 231
По умолчанию

Может кто-нибудь заметит ошибку - я, нет.Программа должна удалять два элемента списка, я вызываю эту функцию дважды и она делает свое дело.Но только когда элементов > двух.Когда элементов именно два - она вылетает без ошибки, когда один - я написал предупреждение что элемент только один.
Код:
void delete_unit()
{	newList=head;
	if(newList != NULL)       
	{
	head=head->next;
	free(newList);       
	if (head!=NULL)     
	head->previous=NULL;
	else                  
	last = NULL;
	}
}

Последний раз редактировалось East Undia Trading; 04.05.2014 в 22:01.
East Undia Trading вне форума Ответить с цитированием
Старый 04.05.2014, 22:46   #5
East Undia Trading
Форумчанин
 
Регистрация: 02.10.2013
Сообщений: 231
По умолчанию

В проверке ошибка была
Код:
if(n>2)
но нужно >=
East Undia Trading вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Табличный компонент для работы с СУБД. Небесный Компоненты Delphi 11 02.01.2013 19:38
Переключение вида подформы: Табличный - Ленточный (кнопкой) Людвиг Microsoft Office Access 2 14.12.2012 08:57
Вывод повторяющихся елементов массива.(язык програмирования не важен) alljustforfun Помощь студентам 2 16.04.2012 15:46
Мой новый Табличный сайт, Оцените Вёрстку ребят psywalker HTML и CSS 9 23.12.2009 21:01
табличный вывод данных zatoichi Общие вопросы Delphi 1 28.03.2008 08:23