- •Мiнiстерство аграрної політики україни миколаївський державний аграрний університет методичні вказівки
- •Миколаїв –2003
- •Введение
- •1. Понятие переменной
- •2. Арифметические операции
- •3. Логические операции
- •4. Основные операторы (ключевые слова)
- •4.1 Арифметические операторы.
- •4.2 Оператор условия if.
- •4.3. Оператор цикла for.
- •4.4. Оператор безусловного перехода goto.
- •4.5. Оператор цикла while.
- •If(условие)
- •4.6. Ключевые слова break и continue.
- •5. Основные правила составления программ.
- •5.1. Подключение необходимых библиотек языка Си.
- •5.2. Ключевое слово main().
- •Void main ()
- •5.3. Описание переменных.
- •5.4. Реализация основных математических функции в языке Си.
- •6. Массивы
- •6.1. Описание массивов.
- •6.2. Конструкция #define для объявления размерности массивов.
- •Void main()
- •6.3. Инициализация массивов при объявлении.
- •7. Функция printf().
- •7.1. Вывод на экран заданного текста.
- •7.2. Вывод на экран значений переменных.
- •8. Примеры программ.
- •8.1. Печать координат вектора превышающих заданный порог.
- •8.2. Умножение двух прямоугольных матриц.
- •Void main()
- •8.3. Разложение числа на простые множители.
- •Void main()
- •8.4. Решение физической задачи.
- •Void main()
- •9. Работа с компилятором языка си
- •9.1. Подготовка к запуску компилятора.
- •9.2. Набор текста программы и его редактирование.
- •9.3. Компиляция и отладка программы.
- •9.4. Запуск программы на исполнение.
- •10. Ввод информации в программу с экрана
- •10.1. Функция scanf().
- •Int day, year;
- •10.2. Примеры программ, использующих ввод данных с экрана. Ввод вектора с экрана.
- •Void main()
- •Ввод даты с экрана.
- •Void main()
- •Доработка программы решения физической задачи из раздела 8.4.
- •Void main()
- •11. Управление работой программы с клавиатуры.
- •11.1. Предпочтительные функции для работы с клавиатурой.
- •11.2. Программа печати кода нажатой клавиши.
- •Void main()
- •12. Создание пользовательских функций.
- •12.1. Общие правила написания пользовательских функций.
- •12.2. Пример использования пользовательских функций.
- •Void main()
- •13. Представление о графических функциях языка с.
- •13.1. Подготовка графического режима.
- •Initgraph(&graphdriver, &graphmode," ");
- •13.2. Наиболее употребляемые графические функции.
- •13.3. Примеры программ использующих графический режим. Разноцветные концентрические кольца.
- •Void main()
- •Initgraph(&graphdriver,&graphmode," ");
- •Управления движением курсора.
- •Void cursor(int dh,int iocur,int jocur,int incur,int jncur);
- •Void main()
- •Initgraph(&graphdriver,&graphmode," ");
- •Void cursor(int dh, int iocur,int jocur,int incur,int jncur)
- •14. Упражнения для самостоятельной работы.
- •15. Задачи для самостоятельного составления программ
- •15.1. Не сложные задачи.
- •15.2. Задачи средней сложности.
- •15.3. Задачи повышенной сложности.
- •16. Разбиение материала на модули
- •Список литературы
5.2. Ключевое слово main().
Main в переводе с английского означает основной. В языке Си вводится понятие основной функции main(), предназначенной для объединения других стандартных и пользовательских функций в исполняемый файл. До введения понятия пользовательской функции, все наши программы будут оформлены в виде функции main следующим образом:
Void main ()
{ текст программы },
т.е. после слова main открывается и закрывается круглая скобка и далее следует текст программы, обязательно окаймленный фигурными скобками. Ключевое слово void переводится «пустой» и означает, что программа ничего не возвращает операционной системе.
5.3. Описание переменных.
Все используемые в программе переменные должны быть описаны в начале программы, т.е. определен их тип. После ключевого слова данного типа помещаются через запятую имена переменных этого типа, используемые в программе, переменные одного типа могут быть объявлены несколькими группами. Перечисление переменных одного типа всегда завершается точкой с запятой.
Пример:
int k, l, m;
int i, j;
float s, v;
unsigned char name1, name2.
5.4. Реализация основных математических функции в языке Си.
Прототипы всех математических функции находятся в библиотеке math.h
Ниже приводится соответствие основных математических функций функциям, реализованным в языке Си:
~ sqrt(x);
~ abs(x) для целых чисел (char, int, long) и fabs(x) для чисел с плавающей запятой (float, double);
~ floor(x), реализована также функция ceil(x), возвращающая минимальное целое число, превосходящее x;
~ pow(a,x);
~ exp(x);
~ sin(x);
~ cos(x);
~ tan(x);
~ asin(x);
~ acos(x);
~ atan(x);
~ log(x);
~ log10(x);
В этой же библиотеке определены некоторые математические константы, в частности числа ис точностью до 20 знаков после запятой, обозначенныеМ_PI и M_E.
Отметим, что, как и во многих других языках программирования, аргументы функции заключаются в круглые скобки, разделение нескольких аргументов производится запятой. Аргументы всех прямых тригонометрических функций задаются в радианах, соответственно, обратные тригонометрические функции возвращают значение угла также в радианах.
6. Массивы
6.1. Описание массивов.
Массивы описываются также как и обычные переменные, только после имени массива в квадратных скобках указывается длина каждой размерности массива.
Примеры:
Строка
int a[10];
описывает массив из десяти целых чисел: a[0],...,a[9].
Замечание. В языке Си нумерация элементов массивов начинается с нуля.
Строка
char abc [10][20];
описывает двумерный символьный массив (матрицу) 10 на 20, последний элемент abc[9][19]. Как и в математике, первый индекс это номер строки, второй индекс – номер столбца.
Строка
float f[5][6][7][9];
описывает четырехмерный массив чисел с плавающей запятой с общим числом элементов 5*6*7*9=1890.
6.2. Конструкция #define для объявления размерности массивов.
Поскольку длину массива приходится использовать во многих местах программы, крайне неудобно явное указание длины, приведенное в разделе 6.1, т.к. для изменения длины массива придется корректировать программу во многих местах. Для того чтобы избежать этого необходимо длину размерности массива объявить через конструкцию #define, которая помещается до ключевого слова main, как правило, после подключения библиотек. После ключевого слова #define следует пробел, затем имя константы, и через пробел присваиваемое значение. Никакие другие знаки не ставятся. Конструкция #define может использоваться для объявления любых типов констант.
Ниже приводиться пример программы обнуления заданной матрицы:
#define N 10
#define M 15