问个简单的有关问题.多谢

问个简单的问题.谢谢
#include <stdio.h>
#include <stdlib.h>

int main(void) {
int i;
   for(i=0;i<5;i++){
   puts(""+i);
   }

puts("!!!Hello World!!!"); /* prints !!!Hello World!!! */
return EXIT_SUCCESS;
}




 结果 是

!!!Hello World!!!
!!Hello World!!!
!Hello World!!!
Hello World!!!
!!!Hello World!!!

上面的结果为什么有那么“!!!Hello World ”?
------解决思路----------------------
字符串常量是放在常量区的