- •М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. Разбиение материала на модули
- •Список литературы
3. Логические операции
==- сравнение на равенство,
!=- сравнение на неравенство,
>- больше,
>= - больше или равно,
< - меньше,
<=- меньше или равно,
&&- логическое "и",
|| - логическое "или", (& - знак амперсанда).
Примеры логических выражений:
~ x <= 5, ~ x >= -3 && x <= 5,
~ x != 5, ~ x <= -12 || x >= 7.
4. Основные операторы (ключевые слова)
4.1 Арифметические операторы.
Определение. Арифметическим оператором является операция присвоения переменной заданного арифметического выражения.
Замечание. В языке Си в конце оператора всегда ставится точка с запятой (;) .
Примеры:
d=(b*b-4*a*c)/(2*a); x1=(-b+d)%2; a+=b; a-=b; a*=b; a/=b; i++; i--;.
Операторы:i++; i--; a+=b; a-=b; a*=b; a/=b; —краткаяформадляоператоров:i=i+1, i=i-1; a=a+b; a=a-b; a=a*b; a=a/b;.
4.2 Оператор условия if.
Синтаксис оператора:
if (логическое выражение) оператор 1 else оператор 2 ,
либо краткая форма:
if (логическое выражение) оператор 1.
Здесь if и else ключевые слова, в переводе с английского "если" и "иначе". Если логическое выражение, помещенное после ключевого слова if в круглых скобках, является истиной, то выполняется оператор 1, иначе выполняется оператор 2, или, при использовании краткой формы, управление передается оператору, следующему за оператором if.
Примеры:
if(a > 0) a++; else a=b;
if(b*b-4*a*c < 0) prizn=1;
4.3. Оператор цикла for.
Синтаксис оператора:
for(оператор 1; условие; оператор 2)
оператор 3 (тело цикла);
В переводе с английского for означает "для". Оператор работает следующим образом:
Вначале выполняется оператор 1, затем проверяется условие и, если оно верно, то выполняется оператор 3, затем выполняется оператор 2 и затем снова проверяется условие, затем снова оператор 3, за ним оператор 2, и так повторяется циклически до тех пор, пока условие не будет выполнено.
В качеcтве примера рассмотрим по шагам следующий оператор цикла, реализующий вычисление факториала от данного числа:
n=4; nf=1;
for(i=2; i <= n; i++)
nf*=i;
1-ыйшаг:i=2, 2 <= 4-верно,nf=1*2=2, i=2+1=3;
2-ой шаг: 3 <= 4 - верно, nf=2*3=6, i=3+1=4;
3-ий шаг: 4 <= 4 - верно, nf=6*4=24, i=4+1=5;
4-ый шаг: 5 <= 4 - не верно, конец цикла.
Итак, в конце выполнения этого оператора цикла мы имеем:
nf=n!(факториал), i=n+1.
4.4. Оператор безусловного перехода goto.
Синтаксис оператора:
Метка:
goto Метка;
Меткой является любая последовательность символов, удовлетворяющая требованиям, которые предъявляются к имени переменной, после которой поставлено двоеточие (:), в имени метки рекомендуется использовать заглавные буквы. Метку нельзя использовать в качестве переменной! В переводе с английского go to означает "иди к", в языке Си пишется слитно.
Программа встретив оператор goto, передает управление на строку, вначале которой стоит указанная метка, метка может стоять, как после оператора goto, так и до него.
Ниже приводится пример реализации с помощью оператора goto фрагмента программы вычисления факториала, приведенного в разделе 4.3.
n=4; nf=1;
i=2;
M: if(i < n)
{ nf*=i;
i++;
goto M;
}
Замечание. В этой маленькой программе использовано одно из важных соглашений языка Си, которое необходимо активно усвоить. В соответствии с синтаксисом операторов if и for, после ключевого слова выполняется всего лишь один оператор, и не был дан ответ как поступать, если нужно выполнить несколько операторов. Оказывается, если группу операторов заключить в фигурные скобки, то эта группа становится одним (сложным) оператором, иногда используется термин «блок операторов» Количество объединяемых операторов никак не ограничивается.
В качестве упражнения распишите по тактам выполнение приведенного фрагмента.