Это второй блог в моей текущей серии CS50. Читателям предлагается пройти через 0-й блог для лучшего понимания предмета. В этом блоге вы узнаете о языке программирования C.

В предыдущем блоге я обсуждал, как создать вашу первую игру на Scratch. В этом блоге я буду обсуждать следующие темы

  • C
  • Привет, мир: первая программа на C
  • Компиляция
  • Типы данных
  • Переменные
  • Операторы
  • Условные утверждения
  • Петли
  • Командные строки

C: Мать всех языков программирования

Неделя 1 - неделя 5 CS50 отправляет нас в путешествие по программированию с «Матерью всех языков программирования». Вы правильно догадались! Его C. Он немного менее удобен для пользователя по сравнению с Scratch, поскольку он основан исключительно на тексте, но содержит все функции Scratch.

Hello World: первая программа на C

Напишем нашу первую программу на C.

#include ‹stdio.h› // Заголовочный файл
int main (void) // Основная функция
{
printf («Hello, World!»); // Печать Hello, World!
}

Первая строка #include ‹stdio.h› в начале программы добавляет файл stdio.h (стандартный ввод-вывод) с именем Заголовочный файл в нашей программе. Заголовочный файл содержит код определения всех функций ввода-вывода, таких как printf (), которые мы собираемся использовать в нашей программе. Функция - это фрагмент кода, написанный для выполнения определенной задачи.

Выполнение программы C начинается с функции main (), то есть со строки int main (void). Компьютер находит функцию main () и запускает выполнение программы, записанной в фигурных скобках {} после main ().

Функция printf () - это функция вывода, которая отображает содержимое на экране вывода. Содержимое, отображаемое на экране вывода, должно быть заключено в двойные кавычки «» внутри фигурных скобок ().

Каждый оператор на языке C должен заканчиваться точкой с запятой (;). Это называется терминатором оператора. Строки, начинающиеся с //, называются комментариями и написаны для лучшего понимания кода для пользователя. Компьютер просто игнорирует комментарии.

Эти более мелкие детали или грамматические правила языка программирования называются синтаксисом. Синтаксис должен строго соблюдаться, иначе выполнение программы не состоится.

Компиляция

Код, написанный на языке C в редакторе, называется исходным кодом и имеет расширение имени файла «.c». Но мы знаем, что компьютер понимает машинный язык только нулей и единиц. Таким образом, исходный код необходимо преобразовать в машинный код (скомпилировать), прежде чем наш компьютер сможет его запустить. Компиляция - это широкие термины, включающие следующие процессы

  1. Предварительная обработка
  2. Компиляция
  3. Сборка
  4. Связывание

Интегрированная среда разработки (IDE)

IDE - это набор всех инструментов (редактор, препроцессор, компилятор, ассемблер и т. Д.), Которые необходимы для разработки программного обеспечения (файл .exe) с использованием языка C. CS50 предоставляет студентам собственную виртуальную облачную онлайн-среду под названием Песочница и CS50 IDE для написания программ на языке C.

Вы можете использовать следующие командные строки в Sandbox или CS50 IDE.

  • Чтобы скомпилировать программу: make ‹program_name.c›
  • Чтобы запустить программу: ./ ‹имя_программы.c›

Существует также множество доступных онлайн-IDE, таких как this, а также автономных IDE, таких как Visual Studio (VS) Code, Eclipse и т. Д. Вы можете проверить это видео, чтобы настроить VS-код для программирования c на ПК с Windows.

Типы данных

Имена, присвоенные таким объектам, как переменные, функции и т. Д. В программе C, называются идентификаторами. Тип данных идентификатора определяет три вещи

  1. Тип данных, которые он может хранить
  2. Размер памяти, необходимый для хранения данных
  3. Диапазон данных, которые можно сохранить

В библиотеке C. CS50 есть 4 основных типа данных, которые предоставляют два дополнительных типа данных, string и bool, которые изначально не являются частью языка C.

Модификатор формата - это способ сообщить компилятору, какой тип данных он будет принимать в качестве входных или распечатывать в качестве выходных.

Переменные

Переменная - это имя, присвоенное участку памяти в памяти компьютера. «Переменная» похожа на поле, в котором хранится значение.

Объявление переменной является предварительным сообщением компилятору перед ее использованием. После объявления вам больше не нужно указывать тип данных переменной в программе.

Когда мы присваиваем значение переменной, это называется присвоением переменной.

Если мы объявляем и присваиваем значение переменной одновременно, это называется Инициализация переменной.

Объявление: int x;

Задание: x = 7;

Инициализация: int x = 7;

Операторы

Для управления идентификаторами и работы с ними в C предусмотрены следующие операторы.

Арифметические операторы

