今天来补充一下上一篇文章的一个小要点哈,因为想写的东西比较多所以单独给列出来了哈~
数组做函数参数?
在使用自定义函数中,难免要用到数组作为函数参数传入,因此今天专门以一个例子来讲一下
示例:
题目内容:写⼀个函数对将⼀个整型数组的内容,全部置为-1,再写⼀个函数打印数组的内容。
分析:
要想写一个代码题目,首先要逐步分析题目含义,逐步解决
那我们不妨一步一步来:
1.写一个整形函数数组
int main() { int arr[] = {1,2,3,4,5,6,7,8,9}; return 0; }
2.求数组长度:因为我们想将数组的值全部置为-1,所以说我们得先知道数组的一些参数
int main() { int arr[] = {1,2,3,4,5,6,7,8,9}; int sz = sizeof(arr) / sizeof(arr[0]); return 0; }
3.创立置换自定义函数:知道数组的参数之后我们可以创立自定义函数将我们求的参数传入
int main() { int arr[] = {1,2,3,4,5,6,7,8,9}; int sz = sizeof(arr) / sizeof(arr[0]); set_arr(arr, sz); return 0; }
这里需要注意咯,我们创立的自定义函数set_arr()需要传入两个参数,称为实参,这时候注意哈,传参数组时候,第一个只需要写数组名称arr即可,不需要后面的”【】“!!!,后面第二个参数写数组的长度sz
细究的话我们指针章节再说
再强调一下!!!实参写
4.编写置换自定义函数:
void set_arr(int arr[], int sz) { int i = 0; for (i = 0; i < sz; i++) arr[i] = -1; }
这里再强调一下,需要形参接收上一步传入的实参,不过注意,这次形参数组后面得写"[]",
5.编写打印函数:(与置换函数同理)
void printf_arr(int arr[], int sz) { int i = 0; for (i = 0; i < sz; i++) printf("%d", arr[i]); }
6.总览全部代码:
//数组做函数参数 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> void set_arr(int arr[], int sz) { int i = 0; for (i = 0; i < sz; i++) arr[i] = -1; } void printf_arr(int arr[], int sz) { int i = 0; for (i = 0; i < sz; i++) printf("%d", arr[i]); } int main() { int arr[] = {1,2,3,4,5,6,7,8,9}; int sz = sizeof(arr) / sizeof(arr[0]); set_arr(arr, sz); printf_arr(arr, sz); return 0; }
!!!注意一下调用函数之前先声明或者定义哈
欧克,有错指正哈,期待下次见面!