#include#include
main(){int c=0;srand((unsigned) time(NULL));c=rand()%5;if(c<2){printf("%d",c);}else{main();}}
因为相同的随机数种子生成相同的随机数,而你使用time作为种子,所以在短时间里,每次得到的c都一样。这导致一旦c>=2而且每次都是一样的值,那么就会在main里无限递归调用main最后堆栈溢出了。