作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以我正在尝试制作一个简单的计算器,允许用户在不退出的情况下再次使用该程序。现在循环本身工作正常,但是当我使用 printf()
时,它会像这样再次重复并跳过它:
Enter an operator: +
Do you want to continue?(Y/N): y
Enter an operator:
Do you want to continue?(Y/N):
代码如下:
int main()
{
char o, ans = 'Y';
int num1, num2;
while(ans == 'Y' || ans == 'y')
{
printf("\nEnter an operator: ");
scanf("%c", &o);
printf("\nDo you want to continue?(Y/N): ");
scanf(" %c", &ans);
}
return 0;
}
最佳答案
我不确定问题是什么,但您可能根本没有在秒 scanf 上读取字符。您应该检查 scanf 的返回值,因为它告诉您已读取了多少个参数。可以使用调试器进行调试,或者在某些点打印出变量。这是最好的学习方式;)
关于c - 当循环跳过用户输入时,我做错了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33947688/
我是一名优秀的程序员,十分优秀!