:CIN 在每次循环后不断打印用户输入的内容

:CIN keeps printing what user entered after each loop

我正在编写一个基本的 make change 函数并且它运行良好(很确定有更好的方法来做到这一点)但是我是 c++ 的新手并且我有一个奇怪的错误。它会在用户按下后继续打印 y 或 n,我不希望这样。我没有让它打印到控制台。我也尝试用 `cin.ignore(numeric_limits::max(),'\n'); 清除 cin 缓冲区。它没有用,请看看我错过了什么。

更新: 问题已得到解答,但我这样做是为了 class 作业,我正在删除代码,以防万一我的教授进行剽窃检查,我自己编写了代码,但我很确定检查员会扫描该站点。

在此代码中

if(putchar(tolower(res)) == 'n' )

putchar 向控制台写入一个字符。不确定你为什么添加 putchar 我想你只是想要这个

if(tolower(res) == 'n' )