(1). 函数fun(…)是把数组a中各元素的中各位偶数拼接成一个反序的新数值存放到数组b中。假如某元素值为:654321,各位偶数拼接成一个反序的新数值246;元素值为:654300,各位偶数拼接成一个反序的新数值46。 (2). 主函数main()利用循环产生10个随机整数存入x数组并输出至屏幕,调用函数fun()产生数组y。最后输出数组y中的元素。
时间: 2024-03-09 13:49:09 浏览: 55
好的,我明白了你的问题。以下是符合要求的 C++ 代码实现:
```c++
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
void fun(int a[], int b[], int n) {
for (int i = 0; i < n; i++) {
int num = a[i], new_num = 0, digit = 1;
while (num > 0) {
int remainder = num % 10;
num /= 10;
if (remainder % 2 == 0) {
new_num += remainder * digit;
digit *= 10;
}
}
b[i] = new_num;
}
}
int main() {
const int n = 10;
int x[n], y[n];
srand(time(NULL));
for (int i = 0; i < n; i++) {
x[i] = rand() % 1000;
cout << x[i] << " ";
}
cout << endl;
fun(x, y, n);
for (int i = 0; i < n; i++) {
cout << y[i] << " ";
}
cout << endl;
return 0;
}
```
代码解释:
1. 首先定义了 `fun()` 函数,输入为整数数组 `a[]` 和输出为整数数组 `b[]`,还有数组长度 `n`。
2. `fun()` 函数采用循环遍历输入数组 `a[]` 中的每个元素,将元素中各位上的偶数拼接成一个新的数字,并存放在输出数组 `b[]` 中。
3. 主函数 `main()` 中,首先定义了数组长度 `n` 和两个整数数组 `x[]` 和 `y[]`。
4. 利用 srand() 和 time() 函数生成随机数填充输入数组 `x[]`,并输出到屏幕上。
5. 调用 `fun()` 函数生成输出数组 `y[]`。
6. 最后输出数组 `y[]` 中的元素。
希望这个代码能够帮助到你!
阅读全文