It appears that LC_COLLATE controls the "alphabetical order" used by ls, as well. The US locale will sort as follows:
a.C aFilename.C aFilename.H a.H basically ignoring the periods. You might prefer:
a.C a.H aFilename.C aFilename.H I certainly do. Setting LC_COLLATE to C accomplishes this. Note that it will also sort lower case after all capitals:
A.C A.H AFilename.C a.C a.H