Основи програмування на С ++ для початківців

Задачі та рішення: Указатели C

Тему Указатели в C мы рассмотрели в двух статьях:

–  Частина 1: Указатели С

– Частина 2: Указатели С

Теперь вам придется много практиковаться, чтобы закрепить знания и до конца разобраться. Решим несколько задач для начала.

1.  завдання елементарна, але вимагає хорошого розуміння що таке покажчики. Дан покажчик: double **p = 0; Виконайте наступні завдання (рішення можна оформляти всередині функції main):
* створіть конструкцію, зображену на малюнку;
* виведіть число, вказане в квадратику, на екран;
* після цього видаліть всі динамічні об'єкти.

задача з рішенням, покажчики С ++

Знову ж – шукаємо найкоротший рішення. Автор:  

2. Объявите указатель на массив типа double и предложите пользователю выбрать его размер. Далее напишите четыре функции: первая должна выделить память для массива, друга– заполнить ячейки данными, третья – показать данные на экран, четвертая – освободить занимаемую память.  Програма повинна пропонувати користувачеві продовжувати роботу (создавать новые динамические массивы ) або вийти з програми.

3. Объявите указатель на массив типа int и выделите память память для 12-ти элементов. Необходимо написать функцию, которая поменяет значения четных и нечетных ячеек массива. Например есть массив из 4-х элементов:

задачи и решения указатели c++

задачи и решения указатели c++

4.  Оголосити і заповнити двовимірний динамічний масив випадковими числами від 10 до 50. Показать его на экран. Для заполнения и показа на экран написать отдельные функции. (подсказка: функции должны принимать три параметра – указатель на динамический массив, количество строк, количество столбцов).  Кількість рядків і стовпців вибирає користувач.

40 думки про "Задачі та рішення: Указатели C

  1. double* giveMemoryToArr(double* startPtr, int sizeOfArr);
    void fillArr(double* ptrArr, int sizeOfArr);
    void showArr(double* ptrArr, int sizeOfArr);
    double* freeMemory(double* ptrArr);
    Поясніть, будь ласка, ось ці рядки,чому ми саме покажчик на double беремо,чому void.

    1. покажчик повинен бути того ж типу на що він вказує/зберігається тип. просто зайво ускладнили новачкову 2 задачу. масив сам по собі є вказівником. void тому що не потрібно нічого повертати після роботи функції, це теж саме що return 0;

залишити коментар

Ваша електронна адреса не буде опублікований. Обов'язкові поля позначені * *