Этапы разработки программы. Разработка или выбор алгоритма решения поставленной задачи. Оформление документации на программу, страница 6

Спецификации размера:

h - аргумент трактуется как короткое целое.

l - аргумент трактуется как длинное целое.

L - аргумент трактуется как longint.

6.2.2 Форматный ввод в С.

Форматный ввод в Си осуществляется  с помощью функции scanf из стандартного входного потока stdin, связанного с клавиатурой. Объявление этой функции находится в заголовочном файле stdio.h.

Синтаксис протатипа:

int scanf (<форматная строка>[,<аргументы>]);

Форматная строка содержит спецификацию формата, по одной для каждого вводимого аргумента. Аргумент должен быть указателем на переменную того типа, который указан в соответствующей спецификации.

Формат спецификации:

%[<ширина>][h/l/L]<символ типа>

Самая простая спецификация: % <символ типа>

Форматная строка анализируется с начала, когда встречена спецификация формата, из входного потока считывается очередное значение и помещается по адресу, представленному первым аргументом и т.д. Если за спецификацией указаны символы, не являющиеся полем формата, эти символы ожидаются на входе. Входное поле считывается из потока до первого пробельного символа или может быть прочитано меньше символов, если указано поле <ширина> или, если текущий символ не может быть преобразован согласно данной спецификации формата.

Пример:    х=10000

scanf (“%d”,&x);    Будет считано число  10000

Если scanf (“%3d”, &x);  Будут считаны только 3 символа (число 100), т.к. указана ширина 3.

& - операция адресации – унарная операция, вырабатывающая адрес своего операнда, если она не указана результат не определен.

Пример:

1) scanf(“%dabc%f”,&x,&y);

Не является полем спецификации.

12  abc  12   ,    иначе не определено.

               

x           y  б) scanf(“%d/%d/%d”,&d,&v,&g);

23/9/1999

Замечание: Если форматная строка (и у scanf, и у printf) содержит меньше спецификаций, чем указано аргументов, лишние аргументы игнорируются. Если спецификаций больше, чем аргументов, результат будет неопределенным.

§9. Понятие выражения. Операции  языков С и PASCAL

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

Операции языка программирования  можно классифицировать по числу операндов на унарные, бинарные и в языке С еще существуют тернарные операции. Язык C более богат операциями, чем язык PASCAL, но во многих реализациях языка PASCAL, например TURBO  PASCAL добавлены многие операции, существующие изначально в языке C.

Охарактеризуем основные операции языков C и PASCAL:

9.1. Унарные операции

Синтаксис записи: <унарная операция><операнд>

C                PASCAL         

“ – “                 “ – “            Унарный минус.

“ + “                 “ + “            Унарный плюс.

“ ! “                   not             Логическое отрицание.

&                       @              Берется адрес операнда.

*                         ^               Осуществляет доступ к значению, хранящемуся в указателе.

В языке C помимо указанных существуют и другие унарные операции (sizeof – размер памяти в байтах объекта или типа.  sizeof(<объект>);

sizeof(<имя типа>);

sizeof(int) = 2 )

9.2. Бинарные операции

Бинарные операции - это операции, имеющие два операнда.

<операнд1><бинарная операция><операнд2>

Рассмотрим следующие группы операций:

1) Арифметические.