Для начала эта инициализация массива
char schlName[200]={};
неверна в C. Список инициализаторов в фигурных скобках может быть не пустым. Вместо этого напишите
char schlName[200]={ '\0' };
При вызове sprintf порядок аргументов недопустим. Кажется, вы имеете в виду
sprintf( result_string, query_string, schlName );
вместо
sprintf( schlName, query_string);
, где result_string - строка, куда будет перенаправлен вывод.
Объявление функции sprintf
выглядит следующим образом
int sprintf(char * restrict s, const char * restrict format, ...);
Так что, если аргумент, соответствующий формату параметра, имеет спецификатор преобразования, такой как %s
, вам необходимо указать как минимум три аргумента.
Обратите внимание начто этот звонок
scanf("%s",schlName);
небезопасен. Используйте fgets
вместо scanf
.