1、在系统要求用户输入字符串后,需用户敲击回车键确认输入结束。此时在输入缓存区内还剩余一个'\n'字符,必须清除该字符后才能不影响后续程序执行。 2、当用户输入字符串中带有
1、在系统要求用户输入字符串后,需用户敲击回车键确认输入结束。此时在输入缓存区内还剩余一个'\n'字符,必须清除该字符后才能不影响后续程序执行。
2、当用户输入字符串中带有空格时,例如“123 ABC”,scanf()只能获取空格前字符串,输入缓冲区还有剩余字符串,使用getchar()清除。
3、While循环中,break语句终止并跳出循环,continue语句跳过当前循环内剩余代码再次从while开始循环。
int main() {
int ret = 0;
char password[20] = {0};
printf("请输入密码:>");
scanf("%s", password);
while ((getchar()) != '\n') {
;
}
printf("请确认(Y/N):>");
ret = getchar();
if (ret == 'Y') {
printf("确认成功!\n");
} else {
printf("确认失败!\n");
}
return 0;
}
输出结果:
【文章原创作者:韩国服务器租用 http://www.558idc.com/lg.html 复制请保留原URL】