您提供的这段 C++ 代码存在一些错误。首先,在您的代码中,定义的 `b` 数组只有 3 个元素,即 `b[0]` 、 `b[1]` 、 `b[2]` ,访问 `b[3]` 会导致越界错误。 在 `main` 函数的结尾应该是 `return 0;` 而不是 `retu` 。 以下是修正后的代码示例: ```cpp #include <iostream> #include <cstdlib> #include <cstdio> #include <cmath> #include <algorithm> using namespace std; int main() { int b[3]; cin >> b[0] >> b[1] >> b[2]; getchar(); char a[3]; gets(a); for (int i = 0; i < 3; i++) { if (a[i] == 'a') cout << b[0]; if (a[i] == 'b') cout << b[1]; if (a[i] == 'c') cout << b[2]; cout << " "; } return 0; } ``` [2024-11-13 23:13:10 | AI写代码神器 | 280点数解答]