Рекомендую разобраться ВАМ в этом вопросе, я сам до конца не вник.
- На лекциях были небольшие расхождения со статьями в интернете
На Pascal блоков нет! На Алголе они были. ```
В стандарте С99 есть комплексный тип! В Pascal нет! ```
Противоречивые вопросы лучше просто не упоминать при ответе на вопрос, чтобы не выглядеть глупо!
``` О дополнительном источнике
(и необязательно здесь!)
Это экзаменационный материал!
```Программа может состоять из одной или нескольких связанных между собой функций, главная из которых называется main — именно с неё начинается выполнение программы. Поэтому наличие функции с таким именем обязательно в программе.
1) Ключевые слова программы записываются только строчными буквами, так как СИ, в отличие Pascal, различает регистр букв. 2) Литеры и строки отображаются в кавычках (“…”), а не в апострофах, как в Pascal (‘…’). 3) Комментарии начинаются с /* и заканчиваются */ 4) Команда return 0, которая завершает выполнение функции с возвратом значения 0, определяемого стандартом (для функции main), как код успешного завершения. 5) Точка в конце программы, в отличие от Pascal, не ставится 6) В отличие от Pascal, в СИ нет логических переменных 7) Примеры описания переменных:
ink k;
char a, b, c;
double x;
8) Примеры описания констант:
int: 17;
float: 1.25;
char: "a";
9) Стандартная библиотека ввода-вывода языка СИ подключается с помощью директивы препроцессора include
Символьную последовательность, вводимую с клавиатуры и воспринимаемую функцией scanf () принято называть ***входным потоком***.
Scanf () разделяет этот поток на отдельные вводимые величины, интерпретирует их в соответствие с указанным типом и форматом и присваивает переменным, содержащимся в списке аргументов.
***Список аргументов*** - перечень вводимых переменных, перед каждой из которых ставится &.
Это знак операции "взятия адреса из переменной".
11) Форматный вывод на экран производится функцией printf ().
12) Список аргументов может отсутствовать или же состоять из выражений, значения которых выводятся на экран.
13) Управляющие символы влияют на расположение на экране выводимых знаков. Признаком управляющего символа является \
\n — перевод строки
\t — горизонтальная табуляция
\r — возврат курсора к началу новой строки
\a — сигнал-звонок
\b — возврат на один символ (на одну позицию)
\f — перевод (прогон) страницы
\v — вертикальная табуляция
14) Спецификатор формата определяет форму внешнего представления выводимой величины.
%c — символ
%s — строка
%d — целое десятичное число (тип int)
%u — целое десятичное число без доп знака (тип unsigned)
%f — вещ. числа с фиксированной точкой
%e — вещ. числа с плавающей точкой
Соответствие между спецификатором формата и элементами списка аргументов устанавливается в порядке их записи слева направо.
Переключатель варианта в СИ существенно отличается от Pascal. Например, в СИ нельзя в одном варианте выбора предлагать через запятую несколько констант. Зато у него есть вариант по умолчанию.
#include <stdio.h>
int main () {
int n;
printf("Введите номер дня недели\n");
scanf("%d, &n");
switch(n) {
case 1: printf ("Понедельник\n"); break;
case 2: printf ("Вторник\n"); break;
case 3: printf ("Среда\n"); break;
case 4: printf ("Четверг\n"); break;
case 5: printf ("Пятница\n"); break;
case 6: printf ("Суббота. Выходной!\n"); break;
case 7: printf ("Воскресенье. Выходной!\n"); break;
default: printf ("Вы заработались :)))\n");
}
getchar();
return 0;
}
Switch
— переключатель, железнодорожная стрелка.Case
— случай, обстоятельство.Break
— прервать.Default
— отсутствие, исключение, по умолчанию.© В Pascal данная структура была бы реализована элегантнее.
Язык СИ не так дуракоустойчив, как Pascal.
Но СИ позволяет тоньше использовать возможности компьютера, что ранее могли только языки программирования низкого уровня — ассемблеры.