Программирование на С.

ПРОГРАММИРОВАНИЕ НА С

Аннотация

Язык программирования C — широко используемый язык программирования общего назначения, который и сегодня остается одним из самых популярных языков программирования, особенно для системного программирования и разработки встроенных систем. Он использует простой синтаксис с минималистичным набором ключевых слов, что делает его относительно простым в изучении и чтении.
Программы на языке C состоят из функций, содержащих операторы, а операторы состоят из выражений. Программы на языке C обычно имеют функцию main(), которая служит точкой входа в программу.
Язык C поставляется со стандартной библиотекой, известной как Стандартная библиотека C, которая предоставляет набор функций для общих операций, таких как ввод/вывод, манипуляции со строками, математические вычисления, распределение памяти и многое другое.
Если вы собираетесь изучать программирование микроконтроллеров, то вам надо сначала изучить язык С, так как программирование микроконтроллеров построено на использовании этого языка.

Оглавление

ВВЕДЕНИЕ _ 5
ГЛАВА 1. ПЕРВАЯ ПРОГРАММА НА ЯЗЫКЕ С _ 7
1.1. Установка Code::Blocks на компьютер _ 7
1.2. Создание программы _ 13
1.3. Построчный анализ программы _ 16
Упражнения для самостоятельной работы _ 20
ГЛАВА 2. ПЕРЕМЕННЫЕ И КОНСТАНТЫ _ 22
2.1. Переменные _ 22
       2.1.1. Объявление переменных _ 22
       2.1.2. Типы переменных _ 22
2.2. Константы _ 23
       2.2.1. Целочисленные константы _ 23
       2.2.2. Литералы _ 24
       2.2.3. Именованные константы _ 25
2.3. Ввод/вывод данных _ 27
       2.3.1. Ввод/вывод символов, функции getchar(), putchar() _ 27
       2.3.2. Функция вывода printf() _ 32
       2.3.3. Функция ввода scanf() _ 40
Упражнения для самостоятельной работы _ 42
ГЛАВА 3. ОПЕРАТОРЫ И ОПЕРАНДЫ _ 45
3.1. Арифметические операторы _ 45
3.2. Операторы сравнения и логические операторы _ 48
3.3. Операторы присваивания _ 49
3.4. Побитовые операторы _ 50
3.5. Преобразования типов _ 51
Упражнения для самостоятельной работы _ 52
ГЛАВА 4. ФУНКЦИИ _ 54
4.1. Математические функции _ 54
4.2. Пользовательские функции _ 55
Упражнения для самостоятельной работы _ 60
ГЛАВА 5. УСЛОВНЫЕ ОПЕРАТОРЫ И ЦИКЛЫ _ 65
5.1. Условные операторы _ 65
5.2. Операторы цикла _ 67
       5.2.1. Цикл for _ 67
       5.2.2. Цикл while _ 69
5.3. Оператор switch _ 71
5.4. Отладка программ _ 75
Упражнения для самостоятельной работы _ 82
ГЛАВА 6. МАССИВЫ _ 86
6.1. Объявление массивов. Одномерные массивы _ 86
6.2. Многомерные массивы _ 89
6.3. Массивы и функции _ 92
6.4. Символьные массивы (строки) _ 94
       6.4.1. Объявление строки _ 94
       6.4.2. Ввод строки _ 95
       6.4.3. Вывод строки _ 97
       6.4.4. Библиотека строк _ 100
       6.4.5. Преобразование строки в число _ 106
Упражнения для самостоятельной работы _ 107
ГЛАВА 7. УКАЗАТЕЛИ _ 109
7.1. Объявление указателей _ 109
7.2. Операции с указателями _ 112
7.3. Указатели и функции _ 115
Упражнения для самостоятельной работы_ 118
ГЛАВА 8. СТРУКТУРЫ _ 119
8.1. Объявление структуры _ 119
8.2. Работа со структурами _ 121
8.3. Массив структур _ 124
Упражнения для самостоятельной работы _ 126
ГЛАВА 9. РАБОТА С ФАЙЛАМИ _ 128
9.1. Открытие и закрытие файла _ 128
9.2. Запись (вывод) в файл _ 129
9.3. Чтение (ввод) из файла _ 131
Упражнения для самостоятельной работы _ 135
ГЛАВА 10. ПРИКЛАДНЫЕ ВОПРОСЫ _ 138
10.1. Совместное использование С и Excel для построения графиков _ 138
       10.1.1. Комбинированный метод “C&Excel” построения графиков _ 138
       10.1.2. Расчёт и построение графика колебаний пружинного
