1.使用fgets
#define SLEN 50 char str[SLEN]; fgets(str, SLEN, stdin); i = 0; while (str[i] != '\n' && str[i] != '\0') i++ if (str[i] == '\n') str[i] = '\0' else while (getchar() != '\n') continue;
2.使用getchar()过滤掉输入缓存中的剩余部分
void eatline(void) { while (getchar() != '\n') continue; }
3.