Вывод структур, содержащих заданную букву - C (СИ)
Формулировка задачи:
Нужно чтобы печатало структуры которые равны "т". А у меня какой-то рандом
#define N 30
struct Client
{
char *name;
char *surname;
char *fatherName;
char *adress;
char *phone_number;
char *thing;
};
void search_tv (struct Client *clients)
{
int i;
for ( i = 0; i < N; i++)
{
if (strcmp(clients->thing,"т")==0)
{
printf("%s | %s | %s \n",clients[i].surname,clients[i].name, clients[i].adress);
}
else
clients++;
}
}Решение задачи: «Вывод структур, содержащих заданную букву»
textual
Листинг программы
printf("%-15.15s|%-10.10s|%-40.40s |\n",clients[i].surname,clients[i].name, clients[i].adress);
Объяснение кода листинга программы
clients[i].surname- это ссылка на полеsurnameструктурыclientsс индексомi.clients[i].name- это ссылка на полеnameструктурыclientsс индексомi.clients[i].adress- это ссылка на полеadressструктурыclientsс индексомi.printf- это функция вывода информации на экран.%-15.15s- это форматный спецификатор для функцииprintf, который указывает выводить строку, при этом поле вывода должно быть не длиннее 15 символов, и выравнивать ее слева.%-10.10s- это форматный спецификатор для функцииprintf, который указывает выводить строку, при этом поле вывода должно быть не длиннее 10 символов, и выравнивать ее слева.%-40.40s- это форматный спецификатор для функцииprintf, который указывает выводить строку, при этом поле вывода должно быть не длиннее 40 символов, и выравнивать ее слева.|\n- это символ, который указывает на завершение строки.