Что такое findslide.org?

FindSlide.org - это сайт презентаций, докладов, шаблонов в формате PowerPoint.


Для правообладателей

Обратная связь

Email: Нажмите что бы посмотреть 

Яндекс.Метрика

Презентация на тему Использование массивов

Содержание

Определение массиваМассив – это линейный тип данных или последовательность ячеек памяти одинакового типа. Массивы используются практически в любой программе. Массивы могут быть одномерными, двумерными и многомерными. Одномерные массивы соответствуют строке, двумерные – матрице.
Использование массивов Определение массиваМассив – это линейный тип данных или последовательность ячеек памяти одинакового Объявление массивовПри объявлении массива указывают тип его элементов и в квадратных скобках Одномерные массивыУдобно использовать при объявлении массива директиву препроцессора #define:#define SIZE 10 // Одномерные массивыДля доступа к элементу массива указывают в квадратных скобках его номер. Одномерные массивыДля работы с массивами обычно используют цикл for.  Инициализировать массив можно Одномерные массивыМожно заполнить элементы массива непосредственно в программе:int a[10];a[5] = 5;for (int i=0; i Одномерные массивыИнициализация одномерного массива пользователем запишется в виде:int a[10];for (int i=0; i ПримерыРассмотрим пример нахождения количества отрицательных элементов массива.int a[10], count=0;…for (int i=0; i ПримерыПример нахождения суммы отрицательных элементов массива.int a[10], sum=0;…for (int i=0; i ПримерыПример нахождения минимального элемента массива и его индекса.int a[10], min, mini;…min=a[0];for (int i=1; i Использование многомерных массивовПри создании двухмерного массива после его имени ставится два значения Многомерные массивы инициализируются так же, как и одномерные. В следующем примере массив Далее на примере показаны инициализация элементов двухмерного массива.int a[10][20];for (int i=0; i for (int i=0; i for (i=0; i Алгоритм сортировки пузырьком6 2 7 3 1 5 flag=0, i=0: 2 6 Сортировка методом пузырька Результат работыsrand(4); for (int i=0; i Функция srand() устанавливает исходное число для последовательности, генерируемой функцией rand(). (Функция rand() Функция rand() генерирует последовательность псевдослучайных чисел. При каждом обращении к функции возвращается Символьные строки Строковые константыСтроковая константа – это последовательность символов кода ASCII, заключённая в кавычки Каждая строковая константа, даже если она идентична другой строковой константе, сохраняется в /* Строки в качестве указателей */main( ){ printf( Массивы символьных строк и их инициализацияПри определении массива символьных строк необходимо сообщить char m1[ ]={'T','o','л','ь','k','o','','o','г'','p','a','н','и','ч','ь','т','e','c','ь',' ',o','д','н','o','й',' ','c','т','p','o','k','o','й','.','\0'} Без символа ‘\0’ мы имеем массив символов, а не строку. Для той Функции ввода-вывода строк Чтение и запись строкФункция gets() читает строку символов, введенную с клавиатуры, и Пример использованияСледующая программа читает строку в массив str и выводит ее длину: Функции для обработки строкДля выполнения описанных в этом подразделе функций необходимо подключить Пример 1:/* сцепить две строки */#include #include #include int main(void){  char char destination[25];  char blank[10], c[10], turbo[10];  printf ( Пример 2:/* cцепить две строки, причем из второй строки копировать не более int main(void){  char *buf1 =
Слайды презентации

Слайд 2 Определение массива
Массив – это линейный тип данных или

Определение массиваМассив – это линейный тип данных или последовательность ячеек памяти

последовательность ячеек памяти одинакового типа. Массивы используются практически в

любой программе. Массивы могут быть одномерными, двумерными и многомерными. Одномерные массивы соответствуют строке, двумерные – матрице.

Слайд 3 Объявление массивов
При объявлении массива указывают тип его элементов

Объявление массивовПри объявлении массива указывают тип его элементов и в квадратных

