Converting a decimal into a fraction
I think you're being too lenient with your input checking, which results in some unexpected results:

-3,000,0    results in:     -3000/1
3,000      results in: 3/1
3 results in 3/1
3-1 results in 1/1

Personally, I'd pick an expected format and then ensure that the input complies with it.  If you want to support multiple decimal marks, then I would suggest having a function for each supported format that validates the input and returns it in one common format which is then used by the rest of the code.
argc &amp; argv
In your example you have ./a.out &quot;3 000,375&quot;.  You're quoting the space in order to ensure it's all pushed as part of argv[1].  It seems likely that this could be forgotten.  If it was, then you would end up with the output of 3/1.  Your argc checking only checks for no parameters being supplied:
if (argc &lt; 2) {
    fprintf(stderr, &quot;Please enter a number to fractionize.\n&quot;);
    return EXIT_FAILURE;
}

Unless you're going to continue through the arguments supplied, appending them to the input it would be better to do something like this:
if (argc != 2) {
    fprintf(stderr, &quot;Usage: %s &lt;number to fractionize&gt;\n&quot;, argv[0]);
    return EXIT_FAILURE;
}

One declaration per line
This is obviously subjective, but I don't particularly like multiple declarations on a single line.  I don't mind it so much when you're declaring several uninitialised variables, however when you're assigning values to the variables it would be better to have each declaration on a new line.  For me, denominator and previous get a bit lost on this line:
unsigned long long previous, denominator = 1, numerator = 0;