当前位置:首页 » 编程语言 » c语言子函数调用

c语言子函数调用

发布时间: 2024-01-02 13:06:59

A. 在C语言中怎么将子函数中的数组和函数调用出来

来传送子函数中的数组有多种方法——可以通过函数返回值返回地址传递数组;也可以通过函数输入参数来传递数组;还可以通过全局变量来传递数组。

子函数本身可以直接在作用域中进行调用。

1、通过函数返回值返回地址传递数组。

声明函数时需要声明函数返回值类型为对应数组的地址,此时可以返回数组的地址,结合数组元素的地址关系可以传递整个数组,同时可以根据数组的特性传递多个参数。

注意:子函数是C语言模块化编程思想的核心,其方法是通过输入接口和输出接口实现对黑盒的调用,故对其内部数据的输入和调用也需要通过输入接口、输出接口和程序的公共区域实现。

B. C语言中一个子函数怎么调用另一个子函数的运算

方法很多。

主要是要将不同类型传递给fun2处理。

最简单float类型最大,fun2的参数类型就定义为float,然后运算结果返回float类型。在main函数用a3,b3,c3接收的时候强转型。

另一种方法,把变量都转换成一种类型传递。这里用union共用体类型就比较适合。还方便扩展,如果想添加其他类型还可以在union里添加。

我这里代码就用第二种方法写。

#include <stdio.h>

typedef union data{

char c;

int i;

float f;

}DA;

void fun1(void);

DA fun2(DA n1,DA n2,int nType);//nType=1:char类型。nType=2:int类型。nType=3:float类型。

int main()

{

fun1();

return 0;

}

void fun1(void)

{

char a1=1,a2=2;

int b1=100,b2=300;

float c1=5.1,c2=6.8;

DA n1,n2;

n1.c=a1,n2.c=a2;

char a3=fun2(n1,n2,1).c;

n1.i=b1,n2.i=b2;

int b3=fun2(n1,n2,2).i;

n1.f=c1,n2.f=c2;

float c3=fun2(n1,n2,3).f;

printf("a3=%c b3=%d c3=%.2f ",a3,b3,c3);

}

DA fun2(DA n1,DA n2,int nType)//nType=1:char类型。nType=2:int类型。nType=3:float类型。

{

DA n3;

switch(nType)

{

case 1:n3.c=n1.c+n2.c;break;

case 2:n3.i=n1.i+n2.i;break;

case 3:n3.f=n1.f+n2.f;break;

}

return n3;

}

C. C语言子函数是否可以互相调用

语法上可以的,但工程上会尽量避免。

另外,递归就相当于一种子函数相互调用的极限形式,相当于两个子函数相同。

D. C 语言程序中子函数能不能调用子函数本身

可以。嵌套调用或递归调用子函数。

在C语言中,函数嵌套允许在一个函数中调用另外一个函数。例如
funca()
{
funcb();
}
这个就叫做嵌套调用,它是一个语言提供的程序设计的方法,也就是语言的特性。

而递归,是一种解决方案,一种思想,将一个大工作分为逐渐减小的小工作,比如说一个人要搬50块石头,他想,只要先搬走49块,那剩下的一块就能搬完了,然后考虑那49块,只要先搬走48块,那剩下的一块就能搬完了……以此类推的思考,递归是一种思想,只不过在程序中,就是依靠函数嵌套这个特性来实现了。例如
funca()
{
if(statement1)
funca();
else
exit(0);
}递归最明显的特点就是,自己调用自己(就是函数嵌套调用)

热点内容
linux查看ftp日志 发布:2024-11-30 06:33:19 浏览:474
设置截屏存储 发布:2024-11-30 06:29:00 浏览:393
jpg算法 发布:2024-11-30 06:28:55 浏览:194
怎么删除u盘中的文件夹 发布:2024-11-30 06:28:20 浏览:215
iphone文件夹打开 发布:2024-11-30 06:13:43 浏览:297
如何配置Javaweb环境 发布:2024-11-30 06:09:24 浏览:120
怎么使用Androidapi 发布:2024-11-30 06:08:43 浏览:60
包钢服务器地址 发布:2024-11-30 06:06:27 浏览:562
繁体压缩 发布:2024-11-30 06:06:22 浏览:38
osql执行sql 发布:2024-11-30 06:01:37 浏览:13