Це цікаве прочитання:
https://en.m.wikipedia.org/wiki/Bracket
Далі мої власні спостереження.
Дизайнери C дуже обережно прийняли значення символів та конструкцій, оскільки вони сотні років використовувались звичайною письмовою мовою. І, роблячи це, їм довелося працювати з досить обмеженим набором символів ASCII. У західній мові в письмовому тексті використовується більше символів групування, але вони просто не перетворили його на ASCII.
У звичайній мові значення дужок - це надання побічної інформації, не перериваючи основне повідомлення. Це має сенс під час виклику процедури: основне повідомлення - це дія, яку слід виконати, а підінфо - це аргументи.
Фігурні брекети використовуються для групування. "Ця колекція слів належить разом, їх слід встановити окремо від решти". Тому має сенс використовувати їх для блоків коду, складених операторів.
Квадратні дужки використовуються для вставок у текст, які не входили до оригіналу, для уточнення оригінального тексту та надання контексту. Або для позначення опущення еліпсисом: [...]. "Вона [королева] не розвеселилася". У комп'ютерному програмуванні мало сенсу використовувати дужку для індексації масивів, оскільки це своєрідний контекст. "Масив? Який масив? Ну, конкретно, цей елемент." Але навіть якщо оригінальне значення повністю не охоплює використання в комп'ютерній мові, в ASCII не залишилося занадто багато інших варіантів.
Тому я б сказав, що це комбінація попереднього рівня техніки та того, що було на той час, що призводить до використання квадратних дужок для індексації масиву.
[редагувати через коментар Алекса]
Згідно з цим джерелом, ASCII був представлений у 1963 році, а урядове схвалення отримав у 1968 році. Розвиток мови С розпочався до 1969 року, згідно з цією вікі . Тож, мабуть, містер Річі підбирав цей новий широко підтримуваний стандарт під назвою ASCII під час вибору своїх персонажів.
Будь ласка, дивіться також інші відповіді, які стосуються справи Алголя, "матері багатьох мов", що має сильний вплив.