Понятие о массиве в С++
Описание массива - после имени переменной ставят квадратные скобки, в которых задается количество элементов массива (размерность):
• Элементы массива нумеруются с нуля;
• При описании массива используются те же модификаторы (класс памяти, const и инициализатор), что и для простых переменных;
• Инициализирующие значения для массивов записываются в фигурных скобках;
• Значения элементам присваиваются по порядку;
• Если элементов в массиве больше, чем инициализаторов, элементы, для которых значения не указаны, обнуляются.
• Если не указана размерность, должен присутствовать инициализатор (компилятор выделит память по числу инициализирующих значений).
Пример.
Пример. Сортировка целочисленного массива методом выбора.
Алгоритм: выбираем наименьший элемент и меняем местами с первым элементом, затем просматриваем элементы, начиная со второго, и наименьший из них меняем местами со вторым элементом, и так далее n-1 раз (при последнем проходе цикла при необходимости меняются местами предпоследний и последний элементы массива).
float а [10]; // массив из 10 вещественных чиселПравила:
• Элементы массива нумеруются с нуля;
• При описании массива используются те же модификаторы (класс памяти, const и инициализатор), что и для простых переменных;
• Инициализирующие значения для массивов записываются в фигурных скобках;
• Значения элементам присваиваются по порядку;
• Если элементов в массиве больше, чем инициализаторов, элементы, для которых значения не указаны, обнуляются.
• Если не указана размерность, должен присутствовать инициализатор (компилятор выделит память по числу инициализирующих значений).
Пример.
int b[5] = {3, 2, 1}; //b[0]=3, b[l]=2, b[2]=1, b[3]=0, b[4]=0Пример. Найти сумму элементов массива.
#includeint main(){ const int n = 10; int i , sum; int marks[n] = {3, 4, 5, 4, 4}; for (i = 0, sum = 0; i < n; i++) sum += marks[1]; cout << "Сумма элементов: " << sum; return 0; }
Алгоритм: выбираем наименьший элемент и меняем местами с первым элементом, затем просматриваем элементы, начиная со второго, и наименьший из них меняем местами со вторым элементом, и так далее n-1 раз (при последнем проходе цикла при необходимости меняются местами предпоследний и последний элементы массива).
#includeint main(){ const int n = 20; // количество элементов массива int b[n]; // описание массива int i; for (i = 0; i < n; i++) cin >> b[i]; // ввод массива for (i = 0; i < n - l ; i++){ // n-1 раз ищем наименьший элемент int imin = 1; // принимаем за наименьший первый из элементов for (int j = i + 1; j < n; j++) // поиск номера min элемента неупорядоченных if (b[j] < b[imin]) imin = j; // если нашли меньший элемент, запоминаем номер int a = b[1]; // обмен элементов b[i] = b[imin]; // с номерами b[imin] = a; // i и imin } for (i = 0; i < n: i++)cout << b[i] << ' '; // вывод упорядоченного массива return 0; }