Арифметические операторы используются для выполнения арифметических операций с идентификаторами.

Помните оператор модуля (%), который возвращает напоминание о делении, тогда как оператор деления (/) возвращает частное от деления.

Логические операторы

Логические операторы используются для построения логических выражений в C. Выражение, которое дает только два возможных значения: истина или ложь, называется логическим выражением.

Логические выражения очень важны, потому что мы используем результат их оценки в условных операторах и циклах, чтобы решить, следует ли выполнять какой-либо блок кода или нет. В языке C любое ненулевое значение по умолчанию равно true, а нулевое значение - false.

В C. есть три логических оператора.

  1. Логическое И (&&)
  2. Логическое ИЛИ (||)
  3. Логическое НЕ (!)

Операторы отношения

Операторы отношения используются для сравнения значений двух идентификаторов, чтобы понять взаимосвязь между ними. Операторы отношения возвращают True или False в зависимости от оценки.

Не путайте оператор присваивания (=), который присваивает значение его операнда RHS своему операнду LHS, с оператором, равным оператору (==).

Условные утверждения

Условные операторы в C очень полезны, поскольку они позволяют нам принимать решение и следовать определенному пути на основе пользовательского ввода.

  1. Заявление if

Оператор if является самым простым из всех условных операторов и работает следующим образом.

  • Проверьте логическое выражение.
    ▷ Если true, запустите код в фигурных скобках.
    ▷ Если false, пропустите код внутри фигурных скобок.

2. Заявление if-else

Оператор if-else работает следующим образом.

  • Проверьте логическое выражение.
    ▷ Если true, запустите код 1 внутри первой пары фигурных скобок.
    ▷ Если false, запустите код 2 внутри второй пары фигурных скобок.

3. Оператор switch
Оператор switch уникален среди всех условных операторов, потому что он позволяет пользователю указывать отдельные случаи вместо логических выражений для принять решение.

В данной программе пользователю предлагается ввести целое число с помощью функции scanf (), которая будет сохранена в переменной i.

  • Для i = 1 будет напечатан «Случай 1», и оператор break возьмет выполнение из оператора switch без выполнения других случаев.
  • Для i = 2 будет напечатан «Случай 2», и оператор break возьмет выполнение из оператора switch без выполнения других вариантов.
  • Для i = 3 будет напечатан «Случай 3», и оператор break возьмет выполнение из оператора switch без выполнения других вариантов.
  • Для других значений i будет выполнен случай по умолчанию, и после вывода «Default» выполнение оператора switch завершится.

Очень важно использовать оператор break в каждом случае, иначе на основе ввода будет выполнен определенный случай, который не будет выходить из оператора switch, а выполнит все оставшиеся варианты.

Петли

В языке C, если мы хотим многократно выполнять определенный фрагмент кода, мы можем использовать циклы.

1. Цикл while
Цикл while используется, когда вы хотите повторить фрагмент кода неизвестное количество раз.

Цикл while повторяет следующие этапы до тех пор, пока логическое выражение не станет истинным.

  1. Вычисляет логическое выражение.
    Если true, запустить код в фигурных скобках и перейти к шагу 1.
    ▷ Если false, выйти из цикла.

Если мы зададим условие, которое всегда истинно, тогда код будет выполняться неограниченное количество раз, и мы должны использовать оператор break, чтобы остановить выполнение программы.

2. Цикл do-while
Цикл do-while используется, когда вы хотите выполнить фрагмент кода хотя бы один раз.

Цикл do-while работает следующим образом

  1. Запустите код в фигурные скобки
  2. Вычисляет логическое выражение.
    Если true, запустить код в фигурных скобках и перейти к шагу 1.
    ▷ Если false, выйти из цикла.

3. для цикла

Цикл For используется, когда вы хотите повторить фрагмент кода определенное количество раз. Цикл for работает следующим образом

  1. Инициализирует переменную счетчика или устанавливает ее значение.
  2. Проверяет логическое выражение.
    ▷ Если true, запустите код в фигурных скобках и перейдите к шагу 3.
    ▷ Если false, выйдите из цикла.
  3. Переменная счетчика увеличивается или уменьшается
  4. Перейти к этапу 2.

Командные строки

Командные строки - это команды на основе клавиатуры, которые можно использовать для выполнения различных задач, набрав их в терминале CS50 Sandbox, CS50 IDE или любой системы на базе Linux.

Вывод

На сегодня есть чему поучиться. Большое спасибо за терпеливое чтение. Вы можете найти мой следующий блог здесь. Напишите комментарии, если вы обнаружите что-то неправильное или хотите поделиться дополнительной информацией по теме, обсужденной выше. Вы можете связаться со мной в LinkedIn или посетив мой веб-сайт в Medium . Удачного обучения.