Реферат: Массивы
B.I.Березн,С.Б.Березн(С.83) МАСИВИ ПОКАЖЧИКИ Ранше ми ввели типи даних в мов С, як називаються нод банзовими або вбудованими. На основ цих типв даних мова С дозволя будувати нш типи даних структури даних. Масив - один з найнбльш простих вдомих структур даних. Пд масивом в мов С розунмють набр даних одного того ж типу, збраних пд одним м'ям. Кожний елемент масиву визначаться м'ям масиву порядковим номенром елемента, який називаться ндексом. ндекс в мов С завжди цле число. ОГОЛОШЕННЯ МАСИВУ В ПРОГРАМ Основна форма оголошення масиву розмрност N така: тип <м'я масиву>[размер1][размер2]...[размерН] Частше за все використовуються одновимрн масиви: тип <м'я масиву> [розмр] ; тип - базовий тип елементв масиву, розмр - кльксть елементв одновимрного масиву. При опис двовимрного масиву оголошення ма наступний вигляд: тип <м'я масиву> [размер][размер2]; У цьому опис можна трактувати оголошення двовимрного масиву як оголошення масиву масивв, т. е. масив розмру [размер2], еленментами якого одновимрн масиви <м'я масиву>[размер1]. Розмр масиву в мов С може задаватися константою або констаннтним виразом. Не можна задати масив змнного розмру. Для цього сну окремий механзм, званий динамчним видленням пам'ят. ОДНОВИМРН МАСИВИ У мов С ндекс завжди починаться з нуля. Коли ми говоримо про перший елемент масиву, то мамо на уваз елемент з ндексом 0. Есл ми оголосили масив int a[100] ; це означа, що масив мстить 100 елементв вд а[0] до а[99]. Для одновимрного масиву легко пдрахувати, скльки байт в пам'ят бунде займати цей масив: кльк.байтв=<розмр базового типу>*<кльк.елементв>. У мов С пд масив завжди видляться безперервне мсце в опенративнй пам'ят. У мов С не перевряться вихд ндексу за меж масиву. Якщо масив а[100] описаний як цлочисельний масив, що ма 100 елеменнтв, а ви в програм вкажете а[200], то повдомлення про помилку не буде видане, а як значення елемента а[200] буде видано деяке число, що займа вдповдн 2 байти. Можна визначити масив будь-якого визначеного ранше типу, наприклад unsigned arr[40], long double al[1000], char ch[80].
/*помняти мсцями max з min*/ #include <iostream.h> main() { int i,j,a[10], max. nmax, min, nmin, temp; clrscr(); for (i=0; i<10; i++) сп a[i]; max=min=a[0]; nmax=nmin=0; for (i=0; i<10; i++) if(a[i]>max) { max=a[i]; nmax=i;} else if(a[i]<min) {min=a[i], nmin=i;} tern p= a[n m ax]; a[n max]=a[nm n]; a[nm n]=temp; for (i=0; i<10; i++) cout л a[i] л" "; } | // Сортування програвання масиву #include<iostream.h> #include<dos. h> #'\ nclude<conio. h> void main() { int temp, , j, a[ 1 0]; clrscr(); for (i=0;i<10;i++) сп a [ ]; for (i=0;i<9;i++) for (j=i+1 ;j<10;j++) if (a[i]>a[j]) { temp=a[i]; a[i]=a[j]; a[j]=temp; } for (i=0;i<1 0;i++) { cout л a[i]л" "; sound(a[i]*80); delay(500); nosou nd(); } getch(); } |