Массивы. Реализация в библиотеке С++

Содержание

Слайд 2

Синтаксис: [число элементов]; Например: int array_int[100]; //одномерный массив 100 целочисленных элементов

Синтаксис:

<тип данных> <имя массива>[число элементов];

Например:
int array_int[100]; //одномерный массив 100 целочисленных элементов 
double

array_d[25]; //одномерный массив 25 вещественных элементов
Слайд 3

Пример программы: Запись в массив значений линейной функции f(x)=kx+b double k=0.5,

Пример программы:

Запись в массив значений линейной функции f(x)=kx+b
double k=0.5, b

= 10.0;  double f[100];  for(int x=0;i < 100;i++)  {  f[i] = k*x+b;  printf(“%.2f ”,f[i]);  }
Слайд 4

Инициализация массива в момент его объявления Пример 2(инициализация массива в момент

Инициализация массива в момент его объявления

Пример 2(инициализация массива в момент его

объявления):
int powers[4] = {1, 2, 4, 6};

Пример 3 (программа приведет к ошибке при компиляции):
int N=100;  float array_f[N]; //ошибка, так нельзя

Слайд 5

При объявлении массивов используют подход: #include #define N 100 int main()

При объявлении массивов используют подход:
#include  #define N 100  int main()  {  float array_f[N];  return 0;  }

Слайд 6

Пример, когда число элементов при инициализации будет меньше размерности массива: #define

Пример, когда число элементов при инициализации будет меньше размерности массива:
#define SIZE

4  int data[SIZE]={512, 1024};  for(int i = 0;i < SIZE;i++)  printf(“%d, \n”,data[i]);

Результатом работы программы будет:
512, 1024, 0, 0

Слайд 7

Когда наперед неизвестно число элементов, целесообразно использовать такую конструкцию языка С++:

Когда наперед неизвестно число элементов, целесообразно использовать такую конструкцию языка С++:

int

data[] = {2, 16, 32, 64, 128, 256};
Слайд 8

Объявление двумерных массивов: int array2D[100][20]; //двумерный массив 100х20 элементов array2D[0][0] array2D[0][1] и т.д.

Объявление двумерных массивов:

int array2D[100][20]; //двумерный массив 100х20 элементов
array2D[0][0]
array2D[0][1]
и т.д.

Слайд 9

Для начальной инициализации двумерного массива long array2D[3][2] = {{1, 2}, {3,

Для начальной инициализации двумерного массива

long array2D[3][2] = {{1, 2}, {3, 4},

{5, 6}};
или
long array2D[][] = {{1, 2}, {3, 4}, {5, 6}};
Слайд 10

3.2. Работа со строками Пример 1 (использование строк в программе) char

3.2. Работа со строками

Пример 1 (использование строк в программе)

char str_1[100] =

{‘П’,’р’,’и’,’в’,’е’,’т’,’\0’};  char str_2[100] = “Привет”;  char str_3[] = “Привет”;  printf(“%s\n%s\n%s\n”,str_1,str_2,str_3);
Слайд 11

Пример 2: особенность использования специального символа ‘\0’ char str1[10] = {‘Л’,’е’,’к’,’ц’,’и’,’я’,’\0’};

Пример 2: особенность использования специального символа ‘\0’

char str1[10] = {‘Л’,’е’,’к’,’ц’,’и’,’я’,’\0’};  char

str2[10] = {‘Л’,’е’,’к’,’ц’, ’\0’,’и’,’я’ };  char str3[10] = {‘Л’,’е’, ’\0’,’к’,’ц’,’и’,’я’ };  printf(“%s\n%s\n%s\n”,str1,str2,str3);
Результат работы программы:
Лекция  Лекц  Ле
Слайд 12

Пример 3. Программа вычисления длины строки. #include int main(void) { char

Пример 3. Программа вычисления длины строки. 

#include  int main(void)  {  char str[] = “Привет мир!”;  int

size_array = sizeof(str);  int length = 0;  while(length < size_array && str[length] != ‘\0’) length++;  printf(“Длина строки = %d.\n”,length);  return 0;  }
Слайд 13

Функция вычисления размера строк уже реализована в стандартной библиотеке языка С++

Функция вычисления размера строк уже реализована в стандартной библиотеке языка С++

string.h со следующим синтаксисом:
int strlen(char* str);
где char* str – указатель на строку
Слайд 14

Правило использования функции strlen() Пример 4. Пример использования функции strlen(). #include

Правило использования функции strlen()

Пример 4. Пример использования функции strlen().  #include  #include  int main(void) {  char

str[] = “Привет мир!”;  int length = strlen(str);  printf(“Длина строки = %d.\n”,length);  return 0;  }
Результатом работы программы будет вывод на экран числа 11.
Слайд 15

Правила присваивания одной строковой переменной другой Допустим объявлены две строки char

Правила присваивания одной строковой переменной другой

Допустим объявлены две строки
char str1[] =

“Это первая строка”;  char str2[] = “Это вторая строка”;
Необходимо выполнить оператор присваивания str1 = str2;
Слайд 16

Необходимо перебирать по порядку элементы одного массива и присваивать их другому

Необходимо перебирать по порядку элементы одного массива и присваивать их другому

массиву

Пример 5.
char str1[] = “Это первая строка”;  char str2[] = “Это вторая строка”;  int size_array = sizeof(str1);  int i=0;  while(i < size_array && str1[i] != ‘\0’) {  str2[i] = str1[i];  i++;  }  str2[i] = ‘\0’;