Because Linux is just the core, the kernel, of the whole Operation System.
The GNU Project built the Operation System using that part called Linux.
The GNU O.S. was done by groups of volunteers, Programmers&Researchers, who gave much of their work to create one of the best thing created using the Bitnet network, later Internet, to communicate and share knowledge&information.
Well, GNU was building their own OS and specially their own tools before Linux appeared. It's just that Linus managed to build a kernel that worked fine before the GNU team did. So the GNU team ditched the kernel they were developing, because Linux was good enough. SInce Linus' operating system was using the GNU tools on top of his kernel, the Operating System was in some sense, GNU/Linux: GNU core libs and apps + Linux kernel. Everybody started calling the operating system as Linux eventually, since that was what Linus was calling it, but RIchard Stallman (founder of GNU and the Free Software Foundation) insisted that the Operating System be called GNU/Linux (later GNU + Linux), because Linux was just the kernel.
The Free Software Foundation views Linux distributions that use GNU software as GNU variants and they ask that such operating systems be referred to as GNU/Linux or a Linux-based GNU system.The media and common usage, however, refers to this family of operating systems simply as Linux, as do many large Linux distributions (e.g. SUSE Linux and Mandriva Linux). Some distributions, notably Debian, use GNU/Linux. The naming issue remains controversial.
It is primarily a licensing issue. Linux kernel uses a modified Gnu license (LGPL) and when they did that, Richard Stallman insisted on it being called Gnu/Linux. Also, Linux uses the Gnu applications to complete the OS. FSF (Gnu) used to work on an OS kernel called Hurd that they gave up on in favor of Linux.