КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Одномерные массивы
Лабораторная работа 5 Цель работы – познакомиться с одномерными массивами, приобрести навыки написания программ на языке C++ с использованием одномерных массивов. Теория Массив – это структура однотипных данных, занимающих непрерывную область памяти. Массив имеет размер – количество элементов в нем. Определение одномерного массива:
typeимя_массива [константное_выражение];
Здесь имя_массива – идентификатор; константное_выражение – количество элементов в массиве; type – произвольный тип данных языка C++, который будут иметь элементы массива, например, int, double и т.д. В некоторых случаях допустимо описание массива без указания количества его элементов, т.е. без константного выражения в квадратных скобках. Каждый элемент массива имеет свой номер (также называемый индексом), обращение к элементу массива осуществляется путем указания его индекса. В языке C++ элементы нумеруются, начиная с 0, поэтому последний элемент массива имеет номер на 1 меньше размера массива.
Пример //Здесь создаются 4 элемента массива – a[0], a[1], a[2], a[3]. float a[4];
При определении массива может выполняться его инициализация, т.е. элементы массива получают конкретные значения. Инициализация выполняется по умолчанию, если массив статический или внешний. В этих случаях всем элементам массива компилятор автоматически присваивает нулевые значения.
Пример void f (void) { static float F[4]; //Внутренний статический массив long double A[10]; //Массив автоматической памяти } void main () { extern int D[]; //Описание массива … f (); … } int D[8]; //Внешний массив (определение) Массивы D[8], F[4] инициализированы нулевыми значениями.
Явная инициализация элементов массива разрешена только при его определении и возможна двумя способами: либо с указанием размера массива в квадратных скобках, либо без явного указания (без конкретного выражения) в квадратных скобках.
Пример char СН[] = { 'А', 'В', 'С', 'D'}; //Массив из 4 элементов int IN[6] = { 10, 20, 30, 40 }; //Массив из 6 элементов char STR[] == "ABCD", //Массив и» 5 элементов
В тех случаях, когда массив не определяется, а описывается, список начальных значений задавать нельзя. В описании массива может отсутствовать и его размер.
Пример /*программа, которая создает массив типа int[], заданного размера, считывает с клавиатуры его элементы, затем прибавляет к каждому элементу массива число 1, затем выводит результат на экран*/ #include <iostream.h> int main() { const int n=20; //Размер массива int i; //Счетчик в циклах int arr[n]; //Объявление массива //Считываем массив cout<<"Введите "<<n<<" целых чисел: "; for(i=0;i<n; ++i) cin>>arr[i]; //Прибавляем по 1 к каждому элементу for(i=0;i<n;++i) arr[i]+=1; //Выводим массив на экран for(i=0;i<n;++i) cout<<arr[i]<<" "; cout<<endl; return 0; }
При написании программ часто возникает потребность в присвоении переменной случайного значения или в заполнении массива случайными числами. Для этого используется генератор случайных значений rand ()%n, который генерирует псевдослучайные числа в диапазоне от 0 до n-1. Для того чтобы генератор работал, необходимо подключить библиотеки <stdlib.h> и <stdio.h>, а до использования генератора написать функцию randomize(), которая инициализирует генератор.
Пример 1. /*программа, которая выводит на экран 10 чисел, сгенерированных случайным образом*/ #include <stdlib.h> #include <stdio.h> int main(void) { int i; randomize(); printf("Ten random numbers from 0 to 99\n\n"); for(i=0; i<10; i++) printf("%d\n", rand() % 100); return 0; }
2. /*программа, которая заполняет массив с помощью генератора случайным чисел*/ #include <stdlib.h> #include <stdio.h> int main(void) { int i; randomize(); const int n=20; int arr[n]; for(i=0;i<n; ++i) arr[i]= rand() % 100; return 0; }
Задание 1. Запустите C++Builder. 2. Составьте программу в соответствии с вашим вариантом задания (таблица), используя массивы. Размер массива задайте сами. Сделайте три варианта программы. В первом элементы массива определяются в программе, во втором задаются пользователем, а в третьем заполняются с помощью генератора случайных чисел. Исходный и конечный массивы выведите на экран. 3. Выполните компиляцию программы. При наличии ошибок внести исправления. 4. Сдайте отчет преподавателю.
Варианты
Дата добавления: 2015-08-31; Просмотров: 949; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |