Не получается правильно ввести данные в структуру - C (СИ)
Формулировка задачи:
Не получается правильно ввести данные в структуру, помогите!
#include "stdafx.h" #include "conio.h" #include "time.h" #include "stdlib.h" int _tmain(int argc, _TCHAR* argv[]) { struct student { char fio[20]; int gr; int yspev[5]; }; student st[3]; for(int i=0;i<3;i++) { printf("Vvedite FIO"); gets(st[i].fio); printf("Vvedite Gruppy"); scanf("%d",&st[i].gr); for(int j=0;j<5;j++) {printf("Predmet nomer %d=",j); scanf("%d",&st[i].yspev[j]);} } getch(); return 0; }
Решение задачи: «Не получается правильно ввести данные в структуру»
textual
Листинг программы
struct student { char fio[20]; int gr; int yspev[5]; }; int main() { student st[3]; for(int i=0;i<3;i++) { printf("Vvedite FIO"); scanf("%s",&st[i].fio[20]); printf("Vvedite Gruppy"); scanf("%d",&st[i].gr); for(int j=0;j<5;j++) { printf("Predmet nomer %d=",j); scanf("%d",&st[i].yspev[j]); } } getch(); return 0; }
Объяснение кода листинга программы
- Объявляется структура student, которая содержит массив символов fio, целочисленную переменную gr и массив из 5 целочисленных переменных yspev.
- В функции main() создается массив из 3 структур student с именем st.
- Затем в цикле for с переменной i от 0 до 2 (т.е. для каждого элемента массива st) происходит:
- Выводится сообщение
Vvedite FIO
и считывается строка (до 20 символов, включая '\0') в переменную st[i].fio. - Выводится сообщение
Vvedite Gruppy
и считывается целое число в переменную st[i].gr. - Затем в цикле for с переменной j от 0 до 4 (т.е. для каждого из 5 элементов массива yspev) происходит:
- Выводится сообщение
Predmet nomer %d=
и считывается целое число в переменную st[i].yspev[j].
- Выводится сообщение
- В конце функции main() вызывается функция getch() для приостановки выполнения программы до тех пор, пока пользователь не нажмет какую-либо клавишу.
- Возвращается 0, что означает успешное выполнение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д