/*
创建一个数组,
实现函数init()初始化数组
实现empty()清空函数
实现reverse()函数完成输组元素的逆置.
要求:自己设计函数的参数,返回值
*/
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#define N 10 //定义数组大小
//初始化数组函数
void init(int str[]){
for (int i = 0; i < N; ++i){ //循环遍历数组
printf("请输入第%d个元素的值:\n", i + 1); //提示用户输入信息
scanf("%d", &str[i]); //保存用户输入的元素值
}
}
//清空数组函数
void empty(int str[]){
for (int i = 0; i < N; ++i){ //循环遍历数组
str[i] = 0; //将数组元素全更新为0
}
}
//逆置数组函数
void reverse(int str[]){
int left = 0; //设定左值
int right = N - 1; //设定右值
int temp; //变量temp是交换媒介
while (left < right){ //当左值小于右值
//实现数组元素的交换
temp = str[left];
str[left] = str[right];
str[right] = temp;
++left; //左值加1
--right; //右值减1
}
}
//输出数组函数
void print(int str[]){
for (int i = 0; i < N; ++i){ //循环遍历数组
printf("%d ", str[i]); //打印输出结果
}
}
//主函数
int main(){
int str[N]; //定义一个数组
init(str); //调用初始化数组函数
print(str); //调用输出数组函数
printf("\n"); //输出换行
reverse(str); //调用逆置数组函数
print(str); //调用输出数组函数
printf("\n"); //输出换行
empty(str); //调用清空数组函数
print(str); //调用输出数组函数
printf("\n"); //输出换行
system("pause");
return 0;
}