Мова С++ Вказівники. Масиви (приклади)
Масиви <тип> <ім’я>[<к-ть елементів>]; одновимірний масив: int Arr[20]; двовимірний масив: int Mass[10]; Елементи масиву: перший Arr[0] десятий Arr[9] Розміщення елементів масива в пам’яті Ініціювання масивів значеннями int Temp[7]={2, 4, 7, 11, 12, 11, 13}; // ініційований повністю int Temp[7]={2, 4, 7}; // ініційований частково int Temp[]={2, 4, 7, 11, 12, 11, 13}; // кількість елементів визначається компілятором
Розміщення двовимірного масива в пам’яті
Доступ до елементів масива через вказівник сhar Array[]={‘w’, ’o’, ’r’, ’l’, ’d’}; сhar *p. Array=Array; сhar Lett; Lett=*p. Array; p. Array+=3; Lett=*(Array+4); Lett=Array[0]; Lett=Array[4];
Сортування одновимірного масиву #include #include #include using namespace std; int main() { int mas[10]; int*ptr_m; int fl, rez; ptr_m=mas; srand(time(0)); for (int i=0; i<10; i++) mas[i]=rand()%100 -30; printf("n"); for (int i=0; i<10; i++)printf("%dt", mas[i]); do { fl=0; ptr_m=mas; while(ptr_m<=mas+8){if (*ptr_m<*(ptr_m+1)) {fl=1; rez=*ptr_m; *ptr_m=*(ptr_m+1); *(ptr_m+1)=rez; } ptr_m++; }} while(fl!=0); printf("n posortovanyj n"); ptr_m=mas; while(ptr_m<=mas+9){printf("%dt", *ptr_m); ptr_m++; } system("PAUSE"); return EXIT_SUCCESS; }
Копіювання з двовимірного масиву в одновимірний масив k=0; for(i=1; i<4; i++) for(j=0; j<(i-1); j++) {b[k]=a[i][j]; k++; } for(i=0; i<4; i++) b[i]=a[i][i]; for(i=0; i<4; i++) b[i]=a[i][3 -i];