It's not quite as simple as that, because each number can be represented by more than 1 character in the text file. Ie. this would work for 1 3 5 2, etc, but not for 3.25 -40 7 12, etc.
I managed it in the end by using the 'space' and 'end of line' characters in my textfile as delimiters, then putting each character of the text strings representing an individual number into its appropriate place in a 3 dimensional char array. I then used the atof() function to parse this text, and put the result into the 2D float array.
not sure what you mean "because each number can be represented by more than 1 character in the text file"
scanf() (and fscanf()) with the conversion specification "%f" would use whitespace (space characters and newlines) as delimiters so would convert sets of digits seperated by spaces into floats. e.g.
3.25 -40 7 12
would be read as four float values 3.25, -40.0, 7.0 and 12.0