маятника с демпфированием _ 142
10.2. Пример программирования микроконтроллера на С _ 145
Упражнения для самостоятельной работы _ 146
11. РЕШЕНИЯ И ОТВЕТЫ _ 150
11.1. Решения к главе 2 _ 150
11.2. Решения к главе 3 _ 157
11.3. Решения к главе 4 _ 162
11.4. Решения к главе 5 _ 170
11.5. Решения к главе 6 _ 180
11.6. Решения к главе 7 _ 188
11.7. Решения к главе 8_ 192
11.8. Решения к главе 9_ 196
11.9. Решения к главе 10 _ 203
ЛИТЕРАТУРА _ 210 

Введение

В учебном пособии “Программирование на C” изложены базовые основы языка C, которые позволят быстро стартовать в программировании. Язык C (Си)– это классический язык программирования общего назначения. Он используется при разработке операционных систем, прикладных программ, приложений для встраиваемых систем, таких как холодильники, микроволновые печи, стиральные машины, системы кондиционирования и др. Ещё одна важная область применения языка С – это использование для программирования микроконтроллеров. Если вы планируете заниматься программированием микроконтроллеров, то вам необходимо изучать язык С.  По мнению некоторых экспертов язык C вообще должен быть первым языком при изучении программирования. Язык был создан в 1972 году, но до сих пор остаётся весьма популярным и входит в пятёрку самых востребованных языков.

Read more …

Глава 1. Первая программа на языке С


1.1. Установка Code::Blocks на компьютер

Опишем процесс скачивания и установки Code::Blocks для 64-битной ОС Windows. Переходим на сайт https://www.codeblocks.org/downloads/ Выбираем раздел “Загрузите двоичную версию”. На следующей странице выбираем Windows XP / Vista / 7 / 8.x / 10. На новой странице выбираем верхнюю строку: codeblocks-20.03-setup.exe скачать с FossHub. Появляется следующая страница, на которой для скачивания выбираем Code Blocks Windows 64 bit (включая компилятор). Скачиваем установочный файл codeblocks-20.03mingw-setup.exe объёмом около 145 MB. Запускаем этот файл на установку. В появляющихся окнах последовательно щёлкаем Next, I Agree, Next, оставляем по умолчанию папку для установки C:\Program Files\CodeBlocks, щёлкаем Install. В конце установки появляется сообщение об успешной установке, как показано на рис. 1.1. Щёлкаем Finish.

Вот и всё, такая простая установка. На рабочем столе появляется иконка для запуска программы. Щелкаем по ней и запускаем Code::Blocks.
Появляется окно, показанное на рис. 1.2.

Создаем новый проект.
Для этого либо щелкаем в окне рис. 1.2 по строке Create a new project, либо выбираем в меню опции File –> New –> Project… Появится окно, показанное на рис. 1.3.

В окне (рис. 1.3) щелкаем по иконке Console application. Появляется окно, показанное на рис. 1.4.

В окне (рис. 1.4) выбираем язык C и щелкаем Next. Появляется окно, показанное на рис. 1.5.

В этом окне в поле Project title задаем название проекта, например, Project_1. Это имя автоматически присваивается вновь создаваемому файлу в поле Project filename. Нажимаем Next.
Появляется окно, показанное на рис. 1.6.

В этом окне (рис. 1.6) в поле Compiler оставляем появившуюся по умолчанию опцию GNU GCC Compiler. Ставим галочку около опции Create “Debug” configuration, что позволит в дальнейшем проводить отладку создаваемых программ, щелкаем Finish. Появляется интерфейсное окно программы Code::Blocks, показанное на рис. 1.7. В левой части этого окна будут располагаться названия создаваемых проектов, и в частности, появится название первого созданного проекта Project_1. Щелкнем по файлу main.c внутри этого проекта и справа в области редактирования откроется код программы: Hello world! (рис. 1.7). (Либо вы сами можете набрать код этой короткой программы).

