Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Комплексное пособие Си.pdf
Скачиваний:
57
Добавлен:
12.03.2015
Размер:
1.57 Mб
Скачать

Пример

В примере обрабатываются элементы одномерного массива. В функции main() элементам массива присваиваются значения их индекса. Промежуточная функция p2() вызывает функцию p1() или p3(), переданную как параметр. Функция p1() выводит элементы массива по порядку, функция p3() – в обратном порядке.

#include <stdio.h> #define N 3

void p1(int *m,int k)

{int i; for(i=0;i<k;printf("%d",m[i++]));

puts("\n");

}

void p3(int *m,int k) { int i;

for(i=k-1;i>=0;printf("%d",m[i--])); puts("\n");

}

void p2(void p(int *,int), int *mm,int nn)

{

p(mm,nn);

}

void main()

{

int mas[N],i; for(i=0;i<N;mas[i++]=i);

p2(p1,mas,N);

p2(p3,mas,N);

}

Контрольные вопросы

1.Использование указателей в качестве параметров.

2.Что такое указатель массива.

3.Как определить адрес заданного элемента одномерного массива.

4.Как определить адрес заданного элемента двумерного массива.

5.Как определить адрес заданного элемента многомерного массива.

6.Как расположены элементы одномерного массива в памяти.

124

7.Как расположены элементы двумерного массива в памяти.

8.Как расположены элементы многомерного массива в памяти.

9.Привести пример выполнения арифметической операции с указателем.

125