1. c语言,能解释一下为什么第一个函数可以交换,第二个不能交换啊有什么区别
第一个传递的数组,实际传递的是数组首元素地址,可以在函数中间接访问将数组元素改了
第二个是传值,改的只是函数形参,实参没变化
2. c语言,里面的fun不明白
第一个fun()是这个函数的定义,就是规定fun()函数是什么样子的,有什么参数,有什么返回值,内部实现什么功能。就好比自己定义的一个数学公式,起个名字叫fun()。
第二个fun()是使用这个函数,因为根据上面的它的定义,它没有返回值,有两个传入参数,所以使用的使用就写成“ fun(a,n); ”这样的语句来执行。就好比一个数学上的长方形面积公式,面积=长×宽,那么计算面积就用长和宽这两个量来相乘。虽然这里的fun()函数的具体功能当然不是用来计算长方形的面积,但是道理是一样的。
具体的fun()函数的功能的话,从参数来看,是把一个数组的首地址和一个整数作为参数传递进去,然后检查有没有和 0 有关系的的数组元素,有的话就打印出什么信息来,否则的话就打印一个数。
基本上就是这样了。
如有帮助,烦请点采纳,谢谢!
3. 如何在一个C语言程序中设置两个函数
c语言中一个完整的函数由函数首部和函数体构成,而且定义函数时两者都是必不可少的。
函数定义的一般形式如下:
类型标识符
函数名(形参表列)
//
这是函数首部
//
以下{
}内的是函数体
{
说明部分
执行部分
}
举例说明如下:
//
定义一个不带返回值的函数
//
函数功能:输出形参的值
void
fun(int
a,
int
b)
{
printf("%d,
%d\n",
a,
b);
}
//
定义一个带返回值的函数
//
函数功能:返回2个整数数的最大值
int
fun(int
a,
int
b)
{
return
a>b
?
a
:
b;
}