История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Топ:
Эволюция кровеносной системы позвоночных животных: Биологическая эволюция – необратимый процесс исторического развития живой природы...
Определение места расположения распределительного центра: Фирма реализует продукцию на рынках сбыта и имеет постоянных поставщиков в разных регионах. Увеличение объема продаж...
Проблема типологии научных революций: Глобальные научные революции и типы научной рациональности...
Интересное:
Искусственное повышение поверхности территории: Варианты искусственного повышения поверхности территории необходимо выбирать на основе анализа следующих характеристик защищаемой территории...
Лечение прогрессирующих форм рака: Одним из наиболее важных достижений экспериментальной химиотерапии опухолей, начатой в 60-х и реализованной в 70-х годах, является...
Как мы говорим и как мы слушаем: общение можно сравнить с огромным зонтиком, под которым скрыто все...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
1. Инициализация массива
Инициализация массива – это присваивание элементам массива начальных значений.
Присваивание всем элементам массива одного и того же значения осуществляется в цикле. Например, чтобы всем элементам массива a присвоить значение 0, можно воспользоватся алгоритмом изображенный на рис.
for(i=0;i<n;i++)
a[i]=0;
// или с помощью цикла while
i=0;
while (i<n)
{
a[i]=0;
i=i+1;
}
В представленном алгоритме все элементы массива в цикле последовательно инициализируются значением – 0.
2. Перестановка элементов массива.
Пример: Поменять местами заданный элемент массива x[k] с последующим.
При решении этой задачи необходимо учитывать, что если заданный элемент массива x[k] является последним, то обмен выполнить не возможно, поскольку последующий элемент отсутствует.

if(k == n-1)
puts("Обмен не возможен.");
else
{
tmp=x[k];
x[k]=x[k+1];
x[k+1]=tmp;
}
При перестановке с предыдущим элементом, обмен невозможен если заданный элемент является первым (k=0).
3. Вычислительные действия.
Например: вычисление суммы элементов массива.
#include <stdio.h>
#include <conio.h>
int main()
{
int arr[5] = {1, 2, 3, 4, 5};
int sum = 0;
for (i = 0; i < 5; ++i)
{
sum += arr[i];
}
printf("%d", sum);
getch();
return 0;
}
4. Поиск нужного элемента
При поиске элементов, обладающих заданным свойством, необязательно просматривать все элементы массива. Например, требуется определить, есть ли в массиве хотя бы один нулевой элемент. Для ответа на этот вопрос, достаточно в цикле просматривать элементы массива до тех пор, пока не закончится массив или не встретится равный нулю элемент. Если, например, уже третий элемент равен нулю, то остальные элементы просматривать нет необходимости.
В таких случаях для просмотра массива обычно используется оператор цикла while со сложным условием. Графическая схема для рассматриваемого примера изображена на рисунке. После цикла достаточно проверить, чему равно i. Если окажется, что i=n, т.е. были просмотрены все элементы, то в массиве нет нулевых элементов.
i=0;
while(i<n && a[i]!=0) i=i+1;
If(i == n)
puts("В массиве нет нулевых элементов");
else
puts("В массиве есть нулевой элемент");
5. Копирование массивов

k=0;
for(i=in;i<ik;i++)
{
y[k]=a[i];
k++;
}
В зависимости от параметров in и ik, в массив y[ ] копируются элементы из исходного массива a[ ]. Так для копирования всех элементов массива a[ ] необходимо задать in=0, ik=n (n – количество элементов массива a[ ]). При копировании части массива, например с 3 по 9, принимаем in=2 (поскольку нумерация элементов массива в С++, начинается с нуля) и ik=9.
Сортировка элементов одномерного массива
Сортировка – это расстановка элементов некоторого списка в заданном порядке.
Метод пузырька
Сначала сравниваем последний элемент с предпоследним. Если они стоят неправильно, то
меняем их местами. Далее так же рассматриваем следующую пару элементов и т.д. Когда мы обработали пару (A[0], A[1]), минимальный элемент стоит на месте A[0]. Это значит, что на следующих этапах его можно не рассматривать.
Сделав N-1 проходов, мы установим на место элементы с A[0] по A[N-2]. Это значит, что последний элемент, A[N-1], уже тоже стоит на своем месте (другого у него нет).
#include <stdio.h>
const int N = 10;
main()
{
int i, j, A[N], c;
// здесь надо ввести массив A
for (i = 0; i < N-1; i ++) // достаточно поставить N-1 элементов
for (j = N-2; j >= i; j - -) // идем с конца массива в начало
if (A[j] > A[j+1]) // если они стоят неправильно,...
{
c = A[j]; A[j] = A[j+1]; // переставить A[j] и A[j+1]
A[j+1] = c;
}
printf("\n Отсортированный массив:\n");
for (i = 0; i < N; i ++)
printf("%d ", A[i]);
}
|
|
|
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...
Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!