Реализовать ввод и вывод полей структуры - C (СИ)
Формулировка задачи:
Здравствуйте ещё раз. Тут во второй лабе не могу понять как реализовать ввод и вывод полей структуры с клавиатуры. Функции должны работать с структурой через указатели.
Помогите, пожалуйста.
Листинг программы
- /* Определить структурированный тип
- ввод элементов (полей) структуры с клавиатуры;
- вывод элементов (полей) структуры с клавиатуры;
- */
- // 10. Фамилия И.О., дата поступления, дата отчисления.
- #include <stdio.h>
- #include <conio.h>
- #include <locale.h>
- struct student{
- char Name[80];
- char datein[30]; // дата поступления
- char dateout[30]; // дата отчисления
- };
- void InputStud();
- void PrintStud();
- int main()
- {
- setlocale(LC_ALL, "Russian");
- struct student *aStud;
- _getch();
- return 0;
- }
Решение задачи: «Реализовать ввод и вывод полей структуры»
textual
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- #include <stdio.h>
- #include <locale.h>
- #include <malloc.h>
- struct student{
- char Name[80];
- char datein[30]; // дата поступления
- char dateout[30]; // дата отчисления
- };
- void InputStud(struct student* student) {
- printf("Введите имя: ");
- scanf("%s", student->Name);
- printf("Введите дату поступления: ");
- scanf("%s", student->datein);
- printf("Введите дату отчисления: ");
- scanf("%s", student->dateout);
- }
- void PrintStud(struct student* student) {
- printf("Студет: %s\n", student->Name);
- printf("Дата поступления: %s\n", student->datein);
- printf("Дата отчисления: %s\n", student->dateout);
- }
- int main() {
- struct student* student;
- student = (struct student*) malloc (sizeof(student));
- InputStud(student);
- PrintStud(student);
- free(student);
- return 0;
- }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с файлами и памятью.
- Объявление структуры
student
с полямиName
(имя),datein
(дата поступления),dateout
(дата отчисления). - Создание функции
InputStud
, которая считывает данные из стандартного ввода и сохраняет их в поля структурыstudent
. - Создание функции
PrintStud
, которая выводит данные из полей структурыstudent
на стандартный вывод. - Создание указателя
student
на структуруstudent
и выделение памяти под него с помощью функцииmalloc
. - Вызов функции
InputStud
для заполнения полей структурыstudent
. - Вызов функции
PrintStud
для вывода данных из структурыstudent
. - Освобождение памяти, выделенной под указатель
student
, с помощью функцииfree
. - Возврат значения 0, что означает успешный конец работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д