- •М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. Разбиение материала на модули
- •Список литературы
Void main()
{ float Tm,Tv,Tm0,S,V,dt,tmax,t;
/* Ввод в программу значений входных данных простейшим способом – оператором присвоения: */
Tv = -5; // температура окружающего воздуха в градусах Цельсия
Tm0 = 36; // начальная температура молока в градусах Цельсия
S = 1.2; // площадь поверхности бидона в м квадратных
V = 0.05; // объем бидона в м кубических
tmax = 8; // интервал расчета в часах
dt = 0.5; // шаг расчета в часах
// Печать заголовка таблицы:
printf(“Время (часы) Температура молока в град. Цельсия \n”);
for(t=0;t <= tmax;t+=dt)
{ Tm=Tv+(Tm0-Tv)*exp(-k*S*t/V);
printf(“ %.1f %.2f\n”,t,Tm);
}
}
В этой программе использована еще одна конструкция языка Си – комментарий.
Определение: Комментарий – это пояснительный текст, вставленный в программу и не анализируемый компилятором.
Есть два способа превращения текста в комментарий. Весь текст, заключенный в скобки /*…*/ и текст, следующий за знаками // до конца строки, является комментарием. Так же выделяют временно не используемый код программы.
9. Работа с компилятором языка си
Ниже приводится описание интерфейса компилятора Borland С++ 1.0.
9.1. Подготовка к запуску компилятора.
Прежде всего, необходимо в рабочую директорию скопировать следующие конфигурационные файлы компилятора:
tcdef.dpr
tcdef.dsk
tcconfig.tc
В ЛКС МДАУ они находятся в L:\COMPILE\TCPP\. Затем необходимо создать bat-файл для запуска компилятора, имя файла, например, tc.bat (расширение bat обязательно!). Файл должен содержать следующие команды запуска dos-русификатора и собственно компилятора языка Си:
L:\UTIL\KEYRUS\keyrus.com
L:\COMPILE\TCPP\tc.exe
9.2. Набор текста программы и его редактирование.
В рассматриваемом компиляторе реализован многооконный текстовый редактор со стандартным основным меню и постоянной строкой подсказки. Вид окна приведен на рис. 9.1.
Рис. 9.1. Вид окна компилятора Borland С++ 1.0.
Вход в пункты основного меню мышкой, клавишей F10 или Alt – выделенная буква меню.
Создание нового файла осуществляется через пункт меню File=>New. По умолчанию файлу присваивается имя noname00.c, рекомендуется зразу же его сохранить c нужным именем (расширение имени файла .с должно остаться!). Сохранение файла File=>Save, либо F2. В редакторе реализованы стандартные возможности по выделению фрагмента текста:
Ctrl-Insert– копирование в буфер,
Shift-Insert – вставка из буфера,
Ctrl-K-V – перенос,
Ctrl-K-H – снятие выделения.
Некоторые часто используемые команды работы с окнами:
Alt-F3– закрытие окна,
F6– переключение между окнами,
F5– распахивание/сворачивание окна.
Напомним, что в операционных системах семейства Windows Alt-Enter – переход в текстовый/графический режим, Alt-Tab – переключение между окнами. Завершение работы компилятора - File=>Quit или Alt-X.
9.3. Компиляция и отладка программы.
После завершения ввода текста программы, можно ее отправить на компиляцию командами Compile=>Compile to obj или Compile=>Make exe file или нажатием клавиши F9. При этом, прежде всего, будет проведена проверка текста на наличие синтаксических ошибок, т.е. таких ошибок которые не позволяют перевести текст программы в машинные коды. Пример завершения компиляции программы с выявлением ошибок приведен на рис. 9.2.
Рис. 9.2. Вид окна компилятора в случае обнаружения
ошибок в тексте программы.
После выполнения рекомендации «Press any key» появляется окно с расшифровкой найденных ошибок, как показано на рис.9.3.
Рис. 9.3. Вид окна компилятора со списком обнаруженных ошибок.
Можно выделить заданную ошибку и нажатием Enter увидеть примерное место расположения ошибки в тексте, как показано на рис. 9.4.
Рис. 9.4. Вид окна компилятора с указанием положения конкретной ошибки.
После исправления первой ошибки, рекомендуется повторить компиляцию, поскольку остальные ошибки могут быть следствием первой, как это и случилось в программе, введенной в компилятор в качестве примера. Ключевое слово int было написано с заглавной буквы, трактовано как имя переменной, соответственно, перечисленные переменные оказались не описанными. Вид окна после устранения ошибки и новой компиляции показан на рис. 9.5. Заметим, что программа-пример распечатывает таблицу кодов ASCII.
Рис. 9.4. Вид окна компилятора после устранения всех ошибок.
Слово «success» переводится с английского как «успех». Заметим, что кроме ошибок, компилятор указывает также на места в тексте, которые могут привести к некорректной работе программы, называя такие сообщения «Warnings» - «Предупреждения». Настоятельно рекомендуется такие места в программе тоже исправлять.
При успешной компиляции, в текущей директории (если в установках не указана другая директория) создаются файлы ascii.obj и ascii.exe (основная часть имени этих файлов совпадает с именем компилируемого файла). Первый из них содержит машинный код компилируемой программы, второй является исполняемым файлом со всеми необходимыми атрибутами.