Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
katka
0 / 0 / 0
Регистрация: 12.01.2010
Сообщений: 6
#1

Работа со структурами - C++

18.01.2010, 19:13. Просмотров 1182. Ответов 9
Метки нет (Все метки)

Цель работы: научиться объявлять структуру и работать с ее по-лями
Помогите пожалуйста. Нужно вот такую программку написать.
Распечатать список учеников музыкальной школы, которые учатся иг-рать на скрипке. Указать сколько лет они занимаются музыкой.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.01.2010, 19:13     Работа со структурами
Посмотрите здесь:

Работа со структурами - C++
Создать массив структур Название файла, объем файла, дата создания. И вывести на печать записи объем которых меньше 2Кб. Спасибо...

Работа со структурами - C++
Сегодня преподаватель огорошил известием что к завтрашнему дню надо сдать лабораторную по Работе со структурами. Было бы хорошо. НО он...

Работа со структурами. - C++
Здраствуйте! Текст задания : Создать программу, позволяющую вводить элементы массива структур (размерность массива не более 20...

Работа со структурами - C++
Есть код программы,к сожалению не мой,пытаюсь его понять но не все понятно. #include <iostream> #include <string.h> #include...

Работа со структурами - C++
struct data_type { int day; int month; int year; }data_birthday; /*нужна ли здесь эта переменная или достаточно вызвать...

Работа со структурами - C++
Сделать программу, которая позволяет создать файл, просмотреть, дополнить и удалить данные с файла, который имеет информацию про багаж...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
18.01.2010, 19:32     Работа со структурами #2
Не совсем понятно задание, но может быть вы имели в виду это
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <iostream>
using namespace std;
 
#define AMOUNT 3
 
typedef struct student
{
    char name[10];
    char instrument[10];
    int  year;
    
} STUDENTS, *PSTUDENTS;
 
int main()
{
    STUDENTS st[AMOUNT];
    memset(st, 0, sizeof(st));
    
    for(int i = 0; i < AMOUNT; i++)
    {
        cout << "Введите имя ученика: ";
        cin  >> st[i].name;
        
        cout << "Введите название инструмента: ";
        cin  >> st[i].instrument;
        
        cout << "Введите год обучения: ";
        cin  >> st[i].year;
    }
    
    cout << endl;
    cout << "Ученики, обучающиеся игре на скрипке:" << endl;
    for(int i = 0; i < AMOUNT; i++)
    {
        if(!strcmp(st[i].instrument, "Скрипка"))
        {
            cout << st[i].name << "занимается игрой на скрипке уже " << st[i].year << " год(а)/лет" << endl;
        }
    }
 
    return EXIT_SUCCESS;
}
Radjuk
134 / 68 / 12
Регистрация: 10.10.2009
Сообщений: 187
18.01.2010, 19:36     Работа со структурами #3
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
struct music
{
char fname[15];
char lname[25];
int year;
char music_inst[20];
};
 
void main()
{
music *t,temp;
cout<<"Enter count of people:"; // Для Си используется printf("...");
cin>>n;                                  // scanf("%d ",&n);
t=(music*)calloc(n,sizeof(music));
 
for(i=0;i<n;i++)
{
cout<<"Enter Name:";cin>>t[i].fname;
cout<<"Enter last name:";cin>>t[i].lname;
cout<<"Enter year of begin studing:";cin>>t[i].year;
cout<<"Enter name of instuments:";cin>>t[i].music_inst;
}
 
cout<<"Enter name of instument to look info of shool :";
cin>>temp.music_inst;
cout<<"Enter date of year :";cin>>temp.year;
for(i=0;i<n;i++)
{
if(strcmp(t[i].music_inst,temp.music_inst)=0)
{
cout<<t[i].fname<<" "<<t[i].lname<<" ";
int date_year=0;
date_year = temp.year - t[i].year;
cout<<date_year;
}
}
free(t);
getch();
}
Day
1154 / 959 / 57
Регистрация: 29.10.2009
Сообщений: 1,385
18.01.2010, 19:42     Работа со структурами #4
Что-то в таком роде
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
typedef struct {
  char FIO[30];
  char IN[20];
  int Y;
}  R;
R x[10]; // массив из 10 таких структур
    // Заполняем
strcpy(x[0].FIO, "Ivanova");
strcpy(x[0].IN,"Baraban");
x[0].Y = 10;
strcpy(x[1].FIO, "Petrova");
strcpy(x[1].IN,"Skripka");
x[1].Y = 2;
  // .......
for (i=0; i<10; i++) {
   if (strcpy(x[i].IN, "Skripka")==0) {
      printf("%s - %d godov\n", x[i].FIO, x[i].Y);
   }
}
Удачи!
Пока я писал ответ, уважаемые fasked & Radjuk сделали все значительно подробнее
и аккуратнее.
Но как выкинуть слова из песни?
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
18.01.2010, 19:44     Работа со структурами #5
Цитата Сообщение от Day Посмотреть сообщение
Что-то в таком роде
не стуктурно
zim22
depict1
276 / 141 / 2
Регистрация: 11.07.2009
Сообщений: 606
18.01.2010, 19:48     Работа со структурами #6
Цитата Сообщение от fasked Посмотреть сообщение
не стуктурно
как по мне - также структурно, как и у тебя.
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
18.01.2010, 19:50     Работа со структурами #7
Цитата Сообщение от zim22 Посмотреть сообщение
как по мне - также структурно, как и у тебя.
шутка юмора
мы же не собираемся здесь БД собирать...
katka
0 / 0 / 0
Регистрация: 12.01.2010
Сообщений: 6
18.01.2010, 21:34  [ТС]     Работа со структурами #8
fasked,

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <iostream>
using namespace std;
 
#define AMOUNT 3
 
typedef struct student
{
        char name[10];
        char instrument[10];
        int  year;
        
} STUDENTS, *PSTUDENTS;
 
int main()
{
        STUDENTS st[AMOUNT];
        memset(st, 0, sizeof(st));
        
        for(int i = 0; i < AMOUNT; i++)
        {
                cout << "Введите имя ученика: ";
                cin  >> st[i].name;
                
                cout << "Введите название инструмента: ";
                cin  >> st[i].instrument;
                
                cout << "Введите год обучения: ";
                cin  >> st[i].year;
        }
        
        cout << endl;
        cout << "Ученики, обучающиеся игре на скрипке:" << endl;
        for(int i = 0; i < AMOUNT; i++)
        {
                if(!strcmp(st[i].instrument, "Скрипка"))
                {
                        cout << st[i].name << "занимается игрой на скрипке уже " << st[i].year << " год(а)/лет" << endl;
                }
        }
 
        return EXIT_SUCCESS;
}
Так то норм..тока я три имени ввожу нажимаю энтер и все окно закрывается!
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
19.01.2010, 04:49     Работа со структурами #9
Попробуй это почитать
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.01.2010, 12:00     Работа со структурами
Еще ссылки по теме:

Работа со структурами - C++
Создать структуру для работы с тригонометрическими комплексными числами. Комплексное число в тригонометрической форме задается своим...

Работа со структурами - C++
Ввести в компьютер информацию о сотрудниках : фамилия,имя,возраст. Напечатать имена сотрудников,у которых возраст больше 28 лет

Работа со структурами - C++
Здравствуйте.У меня возникли проблемы в написании программы,а именно как удалить структуру,поиск в массиве по ключевому полю.Прошу вас...

Работа со структурами - C++
1. Надо обьявить тип структура с полями базовых типов, указателей и массивов 2. Создать и инициализировать переменную типа структура ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
katka
0 / 0 / 0
Регистрация: 12.01.2010
Сообщений: 6
19.01.2010, 12:00  [ТС]     Работа со структурами #10
Всем спасибо!
Получилось...СДАЛА!!!
Yandex
Объявления
19.01.2010, 12:00     Работа со структурами
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru