C语言----打印数组中的每一个元素,并对数组逆序,最后将数组的值初始化为0

我们可以先创建一个整型数组,利用函数对该数组实现一系列的操作。
如下是一个主函数

#include"test.h"
int main(){ 
	int arr[] = {  1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
	int num = sizeof(arr) / sizeof(arr[0]);
	printf("数组:\n");
	print(arr, num);//打印数组。
	printf("数组逆序:\n");
	reverse(arr, num);
	print(arr, num);
	printf("数组初始化:\n");
	InitString(arr, num);
	print(arr, num);
	
	system("pause");
	return 0;
	
}

这里先初始化一个整型数组,并且求出数组元素的个数。

int arr[] = {  1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
int num = sizeof(arr) / sizeof(arr[0]);

然后将数组和元素的个数作为参数传入函数print()中,逐一打印数组中的元素,实现如下

void print(int string[],int n){ 

	for (int i = 0; i < n; i++){ 
			printf("%d ",  string[i]);
	}printf("\n");
}

接下来是reverse()函数,将数组和数组个数传入,利于数组的逆序,这里使用start,end作为数组的计数器。通过迭代的方式,将第一个元素与最后一个元素交换,依次想中间实现交换,直到start小于end。这里一定要注意数组的下标,要正确,因为数组的下标是从0开始的,数组的个数比下标多1,这里容易出现问题。具体函数如下:

void reverse(int string[],int n){ 
	int start = 0, end = n-1,m=0;//注意传入的数字是个数,比数组下标多一
	while (start<end){ 
		m = string[start];
		string[start] = string[end];
		string[end] = m;
		start++;
		end--;
	}int i = 0;
}

最后是数组的初始化,InitString(arr, num)。这个函数很贱但,就是将数组的每一个元素初始化为0,具体实现如下:

void InitString(int string[],int n){ 
	 int i = 0;
	 for (; i < n; i++){ 
	string[i] = 0;
	 }
}

以上就完成了,对整型数组的一系列的操作了。

    原文作者:草里多
    原文地址: https://blog.csdn.net/weixin_43815275/article/details/105718940
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