Работа со структурными переменными - C (СИ)
Формулировка задачи:
Задача:
Язык: C
CodeBlock 16.01
Компилер: GNU GCC
Данные о пассажирах включают фамилию пассажира номер места и вес багажа , . Вывести в табличной форме данные о пассажирах занимающих места с , N- го по M- е.
Из этого, что есть, решить данную задачу, помогите, пожалуйста#include <stdio.h>
typedef struct Info_t {
const char* name;
size_t number;
size_t weight;
} Info;
int main() {
Info info[] = {{"Pushkin", 1, 100},
{"Molokov", 2, 200},
{"Kuznetcov", 3, 150}};
size_t size = sizeof(info) / sizeof(*info);
size_t i;
for (i = 0; i < size; ++i) {
printf("%32s | %12u | %12u\n",
info[i].name, info[i].number, info[i].weight);
}
return 0;
}Решение задачи: «Работа со структурными переменными»
textual
Листинг программы
#include <stdio.h>
typedef struct Info_t {
const char* name;
size_t number;
size_t weight;
} Info;
int main() {
Info info[] = {{"Pushkin", 1, 100},
{"Molokov", 2, 200},
{"Kuznetcov", 3, 150}};
size_t size = sizeof(info) / sizeof(*info);
size_t i, N = 2, M = 3;
for (i = 0; i < size; ++i) {
if (info[i].number >= N && info[i].number <= M)
printf("%32s | %12u | %12u\n",
info[i].name, info[i].number, info[i].weight);
}
return 0;
}
Объяснение кода листинга программы
- Подключение стандартной библиотеки файлов
- Объявление структуры Info_t с полями name, number, weight
- Создание массива структур Info_t с помощью оператора {} и присвоение ему значения
- Вычисление размера массива в байтах с помощью оператора /
- Объявление переменных i, N, M
- Организация цикла по всем элементам массива info
- Проверка условия if для каждого элемента массива info
- Вывод на экран значений полей name, number, weight для соответствующих элементов массива info
- Завершение функции main()