c编程:给定一个长度为n的数组a和一个整数size,请你编写一个函数,void reverse(int a[], int size),实现将数组a中的前size个数翻转。 输出翻转后的数组a。 输入格式: 第一行包含两个整数n和size。1≤size≤n≤1000 第二行包含n个整数,表示数组a
时间: 2024-02-15 20:04:18 浏览: 125
好的,我可以帮你解决这个问题。以下是C语言的代码实现:
```c
#include <stdio.h>
void reverse(int a[], int size) {
for (int i = 0; i < size / 2; i++) {
int temp = a[i];
a[i] = a[size - i - 1];
a[size - i - 1] = temp;
}
}
int main() {
int n, size;
scanf("%d %d", &n, &size);
int a[n];
for (int i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
reverse(a, size);
for (int i = 0; i < n; i++) {
printf("%d ", a[i]);
}
return 0;
}
```
首先,我们定义了一个 `reverse` 函数,它接受一个整型数组 `a` 和一个整数 `size` 作为参数。该函数使用一个循环来反转数组中前 `size` 个元素。具体来说,它将第 `i` 个元素与第 `size - i - 1` 个元素交换,直到处理完所有需要反转的元素。
接下来,我们在 `main` 函数中读入数组 `a` 和需要反转的元素个数 `size`,并调用 `reverse` 函数来反转前 `size` 个元素。最后,我们输出反转后的整个数组。
如果你有任何问题,请随时问我。
阅读全文