数组和指针 笔试题

数组和指针 笔试题


2024年1月13日发(作者:)

数组和指针 笔试题

当然!以下是一个关于数组和指针的笔试题:

题目:编写一个函数,接收一个整型数组和数组的长度作为参数,并将数组中的元素逆序存放。

要求:只能使用指针来操作数组,不能使用任何其他的辅助数组或临时变量。

示例输入:arr = [1, 2, 3, 4, 5], length = 5

示例输出:arr = [5, 4, 3, 2, 1]

请编写代码实现该功能,并给出示例输入的输出结果。以下是示例代码:

```c

#include

void reverseArray(int *arr, int length) {

int *start = arr;

int *end = arr + length - 1;

while (start < end) {

int temp = *start;

*start = *end;

*end = temp;

start++;

end--;

}

}

int main() {

int arr[] = {1, 2, 3, 4, 5};

int length = sizeof(arr) / sizeof(arr[0]);

printf("原数组:");

for (int i = 0; i < length; i++) {

printf("%d ", arr[i]);

}

reverseArray(arr, length);

printf("n逆序后的数组:");

for (int i = 0; i < length; i++) {

printf("%d ", arr[i]);

}

return 0;

}

```

以上代码定义了一个reverseArray函数,该函数通过使用指针实现了将数组元素逆序存放的功能。在主函数中,我们定义了一个示例数组arr,并计算出数组的长度。然后调用reverseArray函数对数组进行逆序操作,并打印出逆序后的数组。根据示例输入,输出结果应为[5, 4, 3, 2, 1]。


发布者:admin,转转请注明出处:http://www.yc00.com/news/1705118912a1394306.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信