- •Дисциплина:
- •История создания языка C
- •Характеристика языка C
- •Элементы языка C
- •Элементы языка C
- •Элементы языка C
- •Элементы языка C
- •Элементы языка C
- •Простейшая программа на языке
- •Препроцессор
- •Программа с разветвлениями
- •Способы записи условных выражений
- •Примеры записи условных
- •Простейшая программа с разветвлением
- •Простейшая программа с разветвлением (2)
- •Простейшая программа с разветвлением (для целочисленных переменных)
- •Использование составного оператора в if
- •Вложенные инструкции if
- •Пример логической ошибки в программе
- •Множественные разветвления
- •Пример задачи с множественными разветвлениями
- •Циклы в C
- •Цикл while
- •Цикл do while
- •Цикл for
- •Задача о табулировании функции
- •Инструкция continue
- •Вычисления по рекуррентным формулам
- •Вычисления по рекуррентным формулам (2)
- •Вложенные циклы
- •Инструкция goto
- •Итог: управляющие инструкции языка C
Дисциплина:
ПРОГРАММИРОВАНИЕ
Тема:
Основы программирования на языке C
Направление «Информатика и вычислительная техника»
Курс 1 Семестр 1
Лектор: Петрова О.Б.
История создания языка C
Деннис Ритчи, 1973 год
Цель создания: получить язык высокого уровня для разработки операционной системы (Unix)
Стандарты языка:
С89 (ANSI C — 1989, ISO C - 1990)
С99 (ISO/IEC 9899:1999)
C2011 (ISO/IEC 9899:2011)
Первые описания языка С — Брайан Керниган
Характеристика языка C
Не связан с конкретной архитектурой ЭВМ
Может быть использован для разработки ПО в разных операционных системах
Компактный язык
Гибкий язык
Обеспечивает разнообразие типов данных
Имеет черты языка низкого уровня — доступ к адресам объектов, адресная арифметика, операции над битовыми величинами
По затратам ресурсов и времени программы на С мало отличаются от программ на Ассемблере
В языке отсутствуют встроенные средства ввода/вывода, средства для работы со стоками, сложными данными (массивы, структуры)
Элементы языка C
Алфавит
a..z, A..Z
0..9
ESC-последовательности (управляющие последовательности) \a \b \n \t \ddd \xhh \\ \' \''
разделители ; : [ ] { } ( ) , . / \ ' '' ? ! = - + * & % ~ # _ < > |
пробельные символы
Элементы языка C
Константы
целые (с фиксированной точкой)
десятичные 234 восьмеричные 0234 шестнадцатеричные 0x234
вещественные (с плавающей точкой)
32.53.25е+1 -4.6е-14
символьные
'd' '9' '\n' '&'
строковые литералы
''Это строка'' ''Это\nтоже\tстрока''
Элементы языка C
Комментарии
в языке С
/* это многострочный комментарий */
в языке С++
//комментарий действует до конца строки
Элементы языка C
Ключевые слова
auto |
default |
extern |
int |
signed |
typedef |
break |
do |
float |
long |
sizeof |
union |
case |
double |
for |
register |
static |
unsigned |
char |
else |
goto |
return |
struct |
void |
continue enum |
if |
short |
switch |
while |
Элементы языка C
Операторы математические + - * / ++ – %
отношения != == > < >= <= присваивания = += -= *= /= %=
int a, b = 2;
a = 5; |
|
a++; |
// a = a + 1; |
b += a; |
// b = b + a; |
Этапы подготовки исполняемого кода (С и С++)
ввод текста программы
обработка текста препроцессором
компиляция программы (*.obj, *.o)
компоновка (редактирование связей) (*.exe)
отладка
Ключевые слова:
edit compile link debug run build
Интегрированные среды для разработки программ на С и С++
Code::Blocks 10.5
Netbeans (Sun-Oracle)
Visual Studio 2010 (Microsoft)
C++ Builder (Borland, Embarcadero)
Qt Creator (Nokia)