Основное (здесь подробнее):
- содержит не более 5 функций
- все строки не более 80 символов
- не длиннее 25 строк
- не более 4 входных переменных
- не более 5 локальных переменных
- объявляются в начале функции
- не инициализируются при определении
- скобки на отдельной строке
- отступы табуляцией
for
goto
swith/case
- вложенных тернарных операторов
- вложенных макросов
- глобальных переменных (в большинстве проектов)
- библиотек кроме stdlib (и собственных, написанных на ее основе)