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

Презентация: Использование массивов
Включить эффекты
1 из 38
Ваша оценка презентации
Оцените презентацию по шкале от 1 до 5 баллов
  • 1
  • 2
  • 3
  • 4
  • 5
0.0
0 оценок

Комментарии

Нет комментариев для данной презентации

Помогите другим пользователям — будьте первым, кто поделится своим мнением об этой презентации.


Добавить свой комментарий

Аннотация к презентации

Посмотреть и скачать бесплатно презентацию по теме "Использование массивов", состоящую из 38 слайдов. Размер файла 0.33 Мб. Каталог презентаций, школьных уроков, студентов, а также для детей и их родителей.

  • Формат
    pptx (powerpoint)
  • Количество слайдов
    38
  • Слова
    другое
  • Конспект
    Отсутствует

Содержание

  • Презентация: Использование массивов
    Слайд 1

    Использование массивов

  • Слайд 2

    Определение массива

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

  • Слайд 3

    Объявление массивов

    При объявлении массива указывают тип его элементов и в квадратных скобках размер массива. Для одномерного массива объявление запишется в виде: int a[10];

  • Слайд 4

    Одномерные массивы

    Удобно использовать при объявлении массива директиву препроцессора #define: #defineSIZE 10 // определили поименованную константу, задающую размер массива void main() { int a[SIZE]; … }

  • Слайд 5

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

  • Слайд 6

    Для работы с массивами обычно используют цикл for.   Инициализировать массив можно разными способами. Если требуется можно инициализировать элементы массива сразу после объявления: int a[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};  

  • Слайд 7

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

  • Слайд 8

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

  • Слайд 9

    Примеры

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

  • Слайд 10

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

  • Слайд 11

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

  • Слайд 12

    Использование многомерных массивов

    При создании двухмерного массива после его имени ставится два значения – количество строк и столбцов: inta[10][12];

  • Слайд 13

    Многомерные массивы инициализируются так же, как и одномерные. В следующем примере массив sqrs инициализируется числами от 1 до 10 и их квадратами: intsqrs[10][2] = { 1, 1, 2, 4, 3, 9, 4, 16, 5, 25, 6, 36, 7, 49, 8, 64, 9, 81, 10, 100 };

  • Слайд 14

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

  • Слайд 15

    for (int i=0; i

  • Слайд 16

    for (i=0; i

  • Слайд 17

    Алгоритм сортировки пузырьком

    6 2 7 3 1 5 flag=0, i=0: 2 6 7 3 1 5, flag=0 flag=0, i=1: 2 67 3 1 5 flag=0, i=2: 26 3 7 1 5, flag=1 flag=1, i=3: 26 3 1 7 5, flag=1 flag=1, i=4: 26 31 5 7, flag=1 flag=0, i=0: 2 6 31 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 31 56 7, flag=1 flag=1, i=4: 2 31 5 6 7, flag=1 flag=1 flag=0, i=0: 2 3 1 5 6 7, flag=0 flag=0, i=1: 2 13 5 6 7, flag=1

  • Слайд 18

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

  • Слайд 19

    Результат работы

    srand(4);for (int i=0; i

  • Слайд 20

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

  • Слайд 21

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

  • Слайд 22

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

  • Слайд 23

    Строковые константы

    Строковая константа – это последовательность символов кода 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, %u, %c\n", "We", "love“,*"Pascal"); } В примере, формат %s выводит строку We. Формат %u выводит целое без знака. Если слово "love" является указателем, то выдается его значение, являющееся адресом первого символа строки. Наконец, *"Pascal" должно выдать значение, на которое ссылается адрес, т.е. первый символ строки "Pascal". Вот что выдаст программа: We, 34, P

  • Слайд 26

    Массивы символьных строк и их инициализация

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

  • Слайд 27

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

  • Слайд 28

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

  • Слайд 29

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

  • Слайд 30

    Чтение и запись строк

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

  • Слайд 31

    Пример использования

    Следующая программа читает строку в массив strи выводит ее длину: #include #include int main(void) { char str[80]; gets(str); printf("Длина в символах равна %d", strlen(str)); puts(str); return 0; }

  • Слайд 32

    Функции для обработки строк

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

  • Слайд 33
  • Слайд 34

    Пример 1:

    /* сцепить две строки */ #include #include #include 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]; printf ("введите строку"); gets(blank); gets(c); gets(turbo); strcpy(destination, turbo); strcat(destination, blank); strcat(destination, c); puts(destination); getch(); return 0; }

  • Слайд 36

    Пример 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; }

  • Слайд 37

    int main(void) { char *buf1 = "aaabbb", *buf2 = "bbbccc", *buf3 = "ccc"; intptr; clrscr(); ptr =; if (strncmp(buf2,buf1,3)> 0) printf("buffer 2 is greater than buffer 1\n"); else printf("buffer 2 is less than buffer 1\n");   ptr = strncmp(buf2,buf3,3); if (ptr > 0) printf("buffer 2 is greater than buffer 3\n"); else printf("buffer 2 is less than buffer 3\n"); getch(); return(0); }

  • Слайд 38

    #include #include #include int main(void) { char string[20]; char *ptr, c = 'r'; strcpy(string, "This is a string"); ptr = strchr(string, c); if (ptr) printf("The character %c is at position: %d\n", c, ptr); else printf("The character was not found\n"); getch(); return 0; }

Посмотреть все слайды

Сообщить об ошибке