I. Объяснить результаты выполнения команд.
1). #define X 80
#define Y (X+10)
. . . . . . . . . . . . . .
t=Y*20; t=(X+10)*20=(80+10)*20=1800 /*т.к. X=80, Y=(X+10)*/
h=X+Y; h=X+Y=80+(X+10)=80+(80+10)=170 /*т.к. X=80, Y=(X+10)*/
2). #define X 80
#define Y X+10
. . . . . . . . . . . . . .
t=Y*20; t=X+10*20=80+10*20=280 /*т.к. X=80, Y=X+10*/
h=X+Y; h=X+Y=80+X+10=80+80+10=170 /*т.к. X=80, Y=X+10*/
3). #define MULT(a,b) ((a)*(b))
. . . . . . . . . . . . . .
c=MULT(5,6); c=((5)*(6))=30; /*т.к. a=5, b=6*/
p=MULT(2+4,7+3)*5; p=((2+4)*(7+3))*5=300; /*т.к. a=(2+4), b=(7+3)*/
4). #define MULT(a,b) (a*b)
. . . . . . . . . . . . . .
c=MULT(5,6); c=5*6=30; /*т.к. a=5, b=6*/
p=MULT(2+4,7+3)*5; p=(2+4*7+3)*5=165; /*т.к. a=2+4, b=7+3*/
5). #define MULT(a,b) a*b
. . . . . . . . . . . . . .
c=MULT(5,6); c=5*6=30; //т.к. a=5, b=6
p=MULT(2+4,7+3)*5; p=2+4*7+3*5=45; //т.к. a=2+4, b=7+3
//и нет общих скобок
6). #include "defs.h" //т.к. спецификация в двойных кавычках не образует полного //пути, то поиск файла производится в рабочем каталоге, а //если там не найден, то в каталогах. определенных в качестве //каталогов по умолчанию для системны программирования и //стандартных каталогах.
7). #include <defs.h> //Поиск файла производится в каталогах определённых в //качестве каталогов по умолчанию для системы //программирования и стандартных каталогах. В рабочем //каталоге поиск не производится.
II. Сформировать строку для подключения следующего файла:
1). #include <stdio.h> //Включение файла stdio.h, находящегося в стандартном //каталоге.
2). #include "examle.h" //Включение файла examle.h, находящегося в текущем //каталоге.
3). #include <alloc.h> //Включение файла alloc.h, находящегося в стандартном //каталоге.
4). #include "mydir.h" //Включение файла mydir.h, находящегося в текущем каталоге.
5). #include <my.h> //Включение файла my.h, находящегося в стандартном //каталоге.
6). #include "complex.h" //Включение файла complex.h, находящегося в текущем //каталоге.
7). #include <ctype.h> //Включение файла ctype.h, находящегося в стандартном //каталоге.
III. Определить, какое значение получит константа STACK.
#if Dlevel >5 /*Если идентификатор Dlevel > 5*/
# Define signal 1 /*то заменить все вхождения идентификатора Signal на 1*/
# if stackuse ==1 /*Если идентификатор логически сравним с 1*/
# define stack 200 /* то заменить все вхождения идентификатора STACR на 200*/
# else /*иначе*/
#define stack 100 /* заменить все вхождения идентификатора STACR на 100*/
# endif /*закрываем #if STACKUSE */
# else /*иначе*/
#define signal 0 /* заменить все вхождения идентификатора Signal на 0*/
# if stackuse ==1 /*Если идентификатор логически сравним с 1*/
# define stack 100 /* то заменить все вхождения идентификатора STACR на 100*/
# else /*иначе*/
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.