DIR is an internal command, which means it's included in command.com, not in its own executable. system() is looking for an executable. So the correct syntax is
system("command.com /c dir");
Even under Windows 2000, sometimes it helps to remember some ancient DOS stuff.