# C++ 数字拼接程序 以下是一个C++程序,用于将输入的数字拼接成一个完整的数,并根据要求将数字4替换为6: ```cpp #include <iostream> #include <vector> #include <string> #include <cmath> using namespace std; long long constructNumber(const vector<int>& digits) { long long result = 0; for (int digit : digits) { // 将4替换为6 int current = (digit == 4) ? 6 : digit; result = result * 10 + current; } return result; } int main() { vector<int> digits; int input; cout << "请输入数字序列(以-1结束):" << endl; while (true) { cin >> input; if (input == -1) { break; } digits.push_back(input); } if (digits.empty()) { cout << "没有输入有效数字" << endl; return 0; } long long number = constructNumber(digits); cout << "拼接后的数字是:" << number << endl; return 0; } ``` ## 程序说明 1. 程序使用vector存储输入的数字序列 2. 当输入-1时,表示输入结束 3. constructNumber函数负责将数字拼接成完整的数 4. 在拼接过程中,会自动将数字4替换为6 5. 程序可以处理最多18位的数字(long long类型的限制) ## 使用示例 输入: ``` 3 1 4 1 5 9 2 6 -1 ``` 输出: ``` 拼接后的数字是:3115926 ``` 程序会逐个读取输入的数字,直到遇到-1为止,然后将这些数字拼接成一个完整的数,并将其中所有的4替换为6。 [2025-04-05 11:50:38 | AI问答 | 395点数解答]