Wait, guys, I'm confused about the confusion. I agree that Ashish explained scientific notation well, but I'm confused as to what QB64 might be doing "wrong."
In fact, like QB also seemed to do, scientific notation is created by QB64 only after a certain number of digits. It makes some sense, to me, to go to scientific notation beyond a certain point. Looks like 16 digits is the limit. So:
PRINT .0111111111111111
will print just like that. But add one more digit, and
PRINT .01111111111111111
will print as
1.111111111111111D-02
Same the other way around. If you input a number in scientific notation, but the number is not "long enough," QB64 will print it back without scientific notation.
Not sure why this isn't legit in every way? Or is there some sort of unwritten rule in other programming languages, as to when scientific notation becomes essential?