C语言下的创建一个数组, 实现函数init()初始化数组、 实现empty()清空数组、 实现reverse()函数完成数组元素的逆置。 要求:自己设计函数的参数,返回值。

来源:互联网 发布:活动网络正在识别 编辑:程序博客网 时间:2024/05/29 04:45
#define _CRT_SECURE_NO_WARNINGS 1#include <windows.h>#include <stdio.h>#include <string.h>void menu(){printf("***********  0、初始化数组 **********\n");printf("***********  1、清空数组   **********\n");printf("***********  2、逆置数组   **********\n");}void init(char arr1[],int sz)//把数组初始化为0(可以初始化为其他数){int j = 0;for(j=0; j<sz; j++){arr1[j] = 0;printf("%d ",arr1[j]);}}void empty(char arr2[],int sz)//数组元素清空为0{int j = 0;for(j=0; j<sz; j++){arr2[j] = 0;printf("%d ",arr2[j]);}}char reverse(char arr3[],int sz)//数组里的元素逆序排布{int i = 0;int left = 0;int right = sz-1;for(i=0; i<sz; i++){while(left<right){char temp = arr3[left];arr3[left] = arr3[right];arr3[right] = temp;left++;right--;}printf("%c ",arr3[i]);}return arr3[i];}enum Option{init1,empty1,reverse1//枚举,首元素没被初始化就是0,往后一次加1};int main(){char arr[] = "abcdefg";int ret = strlen(arr);int i = 0;int a = 0;menu();printf("请对数组进行操作:");scanf("%d",&a);switch (a){case init1:printf("初始化数组:");init(arr,ret);printf("\n");break;case empty1:printf("清空数组:");empty(arr,ret);printf("\n");break;case reverse1:printf("数组元素逆置:");reverse(arr,ret);printf("\n");default:break;}system("pause");return 0;}



0 0