и в квадратных скобках размер массива.
Для одномерного массива объявление

запишется в виде:
int a[10];


Слайд 4 Одномерные массивы
Удобно использовать при объявлении массива директиву препроцессора

Одномерные массивыУдобно использовать при объявлении массива директиву препроцессора #define:#define SIZE 10

#define:
#define SIZE 10 // определили поименованную константу, задающую
размер

массива
void main()
{
int a[SIZE];

}


Слайд 5 Одномерные массивы
Для доступа к элементу массива указывают в

Одномерные массивыДля доступа к элементу массива указывают в квадратных скобках его

квадратных скобках его номер. При этом следует отметить, что

в языке С индексация элементов массива начинается с нуля.
То есть для инициализации первого элемента массива единицей необходимо записать оператор:
a[0]=1;

Слайд 6 Одномерные массивы
Для работы с массивами обычно используют цикл

Одномерные массивыДля работы с массивами обычно используют цикл for.  Инициализировать массив

for.
 
Инициализировать массив можно разными способами.
Если требуется можно инициализировать

элементы массива сразу после объявления:
int a[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
 

Слайд 7 Одномерные массивы
Можно заполнить элементы массива непосредственно в программе:
int

Одномерные массивыМожно заполнить элементы массива непосредственно в программе:int a[10];a[5] = 5;for (int i=0; i

a[10];
a[5] = 5;
for (int i=0; i

примере сначала шестому элементу массива присваивается значения пять, затем все элементы массива обнуляются.


Слайд 8 Одномерные массивы
Инициализация одномерного массива пользователем запишется в виде:
int

Одномерные массивыИнициализация одномерного массива пользователем запишется в виде:int a[10];for (int i=0; i

a[10];
for (int i=0; i

&a[i]);
}
В этом примере сначала элементам массива присваиваются значения введенные пользователем.

Слайд 9 Примеры
Рассмотрим пример нахождения количества отрицательных элементов массива.
int a[10],

ПримерыРассмотрим пример нахождения количества отрицательных элементов массива.int a[10], count=0;…for (int i=0; i

count=0;

for (int i=0; i


Слайд 10 Примеры
Пример нахождения суммы отрицательных элементов массива.
int a[10], sum=0;

for

ПримерыПример нахождения суммы отрицательных элементов массива.int a[10], sum=0;…for (int i=0; i

(int i=0; i


Слайд 11 Примеры
Пример нахождения минимального элемента массива и его индекса.
int

ПримерыПример нахождения минимального элемента массива и его индекса.int a[10], min, mini;…min=a[0];for (int i=1; i

a[10], min, mini;

min=a[0];
for (int i=1; i


Слайд 12 Использование многомерных массивов
При создании двухмерного массива после его

Использование многомерных массивовПри создании двухмерного массива после его имени ставится два

имени ставится два значения – количество строк и столбцов:
int

a[10][12];

Слайд 13 Многомерные массивы инициализируются так же, как и одномерные.

Многомерные массивы инициализируются так же, как и одномерные. В следующем примере

В следующем примере массив sqrs инициализируется числами от 1

до 10 и их квадратами:
int sqrs[10][2] = {
1, 1,
2, 4,
3, 9,
4, 16,
5, 25,
6, 36,
7, 49,
8, 64,
9, 81,
10, 100
};


Слайд 14 Далее на примере показаны инициализация элементов двухмерного массива.
int

Далее на примере показаны инициализация элементов двухмерного массива.int a[10][20];for (int i=0; i

a[10][20];
for (int i=0; i

j++)
a[i][j] = 0;

Слайд 15 for (int i=0; i

for (int i=0; i

j

1;

Слайд 16 for (i=0; i

for (i=0; i

j++)
printf(“%i”, a[i][j])
printf(“\n”);  
}


Слайд 17 Алгоритм сортировки пузырьком
6 2 7 3 1 5

Алгоритм сортировки пузырьком6 2 7 3 1 5 flag=0, i=0: 2


flag=0, i=0: 2 6 7 3 1 5,

flag=0

flag=0, i=1: 2 6 7 3 1 5

flag=0, i=2: 2 6 3 7 1 5, flag=1

flag=1, i=3: 2 6 3 1 7 5, flag=1

flag=1, i=4: 2 6 3 1 5 7, flag=1

flag=0, i=0: 2 6 3 1 5 7

flag=1

flag=1

flag=0, i=1: 2 3 6 1 5 7, flag=1

flag=1, i=2: 2 3 1 6 5 7, flag=1

flag=1, i=3: 2 3 1 5 6 7, flag=1

flag=1, i=4: 2 3 1 5 6 7, flag=1

flag=1

flag=0, i=0: 2 3 1 5 6 7, flag=0

flag=0, i=1: 2 1 3 5 6 7, flag=1


Слайд 18 Сортировка методом пузырька

Сортировка методом пузырька

Слайд 19 Результат работы
srand(4); for (int i=0; i

Результат работыsrand(4); for (int i=0; i

a[i] = rand()*10;
srand(4); for (int i=0;

i<10; i++) a[i] = rand()*10;

Слайд 20 Функция srand() устанавливает исходное число для последовательности, генерируемой

Функция srand() устанавливает исходное число для последовательности, генерируемой функцией rand(). (Функция

функцией rand(). (Функция rand() возвращает псевдослучайные числа.)
Часто функция

srand() используется, чтобы при различных запусках программа могла использовать различные последовательности псевдослучайных чисел, — для этого она должна задавать различные исходные числа. Кроме того, с помощью функции srand() можно многократно генерировать одну и ту же последовательность псевдослучайных чисел, — для этого нужно задавать в качестве исходного числа одно и то же значение. Иными словами, чтобы многократно генерировать одну и ту же последовательность псевдослучайных чисел, нужно вызывать данную функцию с одним и тем же значением параметра seed до начала генерации этой последовательности.


Слайд 21 Функция rand() генерирует последовательность псевдослучайных чисел.
При каждом

Функция rand() генерирует последовательность псевдослучайных чисел. При каждом обращении к функции

обращении к функции возвращается целое в интервале между нулем

и значением RAND_MAX, которое в любой реализации должно быть не меньше числа 32 767.

Слайд 22 Символьные строки

Символьные строки

Слайд 23 Строковые константы
Строковая константа – это последовательность символов кода

Строковые константыСтроковая константа – это последовательность символов кода ASCII, заключённая в

ASCII, заключённая в кавычки "..." и имеющая тип char.
Примеры:
char

str="This is character string"
char str1="Это строковая константа"
char str2="A"
char str3="1234567890"
char str4="0"
char str5="$"
В конце каждой строки компилятор помещает нулевой байт '\0', отмечающий конец данной строки


Слайд 24 Каждая строковая константа, даже если она идентична другой

Каждая строковая константа, даже если она идентична другой строковой константе, сохраняется

строковой константе, сохраняется в отдельном месте памяти
Если необходимо ввести

в строку символ кавычек ("), то перед ним надо поставить символ (\)
В строку могут быть введены любые специальные символьные константы, перед которыми стоит символ \. При этом символ \ и следующий за ним символ новой строки игнорируется
Строковые константы размещаются в статической памяти. Вся фраза в кавычках является указателем на место в памяти, где записана строка. Это аналогично использованию имени массива, служащего указателем на расположение массива.


Слайд 25 /* Строки в качестве указателей */
main( )
{
printf("%s,

/* Строки в качестве указателей */main( ){ printf(

%u, %c\n", "We", "love“,*"Pascal");


}
В примере, формат %s выводит строку We.
Формат %u выводит целое без знака. Если слово "love" является указателем, то выдается его значение, являющееся адресом первого символа строки.
Наконец, *"Pascal" должно выдать значение, на которое ссылается адрес, т.е. первый символ строки "Pascal".
Вот что выдаст программа:
We, 34, P

Слайд 26 Массивы символьных строк и их инициализация
При определении массива

Массивы символьных строк и их инициализацияПри определении массива символьных строк необходимо

символьных строк необходимо сообщить компилятору требуемый размер памяти
Первый способ

- инициализация массива при помощи строковой константы
Например:
char m1[]="Только ограничьтесь одной строкой.";
Здесь оператор инициализировал внешний по умолчанию массив m1 для указанной строки

Слайд 27 char m1[ ]={
'T','o','л','ь','k','o','
','o','г'','p','a','н','и','ч','ь','т','e','c','ь','
',o','д','н','o','й','
','c','т','p','o','k','o','й','.','\0'
}

char m1[ ]={'T','o','л','ь','k','o','','o','г'','p','a','н','и','ч','ь','т','e','c','ь',' ',o','д','н','o','й',' ','c','т','p','o','k','o','й','.','\0'}

Слайд 28 Без символа ‘\0’ мы имеем массив символов, а

Без символа ‘\0’ мы имеем массив символов, а не строку. Для

не строку. Для той и другой формы компилятор подсчитывает

символы и таким образом получает размер памяти.
Как и для других массивов, имя m1 является указателем на первый элемент массива:
m1==&m1[0]
*m1=='T', и
*(m1+1)==m1[1]=='o’

* - оператор разыменования
& - оператор взятия адреса

Слайд 29 Функции ввода-вывода строк

Функции ввода-вывода строк

Слайд 30 Чтение и запись строк
Функция gets() читает строку символов,

Чтение и запись строкФункция gets() читает строку символов, введенную с клавиатуры,

введенную с клавиатуры, и записывает ее в память по

адресу, на который указывает ее аргумент
char *gets(char *cmp);
Здесь cmp - это указатель на массив символов, в который записываются символы, вводимые пользователем, gets() также возвращает cmp.
Функция puts() отображает на экране свой строковый аргумент, после чего курсор переходит на новую строку. Вот прототип этой функции:
int puts(const char *cmp);


Слайд 31 Пример использования
Следующая программа читает строку в массив str

Пример использованияСледующая программа читает строку в массив str и выводит ее

и выводит ее длину:
#include
#include
int

main(void) {
char str[80];
gets(str);
printf("Длина в символах равна %d", strlen(str));
puts(str);
return 0;
}

Слайд 32 Функции для обработки строк
Для выполнения описанных в этом

Функции для обработки строкДля выполнения описанных в этом подразделе функций необходимо

подразделе функций необходимо подключить файл string.h командой
#include


Слайд 34 Пример 1:
/* сцепить две строки */
#include
#include
#include

Пример 1:/* сцепить две строки */#include #include #include int main(void){


int main(void)
{
char destination[25];
char *blank

= " ", *c = "C++", *turbo = "Turbo";
strcpy(destination, turbo);
strcat(destination, blank);
strcat(destination, c);
printf("%s\n", destination);
getch();
return 0;
}


Слайд 35 char destination[25];
char blank[10], c[10], turbo[10];

char destination[25]; char blank[10], c[10], turbo[10]; printf (

printf ("введите строку");
gets(blank);
gets(c);

gets(turbo);
strcpy(destination, turbo);
strcat(destination, blank);
strcat(destination, c);
puts(destination);
getch();
return 0;
}

Слайд 36 Пример 2:
/* cцепить две строки, причем из второй

Пример 2:/* cцепить две строки, причем из второй строки копировать не

строки копировать не более n символов*/
#include
#include
#include
int

main(void)
{
char destination[25];
char *source = "structured ";
strcpy(destination, "programming");
strncat(destination, source, 11);
printf("%s\n", destination);
getch();
return 0;
}

  • Имя файла: ispolzovanie-massivov.pptx
  • Количество просмотров: 129
  • Количество скачиваний: 0