Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

Программалау тілдері 1: C, C++

Автор:   •  Май 14, 2023  •  Реферат  •  1,542 Слов (7 Страниц)  •  147 Просмотры

Страница 1 из 7

Топ ЕТБҚ-25

Сахиев Жамбыл

Пән Программалау тілдері 1: C, C++

Билер нөмірі. 11

1 сұрақ. Динамикалық массивтер. Қосымша жадыны алу және босату функциялары malloc(),calloc(),realloc().

1. malloc функциясы.

void * malloc(int size);

Осы void * malloc функциясы  size байт орын алады. Бұл функцияның мәні алған жердегі алғашқы адресіне тең .

2. calloc функциясы.

void* calloc( int num,  int size);

Осы функция бос жадыдан әрбірі 0-ге тең болатын size байтқа тең num орын алады. Бұл жады көлемi num*size байт-қа тең. Функцияның мәні алған жердің алғашқы адресіне тең болады.

3. realloc функциясы.

void* realloc (void* ptr,  int size);

ptr – динамикалық жадының алғашқы адресі.

size - динамикалық жадының жаңа өлшемi.

Мысал

1. Динамикалық массивтен ең үлкен элементтерін алып тастау керек.

#include <iostream>

using namespace std;

int main()

{

        srand(time(0));

        int n = 5, i, j;

        int* a = (int*)calloc(n, 4);

        // a[0] = 8; a[1] = 8; a[2] = 5; a[3] - 5; a[4] = 5

        for (i = 0; i < n; i++)

        { // a[i]= -5 + rand() % 10;

                a[i] = rand() % 10;

                cin("%d", a[i]);

        }

        cout << endl;

        int k = 0;

        for (i = 1; i < n; i++) if (a[i] > a[k]) k = i;

        cout << " max = " << a[k] << endl;

        int max = a[k], b;

        i = 0;

        while (i < n)

        {

                if (a[i] == max)

                {

                        n--;

                        b = a[n];

                        a = (int*)realloc(a, n * sizeof(int));

                        if (i != n)

                        {

                                for (j = i; j < n - 1; j++) a[j] = a[j + 1];

                                a[n - 1] = b;

                        }

                        i--;

                }

                i++;

        }

        for (i = 0; i < n; i++) cout << a[i] << " ";

        cout << endl;

        return 0;

}

2 сұрақ .С++ тіліндегі оқу және жазу ағындарының айнымалылары cin, cout .

C++ программалау тілінде cout  бізге қажетті деректерді экранға шығаруға мүмкіндік береді.Мысалы  cout << “Бізге қажетті дерек немесе айнмалы ”;

С++  программалау тілінде  тікелей қолдан яғни клавиатурадан енгізу үшін cin  айнымалы қолданы.Бұл айнымалыны қолдану cin>> бізге қажетті айнымалы;

Мысал;

#include <iostream>

#include <string>

...

Скачать:   txt (5.3 Kb)   pdf (85.4 Kb)   docx (9.2 Kb)  
Продолжить читать еще 6 страниц(ы) »
Доступно только на Essays.club