К сожалению, это немного сложнее для простого системного вызова.
Это потребовало бы написания плагина для вашего сервера Spigot на Java, на котором размещен его собственный сервер, который программа C затем может затемотправьте пакет, чтобы сообщить серверу Spigot о завершении работы, поскольку серверу Spigot необходимо выполнить собственную очистку, прежде чем он сможет должным образом завершить работу.
Не могу сказать наверняка, потому что я более знаком сBukkit API, но он может включать в себя модификацию сервера Spigot.
Чтобы сделать это в C, вам понадобится сетевой API (в системах POSIX он есть по умолчанию, но я не знаю о Windows)и вы написали бы клиент, который будет взаимодействовать с сервером, написанным на Java. У Java есть собственный стандартный сетевой API-интерфейс, поэтому вам не нужно об этом беспокоиться.
Если ваша программа на C просто упрощает запуск и остановку сервера, я перенесу это на Java, чтобы выне пришлось бы делать какие-то странные кросс-языковые вещи. В противном случае я бы просто запустил BAT-файл вручную.