问题: 创建一个数组,
实现函数init()初始化数组、
实现empty()清空数组、
实现reverse()函数完成数组元素的逆置。
要求:自己设计函数的参数,返回值。
问题解析: 函数书写主要就是传值问题, 只要这个问题解决就没什么问题
#include <stdio.h>
#include <stdlib.h>
//初始化数组
void init(int arr[10], int size, int val) {
printf("初始化数组为:");
for (int i = 0; i <= size; i++) {
arr[i] = val;
printf("%d", arr[i]);
}
printf("\n");
}
//数组清空
void empty(int arr[10], int size) {
printf("数组清空为:");
for (int i = 0; i <= size; i++) {
arr[i] = 0;
printf("%d", arr[i]);
}
printf("\n");
}
//数组逆置
void reverse(int arr[10], int size) {
printf("数组逆置为:");
int tmp;
int left = 0;
int right = size - 1;
for (int i = 0; left <= right; i++) {
tmp = arr[left];
arr[left] = arr[right];
arr[right] = tmp;
left++;
right--;
}
for (int i = 0; i < size; i++) {
printf("%d", arr[i]);
}
printf("\n");
}
int main() {
int arr[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
int len = sizeof(arr) / sizeof(int);
//逆置数组
reverse(arr, len);
//初始化数组为9
init(arr, len, 8);
//清空数组
empty(arr, len);
system("pause");
return 0;
}
代码结果如下: