C
- Русское название:
- Cи
- Дата создания:
- 1969
- Повлиял на:
- Парадигма:
- Типизация:
- Принятые расширения файлов:
- .c .h
- Диалекты:
- Реализации и версии (свернуть все | развернуть все):
Си (англ. C) — стандартизованный процедурный язык программирования, разработанный в начале 1970-х годов сотрудниками Bell Labs Кеном Томпсоном и Денисом Ритчи как развитие языка Би.
Си был создан для использования в операционной системе UNIX. С тех пор он был портирован на многие другие операционные системы и стал одним из самых используемых языков программирования.
Си ценят за его эффективность; он является самым популярным языком для создания системного программного обеспечения. Его также часто используют для создания прикладных программ. Несмотря на то, что Си не разрабатывался для новичков, он активно используется для обучения программированию.
В дальнейшем синтаксис языка Си стал основой для многих других языков.
Элементы синтаксиса:
| Комментарий до конца строки | нет |
|---|---|
| Комментарии, которые могут быть вложенными | #if 0 ... #endif |
| Комментарии, которые не могут быть вложенными | /* ... */ |
| Регистрозависимость | да |
| Регулярное выражение идентификатора переменной | [_a-zA-Z][_a-zA-Z0-9]* |
| Присваивание значения переменной | = |
| Объявление переменной | type variable |
| Блок | { ... } |
| Равенство | == |
| Неравенство | != |
| Сравнение | < > <= >=, для строк strcmp |
| Определение функции | returntype f(type1 p1, type2 p2, ...) |
| Вызов функции | f(a, b, ...) |
| Вызов функции без параметров | f() |
| Если - то | if (condition) ... |
| Если - то - иначе | if (condition) ... else ... |
| Цикл с предусловием | while (condition) ... |
| Цикл с постусловием | do ... while (!condition) |
| Цикл for - next для диапазона целых чисел с инкрементом на 1 | for (int i = 1; i <= 10; i++) ... |
| Цикл for - next для диапазона целых чисел с декрементом на 1 | for (int i = 10; i >= 1; i--) ... |
Примеры:
Факториал:
Пример для версий GCC 3, GCC 4Используется рекурсивное определение факториала.
#include <stdio.h>
unsigned long long factorial(unsigned long long n)
{
if (n == 0) {
return 1;
} else {
return n * factorial(n - 1);
}
}
int main(void)
{
int n;
for (n = 0; n <= 16; n++) {
printf("%i! = %lld\n", n, factorial(n));
}
return 0;
}
Факториал:
Пример для версий MinGWИспользуется рекурсивное определение факториала.
#include <stdio.h>
unsigned long long factorial(unsigned long long n)
{
if (n == 0) {
return 1;
} else {
return n * factorial (n - 1);
}
}
int main(void)
{
int n;
for (n = 0; n <= 16; n++) {
printf("%i! = %I64u\n", n, factorial(n));
}
return 0;
}
Комментарии
]]>blog comments powered by Disqus
]]>