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

Создайте структуру Array (Найти ошибку) - C++

Восстановить пароль Регистрация
 
Андрей445232
0 / 0 / 0
Регистрация: 21.12.2012
Сообщений: 8
21.12.2012, 22:03     Создайте структуру Array (Найти ошибку) #1
Задание :
Создайте структуру Array с двумя полями: указатель на массив целых чисел и размер массива. В структуре хранится только указатель на массив, сами данные хранятся в динамической области памяти, выделенной оператором new. Напишите функции:
1. CreateArray, которая принимает 1 параметр (размер массива), выделяет память под массив и возвращает переменную типа Array.
2. FillArray, которая принимает в качестве параметра переменную типа Array и заполняет массив квадратами натуральных чисел, начиная с 0.
3. CoutArray, которая принимает в качестве параметра переменную типа Array и выводит массив на консоль через пробел.
4. KillArray, которая принимает в качестве параметра переменную типа и освобождает память из-под массива.
Напишите в функции main код, который продемонстрирует работу структуры Array и функций CreateArray, KillArray, FillArray и CoutArray на примере массива из 10 элементов
программа:
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
#include <iostream>
using namespace std;
struct Array
{int a[];
};
int CreateArray()
{int size;
int *p=new int[size];
return 0;
}
int FillArray(int size)
{for(int *q=a,i=0;i<size;i++)
cout<<i*i;
}
int CoutArray()
{cout<<" ";
}
int KillArray()
{
delete []a;
}
int main()
{CreateArray();
FillArray(10);
CoutArray();
KillArray();
return 0;
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Wolkodav
 Аватар для Wolkodav
599 / 452 / 32
Регистрация: 18.09.2012
Сообщений: 1,685
21.12.2012, 22:29     Создайте структуру Array (Найти ошибку) #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
struct Array
{
int len;
int* a;
};
Array CreateArray(int size)
{Array p;
p.a=new int[size];
p.len=size;
return p;
}
void FillArray(Array& a)
{
for(int i=0;i<a.len;i++)
a.a[i]=i*i;
}
 
void CoutArray(Array a)
{
for (int i=0;i<a.len;i++)
{
cout<<a.a[i]<<" ";
}
 
void KillArray(Array a)
{
if (a.len!=0)
delete []a.a;
}
Добавлено через 1 минуту
Как-то так логичнее будет)
Андрей445232
0 / 0 / 0
Регистрация: 21.12.2012
Сообщений: 8
21.12.2012, 23:01  [ТС]     Создайте структуру Array (Найти ошибку) #3
спасибо но можешь еще main написать
Wolkodav
 Аватар для Wolkodav
599 / 452 / 32
Регистрация: 18.09.2012
Сообщений: 1,685
21.12.2012, 23:44     Создайте структуру Array (Найти ошибку) #4
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
void main()
{
const int N=10;
Array A[N];
for (int i=0;i<N;i++)
{
int size;
cout<<"Кол-во элементов: ";
cin>>size;
A[i]=CreateArray(size);
for (int j=0;j<size)
{
cout<<"Введите элемент массива:";
cin>>A[i][j];
}
}
for (int i=0;i<N;i++)
{
CoutArray(A[i]);
}
for (int i=0;i<N;i++)
{
KillArray(A[i]);
}
 
return;
}
Добавлено через 16 секунд
Как-то так.
Yandex
Объявления
21.12.2012, 23:44     Создайте структуру Array (Найти ошибку)
Ответ Создать тему
Опции темы

Текущее время: 09:53. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru