scanf输入时候'\n'在缓冲区里面,getchar读取的是缓冲区的内容,你在上面再加个getchar()就可以,第一个getchar()读取缓冲区的内容,第二个getchar()读取的才是你要输入的‘Y’或则其他字符,一般用这个while(getchar() != '\n') continue;