主要问题是输入输出那里,见注释,供参考:
第11行需要接收一个输入,控制台显示生男生女那一行后输M试下,你是直接回车了吗
换行符是一个字符,你用%c读取。肯定会这样在读取前加上一个或多个getchar()即可解决或者while(getchar()!='/0');