创建一个整形的数组, 分别实现函数init()初始化数组、 实现empty()清空数组、 实现reverse()函数完成数组元素的逆置。
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
void init(int arr[], int len){
int i = 0;
printf("请输入数字,输入后按Enter确认\n");
for (i = 0; i < len; i++){
scanf("%d", &arr[i]); //初始化,有点笨办法的感觉,手动输入一个数组
}
printf("初始化得到数组:\n");
for (i = 0; i < len; i++){
printf("%d", arr[i]);
}
}
void reverse(int *arr, int len){
int temp = 0, i = 0;
for (i = 0; i < len / 2; i++){
temp = arr[i];
arr[i] = arr[len - 1 - i];
arr[len - 1 - i] = temp;
}
printf("逆置后的数组为: \n");
for (i = 0; i < len; i++){
printf("%d", arr[i]);
}
}
void empty(int arr[], int len){
int i = 0;
for (i = 0; i < len; i++){
arr[i] = 0;
}
printf("清空后的数组为: \n");
for (i = 0; i < len; i++){
printf("%d", arr[i]);
}
}
这一部分我写的特别累赘,可能基本功还不够好,不会简化~
记得花括号写在上一行(老师说的)
void menu(){
printf("*********************************************\n");
printf("**************1、初始化数组****************\n");
printf("**************2、数组元素逆置**************\n");
printf("**************3、清空数组元素**************\n");
printf("**************4、退出该程序******************\n");
printf("*********************************************\n");
}
int main(){
int *arr;
int n = 0;
int m = 0;
int a = 0;
int count = 1;
printf("数组的大小:");
scanf("%d", &n);
arr = (int *)malloc(n);
menu();
while (count){
printf("\n请选择您的操作:\n");
scanf("%d", &a);
switch (a){
case 1:init(arr, n - 1);
count = 1;
break;
case 2:reverse(arr, n - 1);
break;
case 3:empty(arr, n - 1);
break;
case 4:count = 0;
break;
default:
printf("输入错误,请重新输入:\n");
}
}
system("pause");
return 0;
}
输出结果:
养成良好的编程习惯!从今天就改正!!!
//大厂boss喜欢的代码编写风格
int main(){
system("pause");
return 0;
}