Рекомендуемые правила форматирования кода:

  1. На протяжении всего решения шаг отступа устроен одинаково, причём это либо два или четыре пробела, либо табуляция соответствующей ширины;
  2. Вокруг знаков бинарных операций (арифметика, сравнения, битовые, логические операции) ставятся пробелы. Сюда относятся и операторы сдвига << и >>.
    Между знаком унарной операции (унарный +, унарный -, ++, --, ~, !, разыменование *, взятие адреса &) и выражением, к которому она применяется, пробел не ставится;
  3. Вокруг присваиваний ставятся пробелы. Операторы вида +=, *= относятся к присваиваниям;
  4. Процедуры, функции и другие смысловые блоки разделяются пустыми строками;
  5. После запятой, точки с запятой и двоеточия ставится пробел, а перед ними - не ставится;
  6. Ширина текста программы (то есть количество символов в одной строке кода) не должна превышать 80-100 символов;
  7. Каждый новый оператор должен находиться в отдельной строке.
  8. Между именем функции и скобками пробел не ставится, с внутренней стороны скобок пробел не ставится.
  9. В операторах if, while, do-while, for после ключевого слова ставится пробел.
  10. В операторах if, while, do-while, for рекомендуется заключать тело цикла в фигурные скобки (составной оператор), даже если тело — единственный оператор;
  11. Обратите внимание на форматирование if-then-else в примерах;
  12. Идентификаторы должны иметь длинные (но в меру), осмысленные названия. Исключения допускаются только для счетчиков в циклах (i, j), а также для размеров исходных данных (N, M).
  13. В идентификаторах используются только английские слова, транслитерация не допускается.
  14. Переменные объявляются как можно ближе к месту первого использования, т. е. как можно позже. В частности, счётчик цикла for обычно можно объявить в его первой секции.
  15. При "египетском" (как в первом примере) стиле фигурных скобок пробел перед открывающей скобкой ставится всегда.

Примеры правильно отформатированных программ:

#include <iostream>
using namespace std;
int
sum(int a, int b) {
return a + b;
}

int main(int argc, char** argv) {
freopen("aplusb.in", "r", stdin);
freopen("aplusb.out", "w", stdout);

int a;
int b;
int s;

cin >> a >> b;

s = 0;
if (a < 0) {
a = -a;
if (b < 0) {
b = -b;
s = a + b;
} else {
while (s <= 0) {
switch (a) {
case 1:
s += 3;
break;
case 2:
s -= 4;
a -= 1;
break;
default:
s = 1;
}
}
}
} else if (b < 0) {
b = -b;
s = (a + b) * (a - b);
} else {
s = sum(a, b) * sum(a, b);
}

cout << s;

return 0;
}

Или так:

#include <stdio.h>

int sum(int a, int b)
{
return a + b;
}

int main(int argc, char** argv)
{
freopen("aplusb.in", "r", stdin);
freopen("aplusb.out", "w", stdout);

int a;
int b;
int s;

scanf("%d%d", &a, &b);

s = 0;
if (a < 0)
{
a = -a;
if (b < 0)
{
b = -b;
s = a + b;
}
else
{
while (s <= 0)
{
switch (a)
{
case 1:
s += 3;
break;
case 2:
s -= 4;
a -= 1;
break;
default:
s = 1;
}
}
}
}
else
{
if (b < 0)
{
b = -b;
s = (a + b) * (a - b);
}
else
{
s = sum(a, b) * sum(a, b);
}
}

printf("%d\n", s);

return 0;
}