C — язык программирования, разработанный в начале 1970-х годов американским ученым-компьютерщиком Деннисом М. Ритчи в Bell Laboratories (бывшая AT&T Bell Laboratories). C был задуман как минималистский язык для написания операционных систем для миникомпьютеров, таких как DEC PDP 7, которые имели очень ограниченную память по сравнению с мейнфреймами того времени. Язык был разработан в 1969-73 годах, одновременно с ранней разработкой операционной системы UNIX. Он был основан на языке программирования CPL (Combined Programming Language), который был впервые сжат в язык программирования B — урезанный язык компьютерного программирования, созданный в 1969-70 годах Кеном Томпсоном, американским компьютерным ученым и коллегой Ритчи. Впоследствии Ритчи переписал и восстановил функции CPL, чтобы создать C, и в итоге переписал операционную систему UNIX на новом языке.
По мере совершенствования системы UNIX в 1977-1979 годах в языке Си произошел ряд изменений. В это время описание языка стало широко доступно благодаря книге «Язык программирования Си» (1978), написанной Брайаном В. Керниганом и Ритчи. В середине 1980-х годов возникла необходимость в создании официального стандарта для языка C, поскольку он использовался в проектах, на которые заключались коммерческие и правительственные контракты. В 1983 году Американский национальный институт стандартов (ANSI) создал комитет, который доработал и стандартизировал язык. С тех пор язык C называется ANSI Standard C, и он остается популярным в мире UNIX-подобных операционных систем. C также стал одним из самых распространенных языков программирования, используемых для написания других системных программ и приложений. Потомками языка C являются Concurrent C, Objective C, C*, C# и широко распространенный C++. Язык программирования Java был представлен в 1994 году как упрощенное подмножество C для развертывания через Интернет и использования в портативных устройствах с ограниченной памятью или ограниченными вычислительными возможностями.