C++数组计算器如何按指定格式输出运算表达式与结果
C++数组计算器输出问题修复说明
核心问题解答
- 不需要为每个数值单独创建变量:你已声明的
double number[SIZE]数组已经存储了用户输入的3个数值,直接按下标取number[0]、number[1]、number[2]即可对应示例里2、1、3三个值的位置。 - 原有代码存在两处可修复问题:
- 加法计算前没有重置
sum的值,多次调用加法功能会累计历史结果导致计算错误 - 输出语句误用循环计数器
i的值,没有取数组存储的用户输入数值
- 加法计算前没有重置
修正后的加法分支代码片段
// Addition case 'A': case 'a': // Validation if (numsGotten) { sum = 0.0; // 每次计算前先重置求和变量为0,避免累计历史结果 for (i = 0; i < SIZE; i++) { sum += number[i]; } // 直接用数组元素输出三个输入值即可匹配要求格式 cout << "\nAnswer: " << number[0] << " + " << number[1] << " + " << number[2] << " = " << sum << ".\n"; } else { // Output - Error cout << "\n\tError: Please select option G from the menu first!\n"; } break;
拓展适配方案
如果后续需要修改SIZE常量适配更多输入数值,可以用循环动态拼接输出表达式,无需手动写每个数组下标:
cout << "\nAnswer: "; for (i = 0; i < SIZE; i++) { if (i != 0) cout << " + "; cout << number[i]; } cout << " = " << sum << ".\n";
内容的提问来源于stack exchange,提问作者user17341555
相关产品推荐
相关产品推荐