Запустим программу на исполнение. Для этого надо щелкнуть по кнопке Build and run справа от зеленого треугольника на панели инструментов, либо выбрать опции меню Build –> Build and run, либо нажать клавишу F9. На рис 1.8 представлен результат выполнения программы:

         Закрываем программу Code::Blocks. Появляется предупреждение: The perspective ‘ Code::Blocks default’ has changed. Do you want to save it? Ставим галочку в квадратике Don’t annoy me again! и щелкаем Yes.   

Примечание. Если при запуске программы выдается ошибка: Can’t find compiler executable in your configured search path’s for GNU GCC Compiler (Не удается найти исполняемый файл компилятора в вашем настроенном пути поиска для компилятора GNU GCC), то

надо сделать:

  • Выберите опции меню: Setting –> Compiler. Откроется окно Global Compiler Settings (рис. 1.9).
  • Выберите в этом окне вкладку Toolchain executables (отмечена овалом).
  • Справа от поля Compiler installation directory щелкните по кнопке Auto-Detect и в поле автоматически появится директория, куда по умолчанию установился компилятор. Щелкните OK.

Теперь можно создавать программы на С, чем мы и займёмся в следующих подразделах.

1.2. Создание программы

Давайте создадим листинг программы, которая выводит на экран 50 случайных чисел, и на её примере определим требования, которым должна соответствовать программа на языке C. Запускаем Code::Blocks и открываем созданный ранее проект Project_1: File –> Open –> Project_1.cbp. Появляется интерфейсное окно. В области редактора этого окна удалим программу “Hello world!” и наберем новую программу, которую назовём “50 случайных чисел”. Программа имеет вид, показанный на рис. 1.10 (щелкнуть левой кнопкой мыши по рисунку для увеличения).

Пример 1.2. Программа “50 случайных чисел”:

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
int main()
{
    setlocale(LC_ALL, “Russian”);
    int r, a, b;
    puts(“50 случайных чисел”);
    for (a = 0; a < 10; a++)
    {
         for (b = 0; b < 5; b++)
         {
             r = rand();
             printf(“% d\t”, r);
         }
    putchar(‘\n’);
    }
    return 0;
}

Чтобы увеличить шрифт в окне редактора на рис. 1.10, выбираем в меню опции: Settings –> Editor… Появится окно, показанное на рис. 1.11.

В этом окне справа от поля Font щелкаем по кнопке Choose (выделена овалом) и выбираем размер шрифта 12, как показано на рис. 1.12. Щелкаем ОК, и ещё раз ОК.

Или можно менять размер шрифта комбинацией клавиш (Ctrl +), (Ctrl –), где знаки (+) и (–) выбираются на клавиатуре в цифровом блоке справа.

Запустим программу на исполнение: BuildBuild and run (или с помощью клавиши F9). Получим 50 случайных чисел, расположенных в пять столбцов (рис. 1.13):

1.3. Построчный анализ программы

Проведём построчный анализ программы (рис. 1.10) и на основе этого анализа определим состав типовой программы на языке С и правила ее написания.

Операторы #include (1…3 строки) называются директивами препроцессора. Они позволяют программисту использовать сторонние файлы, которые принадлежат, например, стандартным библиотекам. Стандартные библиотеки входят в состав языка С (такой подход используется и в других языках). Использование их в программе существенно облегчает программирование.  Имя файла стандартной библиотеки отображается в угловых скобках (< >). Если заимствованный файл не принадлежит к стандартной библиотеке, а создан, например, другими программистами или самим пользователем, то он отображается в прямых кавычках.

Первая строка программы (первая директива) – это подключение файлов библиотеки ввода/вывода (<stdio.h>). Вторая строка – подключение библиотеки функций общего назначения (<stdlib.h>), предназначенных для преобразования чисел, запроса памяти и других задач. В третьей строке подключается библиотека, которая работает на распознавание русского текста <locale.h>. Количество подключаемых библиотек может варьироваться и зависит от содержания программы.

Read more …

Подпишись на телеграм-канал:  https://t.me/algorithms_and_life и скачай учебное пособие “Программирование на C” –  БЕСПЛАТНО