作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在编写一些代码,程序中有一个由 while 循环驱动的提示,您可以在其中做出选择。但是,每次循环时它都会打印两次提示,我只是无法弄清楚。
while (choice != 'x');
{
printf("\nChoice (a)dd (v)iew e(X)it [ ]\b\b");
scanf("%c",&choice);
if (choice == 'a') add_record();
if (choice == 'v') view_record();
}
printf 行是打印两次的行。预先感谢您的帮助。
最佳答案
当您输入字符(即输入“a”并按“Enter”键)时,换行符(“\n”)也会从标准输入中读取。您可以在格式说明符中添加前导空格来避免这种情况:
scanf(" %c", &choice);
空格指示 scanf 忽略空白字符(例如 '\n')。
关于c - 刚开始学 C,我有一个 bug 快要了我的命,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35999988/
我是一名优秀的程序员,十分优秀!