如何计算商与余数?C++甜甜圈计数程序逻辑错误调试
C++甜甜圈计算程序问题修复方案
单个甜甜圈数量计算错误修复
- 单个数量的正确计算逻辑是总数量对12取模,也就是
single_donuts = total % 12;。如果你之前错误地用计算出的打数(total/12)去做取模运算,肯定会得到错误结果,把取模的对象换成原始输入的总数量就能解决。
if语句逻辑错误修复
- 输入29时提示不符,说明你的条件判断逻辑和预期完全相反。比如如果原本代码是判断总数小于某值才输出甜甜圈提示,那29超过阈值就会触发错误分支。
- 假设你的需求是总数≥12时输出"Mmmmmmm......donuts!"(29满足这个条件),直接把if条件写成
total_donuts >= 12,else分支输出肉桂卷的提示即可。如果你的触发条件是其他数值,替换成对应判断就行。
修正后的完整代码
#include <iostream> using namespace std; int main() { int total_donuts; cout << "请输入想要食用的甜甜圈数量:"; cin >> total_donuts; // 正确计算打数和单个数量 int dozen_count = total_donuts / 12; int single_count = total_donuts % 12; // 输出打数和单个数量信息 cout << "This is " << dozen_count << " dozen plus " << single_count << " single donuts" << endl; // 修正后的条件判断逻辑 if (total_donuts >= 12) { cout << "Mmmmmmm......donuts!" << endl; } else { cout << "What's for dessert...cinnamon rolls?" << endl; } return 0; }
内容的提问来源于stack exchange,提问作者Audrey W.
相关产品推荐
相关产品推荐

