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

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

Войти
Регистрация
Восстановить пароль
 
ДАгМА
0 / 0 / 0
Регистрация: 19.12.2009
Сообщений: 23
#1

структуры - C++

27.12.2009, 09:54. Просмотров 314. Ответов 2
Метки нет (Все метки)

описать структуру с именем student, содержащую следующие поля
1. фамилия и инициалы
2. номер группы
3 успеваемость(массив из 5 элементов)
Написать программу, выполняющие следующие действия
1. ввод с клавиатуры данных в массив, состоящих из 10 структур типа student. записи должны быть упорядочены по афавиту
2. вывод на дисплей фамилий и номер группы для всех студентов, имеющих хотя бы одну 2
3 если таких студентов нет, вывести соответствующие сообщение


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "stdafx.h"
#include <locale.h>
#include <string.h>
#include <math.h>
 
int _tmain(int argc, _TCHAR* argv[])
 
{
    setlocale(LC_ALL, "Russian");
    struct student
    {
        char fio[15];
    int num_gr;
    float progress[5];
    };
    student mass[10];
    int i,j;
    printf ("Введите средний бал: \n");
printf ("-----------------------------\n"); 
for (i=0;i<5;i++)
scanf ("%s %d %s", &mass[i].fio, &mass[i].num_gr, &mass[i].progress);
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.12.2009, 09:54     структуры
Посмотрите здесь:

Помещение структуры в вектор, удаление структуры, изменение элементов структуры - C++
Здравствуйте. Помогите разобраться с тем, как: 1 - находить элементы в векторе зная уникальный элемент структуры. 2 - удалять...

Функция внутри структуры использует указатель, как поле этой структуры - C++
Коротко, есть класс A, описан в файле A_class.h ну и реализованы функции в A_class.cpp, есть файл GlobalItems.h, где хранятся глобальные...

Динамические структуры данных. Программа ввода в структуры и вывода информации из неё. - C++
Автоматизированная информационная система на железнодорожном вокзале содержит сведения об отправлении поездов дальнего следования. Для...

Динамическое изменение структуры таблицы для организации древовиднойой структуры - MS Access
Доброго времени суток. У меня такой вот вопрос: Необходимо сделать возможность добавления записей в таблицу определнным образом (через...

Динамические структуры данных, списковые структуры (надо разобраться что делает программа) - Delphi
дана программа, надо помочь выяснить что в ней делает каждая подпрограмма unit Unit6; interface uses Windows,...

Структуры, массивы структур (как можно присваивать(инициализировать) значения полям структуры) - C++
Есть у меня вот такая структура, например struct Subject { int cost; int Volume; }; Потом создаю экземпляр, Subject G; ...

Вывод структуры, строка как элемент структуры - C++
Описать структуру с именем TRAIN, содержащую следующие поля: □ название пункта назначения; □ номер поезда; □ время отправления. ...

Управляющие структуры. Программирование алгоритмов разветвляющейся структуры. - Delphi
как это в delphi выполнить?((( Вычислить объем и площадь полной поверхности цилиндра, если известны высота и радиус основания V=пr^2*h,...

Исследование структуры FILE или: что вообще можно выудить из этой структуры, указатель на которую мы получаем при открытии файла? - C++
Ничего нельзя. Итак, новичкам напомню, что после выполнения кода FILE* f= fopen (&quot;file.txt&quot;, &quot;w&quot;); в переменной f содержится...

Структуры. Работа с файлами, содержащими структуры - C++
2) Дана совокупность сведений, каждое из которых состоит из следующих рекви-зитов: фамилия и инициалы автора – 25 знаков; название книги –...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Sekt
156 / 155 / 10
Регистрация: 29.04.2009
Сообщений: 637
27.12.2009, 14:51     структуры #2
Инициализуйте struct до
C++
1
main().
И вам понадобится 2 структуры одна для выделение памяти и 2ая для ваших данных
ДАгМА
0 / 0 / 0
Регистрация: 19.12.2009
Сообщений: 23
27.12.2009, 23:22  [ТС]     структуры #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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
#include<stdafx.h>
#include<stdio.h>
#include<conio.h>
#include<string.h>
 
 
const int n=4;
int j;
struct STUDENT
{
    char name [5];
    char ini [5];
    int n_gr[5];
    int mark [3];
    float ysp[5];
};
STUDENT mas[n],temp;
 
void vvod();
void vyvod();
void sort();
void poisk();
 
void main()
{
vvod();
printf("\n soderzimoe zapisi do sortirovki \n");
vyvod();
sort();
printf("\n soderzimoe zapisi posle sortirovki\n");
vyvod();
poisk();
getch();
}
//---------------------------------------------------------------------------
void vvod()
 
 {
 for(int i=0;i<5;i++)
 {
    printf(" \n Enter name:   ");
        scanf("%s",&mas[i].name);
        printf(" Entern ini:   ");
        scanf("%s",&mas[i].ini);
        printf(" Entern n_gr:   ");
        scanf("%i",&mas[i].n_gr);
       printf(" Entern ysp:   ");
        scanf("%i",&mas[i].ysp);
 
        printf("\n Enter mark:\n");
 
 
 
        for(j=0;j<3;j++)
        {
                printf (" %i: ",j+1);
                scanf("%f",&mas[i].mark[j]);
        }
        
 }
}
//---------------------------------------------------------------------------
void vyvod()
 
{
 
for(int i=0;i<n;i++)
{
     printf("\n%d) Name: %s",i+1,mas[i].name);
      printf("\n  ini: %s",mas[i].ini);
     printf("\n   ysp: %s",mas[i].ysp);
     printf("\n   mark: %d.%d.%d \n",mas[i].mark[0],mas[i].mark[1],mas[i].mark[2]);
 }
 
}
//---------------------------------------------------------------------------
void sort()
 
{
    
    int i,j,m,imin;
 
 
    for(i=0;i<n;i++)
    {
        imin=i;
        for(j=i+1;j<n;j++) 
            if(mas[j].ysp[i]<mas[imin].ysp[i]) imin=j;
            temp=mas[i];
            mas[i]=mas[imin];
            mas[imin]=temp;
    }
 
    
    //for(k=0;k<n;k++)
    //{
        //kmin=k;
        //for(m=k+1;m<n;m++) 
        //    if(people[m].date[0]<people[kmin].date[0]) kmin=m;
            //tempk=people[k];
            //people[k]=people[kmin];
            //people[kmin]=tempk;
    //}
}    
//-----------------------------------------------------------------------
void poisk()
{int l=0;
    char sfound[100];
    printf("Введите имя студента для поиска:\n");
    scanf("%s",sfound);
int i,count=0;
printf ("enter name: ");
scanf("%d", &i);
 
for(int i=0;i<n;i++)
 
if(strcmp(sfound,mas[i].name==0)
{
    char bufname[100],bufini[100];
 
                    OemToCharA(mas[i].name,bufname);
                        OemToCharA(mas[i].ini,bufini);
 
printf("%s %s -  %s : %d.%d.%d. \n",mas[k].name,mas[k].ini, mas[k].ysp,mas[k].mark[0],mas[k].mark[1],mas[k].mark[2]);
count++;
}
if(!count) printf("No people");
}
Ответ Создать тему
Опции темы

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