Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Инфа- ответы на теор.вопросы.docx
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
760.25 Кб
Скачать

Int a[10], b[20]; // 2 массива на 10 и 20 целых чисел

float C[12]; // массив из 12 вещественных чисел

При объявлении массива можно сразу заполнить его начальными значениями, перечисляя их внутри фигурных скобок:

int A[4] = { 2, 3, 12, 76 };

Если в списке в фигурных скобках записано меньше чисел, чем элементов в массиве, то

оставшиеся элементы заполняются нулями. Если чисел больше, чем надо, транслятор сообщает

об ошибке. Например,

int A[4] = { 2 }; // последние три элементы равны 0

Для повышения универсальности программы размер массива лучше определять через константу. В этом случае для переделки программы для массива другого размера надо только поменять

значение этой константы:

const int N = 20; // константа

main()

{

Int a[n]; // размер массива задан через константу

...}

Массивы в процедурах и функциях

Массивы, так же как и простые переменные, можно передавать в процедуры и функции в

качестве параметров. Рассмотрим, например, функцию, вычисляющую сумму элементов массива. Желательно сделать ее так, чтобы в нее можно было передавать массивы любого размера, и она всегда правильно вычисляла результат. Для этого функция должна знать (или определить)размер массива. В языке Си функции не могут самостоятельно определять размер массива, поэтому он должен быть обязательно одним из параметров.

Int Sum ( int a[], int n ) // a[] – параметр-массив

{ // N – размер массива

int i, sum;

sum = 0;

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

sum += A[i];

return sum;

}

В заголовке функции размер массива указан отдельно, нельзя объявлять массив-параметр как A[N], а только как A[]. С другой стороны такая запись возможна только в заголовках функций, поскольку при этом не надо выделять новую память под массив. Объявлять локальный или глобальный массив, не указав явно его размер, нельзя. Для вызова приведенной функции в параметрах надо указать название массива (без скобок) и его размер.

main()

{

Int a[20], b[30], s;// здесь надо ввести массивы a и b

s = Sum(A,20); // вычисляем сумму элементов массива A

printf("Сумма массива A %d, массива B %d", s,

Sum(B,30) ); // вычисляем сумму B прямо при выводе

  1. Выражения

Программа оперирует с данными. Числа можно складывать, вычитать, умножать, делить. Из разных величин можно составлять выражения, результат вычисления которых – новая величина. Приведем примеры выражений:

X * 12 + Y // значение X умножить на 12 и к результату прибавить значение Y

val < 3 // сравнить значение val с 3

-9 // константное выражение -9

Выражение, после которого стоит точка с запятой – это оператор-выражение. Его смысл состоит в том, что компьютер должен выполнить все действия, записанные в данном выражении, иначе говоря, вычислить выражение.

x + y – 12; // сложить значения x и y и затем вычесть 12

a = b + 1; // прибавить единицу к значению b и запомнить результат в переменной a

Выражения – это переменные, функции и константы, называемые операндами, объединенные знаками операций. Операции могут быть унарными – с одним операндом, например, минус; могут быть бинарные – с двумя операндами, например сложение илиделение. В Си++ есть даже одна операция с тремя операндами – условное выражение. Чуть позже мы приведем список всех операций языка Си++ для встроенных типов данных. Подробно каждая операция будет разбираться при описании соответствующего типа данных. Кроме того, ряд операций будет рассмотрен в разделе, посвященном определению операторов для классов. Пока что мы ограничимся лишь общим описанием способов записи выражений.

В типизированном языке, которым является Си++, у переменных и констант есть определенный тип. Есть он и у результата выражения. Например, операции сложения (+), умножения (*), вычитания (-) и деления (/), примененные к целым числам, выполняются по общепринятым математическим правилам и дают в результате целое значение. Те же операции можно применить к вещественным числам и получить вещественное значение.

Операции сравнения: больше (>), меньше (<), равно (==), не равно (!=) сравнивают значения чисел и выдают логическое значение: истина (true) или ложь (false).