Ответ 1
"Ошибка сегментации" означает, что вы пытались получить доступ к памяти, к которой у вас нет доступа.
Первая проблема связана с вашими аргументами main
. Функция main
должна быть int main(int argc, char *argv[])
, и вы должны проверить, что argc
не менее 2 до доступа к argv[1]
.
Кроме того, поскольку вы передаете от float
до printf
(который, кстати, преобразуется в double
при передаче на printf
), вы должны использовать спецификатор формата %f
, Спецификатор формата %s
предназначен для строк ('\0'
-терминированных массивов символов).