#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <ctype.h>
void move_special_characters_to_beginning(char *s, int len) {
char *chars = (char *)malloc(len + 1 * sizeof(char));
char *special_characters = (char *)malloc(len + 1 * sizeof(char));
int chars_i = 0, special_characters_i = 0;
for (int i = 0; i < len; i++) {
char ch = s[i];
if (isalnum(ch) || ch == ' ')
chars[chars_i++] = ch;
else
special_characters[special_characters_i++] = ch;
}
for (int i = 0; i < special_characters_i; i++) {
s[i] = special_characters[i];
}
for (int i = special_characters_i, j = 0; i < len; i++, j++) {
s[i] = chars[j];
}
free(chars);
free(special_characters);
}
int main()
{
char arr[] = "c++$vb.net&%java*() php <>/python 3.7.3";
move_special_characters_to_beginning(arr, strlen(arr));
puts(arr);
return 0;
}
/*
run:
++$.&%*()<>/..cvbnetjava php python 373
*/