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

Использование структур struct - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вычислить среднее арифметическое значение элементов, лежащих на диагоналях матрицы http://www.cyberforum.ru/cpp-beginners/thread756172.html
Вычислить среднее арифметическое значение элементов, лежащих на диагоналях матрицы B(8х8). Заменить этим значением все элементы матрицы, не лежащие на диагоналях.
C++ __asm ошибка Access violation writing location Код ниже выводит следующую ошибку "Unhandled exception at 0x004116a7 in cousach.exe: 0xC0000005: Access violation reading location 0x00000003" int counter(int num, int power ); int _tmain(int argc, _TCHAR* argv) { printf_s( "power %d\n", counter( 3, 5) ); getch(); return 0; http://www.cyberforum.ru/cpp-beginners/thread756169.html
Сканирование с младшого до старшего бита на наличие 1 C++
Привет всем. Нужна помощь. Есть задание: Задано число А. Мне нужно сделать сканирование с младшого до старшего бита на наличие 1. А тепер проблема - подскажите пжл, как определить конец числа, или подсчитать к-во битов в числе?
C++ Считывание PNG
Здравствуйте,форумчане) Пытаюсь прочитать PNG файл,вообще убейте не понимаю почему не работает.Даже длину и ширину нормально не считывает. Кусок кода file = fopen(Name, "rb"); if(file == NULL) { //MessageBox(NULL, 0, L"Ne ydalos onkrit file!", MB_OK); exit(1); };
C++ Решить уравнение http://www.cyberforum.ru/cpp-beginners/thread756137.html
ПОМОГИТЕ РЕШИТЬ СРОЧНО!!! программа должна решать уравнение e^(-x^2 )=∑_(n=0)^∞▒(〖(-1)〗^n x^2n)/n! 1-x^2+x^4/2!-x^6/3!+x^8/4!-…|x|<∞
C++ Организовать ввод целых четных значений в одномерный массив с контролем вводимых чисел Организовать ввод целых четных значений в одномерный массив с контролем чисел вводимых подробнее

Показать сообщение отдельно
samarcs
0 / 0 / 0
Регистрация: 01.08.2012
Сообщений: 82

Использование структур struct - C++

08.01.2013, 21:59. Просмотров 529. Ответов 5
Метки (Все метки)

Писал код по методичке, потом уже вконец запутался и не могу понять как сделать правильно. Подскажите хорошо растолкованную тему по структурам.
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
#include <vcl.h>
#include <tchar.h>
#include <iostream.h>
#include <math.h>
#include <string.h>
#pragma argsused
#pragma hdrstop
/*
6.Дан массив структур, в котором содержатся сведения вида:
шифр  кафедры,  кол-во студентов, кол-во отличников, кол-во не аттестованных.
Требуется подсчитать об-щее количество неаттестованных.
*/
//Тип структуры Info с информацией о студентах и шифре кафедры.
struct Info
{
    char shifr[20];
    char costud[40];
    char otstud[40];
    char nostud[40];
};
//Создание массив структур для инициализации данных
Info InitList[5] = {{100400,30,15,15},{200400,40,20,20},
                   {300400,20,10,10},{400400,30,15,15},
                   {500400,10,5,5}};
//Прототипы
void CinN (int &n);  //Ввод n - кол-ва структур
void GetListFromInit(Info* List, int n); //Значения из InitList
void GetListFromScreen(Info* List, int n);  //Ввод значений
void PuListToScreen(Info* List, int n);   //Вывод на экран
float NoAt(Info* List, int n); //Поиск кол-во неаттестованных
 
 
//Ввод n
void CinN (int &n)  //Ввод n
{
// Параметры:
// n - Количество структур
    cout<<"Enter n"<<endl;
    cin>>n;
}
 
void GetListFromInit(Info* List, int n) //присвоить значения из InitList
{
//Параметры:
// List  - указатель на массив структур - входной, значения на выход
//n - количество структур - входной
   for(int i=0;i<n;i++)
    {
     //strcpy - копировать строку в строку - обычное присваивание невозможно
     // strcpy(List[i].shifr, InitList[i].shifr);
      //strcpy(List[i].Address, InitList[i].Address);
       strcpy(List[i].shifr, InitList[i].shifr);
       strcpy(List[i].costud, InitList[i].costud);
       strcpy(List[i].otstud, InitList[i].otstud);
       strcpy(List[i].nostud, InitList[i].nostud);      //обычное присваивание
     }
}
 
void GetListFromScreen(Info* List, int n)  //ввести значения с экрана -
{
//Параметры:
// List  - указатель на массив структур - входной, значения на выход
//n - количество структур - входной
 
   for(int i=0;i<n;i++)
     {
        cout<<"Enter:"<<endl;
        cin>>List[i].shifr;
        cin>>List[i].costud;
        cin>>List[i].otstud;
        cin>>List[i].nostud;
     }
}
 
void PuListToScreen(Info* List, int n)   //печать или вывод на экран
{
//Параметры:
// List  - указатель на массив структур - входной
//n - количество структур - входной
   cout<<"Shifr"<<"    "<<"Col-vo Studentov"<<"   "<<"Otlichniki col-vo"<<"Neuspevaushie col-vo"<<endl;
   cout<<"____________________________"<<endl;
   for(int i=0;i<n;i++)
     {
        cout<<List[i].shifr<<"  ";
        cout<<List[i].costud<<"  ";
        cout<<List[i].otstud<<"  ";
        cout<<List[i].nostud<<endl;
     }
}
 
float NoAt(Info* List, int n)   //Поиск кол-во неаттестованных
{
//Параметры:
// List  - указатель на массив структур - входной
//n - количество структур - входной
//возвращает средний возраст
   float Sum = 0; //подготовка ячейки для суммирования
   for(int i=0;i<n;i++)
     Sum += List[i].nostud;
   return (float)Sum/n; // вернуть среднее
}
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    Info List[5];     // описание массива структур из 5 элементов
    GetListFromInit(List,5);   //присвоить значения из инициализированного массива
    GetListFromScreen(List,5);   //ввести значения с экрана
    PuListToScreen(List,5);   //напечатать значения элементов массива структур
    float S = NoAt(List,5);  //
    system("pause");
    return 0;
 
}
Вроде бы простейшая задачка, но вот структуры рубят((
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru