成都网站建设设计

将想法与焦点和您一起共享

c语言中函数返回值怎么写 c语言函数返回值怎么使用

C语言如何返回值

首先说明一下你的程序的问题与缺陷:

成都创新互联公司-专业网站定制、快速模板网站建设、高性价比玉门网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式玉门网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖玉门地区。费用合理售后完善,十多年实体公司更值得信赖。

1: return语句 只能返回一个值,而不能写成 “return h,l;”

2:你在main()中定义了h,l,而在调用cal()时,又定义了h,l,这两个h,l是完全不同的两组。即使你为cal()里的h,l赋值,那么返回到main()时,h,l仍然为0.

3:你在cal()里的scanf写的不好。两个%d之间最好什么都没有,加了逗号,可能会在读取时,h,l赋值错误。(具体请看我下面的程序)

下面是我的解法:

先问一下,你用的是TC2.0还是VC6.0?

如果是VC6.0,那么可以使用引用类型:

/*法一:使用引用*/

#includestdio.h

void cal(intch, intcl);    /*声明ch,cl为引用类型*/

void main()

{

int h=0,l=0;

cal(h, l);            /*这里将h,l传入cal()*/

printf("%d,%d",h,l);    

}

void cal(int ch, int cl)

{

scanf("%d%d",ch,cl);/*这里为ch,cl赋值*/

}

TC2.0中好像不支持引用类型。我没测试。

-------------------------

如果是TC2.0,那么可以使用指针:

/*法二:使用指针*/

#includestdio.h

void cal(int *ph, int *pl);    /*这里将ph,pl声明为指针*/

void main()

{

int h=0,l=0;

cal(h, l);        /*将变量h,l地址传过去。*/

printf("%d,%d",h,l);

}

void cal(int *ph, int *pl)

{

scanf("%d%d",ph,pl);    /*为ph,pl赋值*/

}

------------------

以上两种方法都可以解决你说的问题。

有问题请追问。

C语言-函数返回值return

①为什么需要return?

为了回答这个问题,

我打算用 模块思维 来解释。

②定义模块(形参模块)

定义函数:f(s)(a,b)

满足公式:s=a+b

函数名:f(s)

形参: a,b(公式中的 变量 )

函数返回值:return s

③调用模块(实参模块)

主函数:main()表示用户自己编写的部分

调用函数:f(s)(1,2)

满足公式:x=f(s)(1,2)

函数名:f(s)和定义函数一致,产生调用

实参 :1,2( 赋值 给公式的值)

求值:printf("%d\n",x),求x的值?

④值的传递过程

调用模块 中调用函数x=f(s)(1,2)

将实参1和2的值赋值给

定义模块 中的形参a和b

(实参到形参是单向传递,不可逆)

定义模块计算出s=a+b=1+2=3

定义模块 中的return s

将s的值赋值给

调用模块 中的函数f(s)(1,2)

即x=f(s)(1,2)=s=3

~

return s的作用

就是将定义模块中的s

赋值 给调用模块中的调用函数

如果没有return s

调用模块中的调用函数将永远没有定值

即所求x 无定值

这一点和数学不一样,

数学中

同一函数名的值是 通用 的,

C语言中

定义函数和调用函数的值是 隔离 的,

尽管函数名一样

如果不赋值,调用函数永远无定值。

c语言中,函数返回值怎么用?

return后接一个值。\r\n在调用这个函数的函数里面,调用它的时候希望获得一个值,如果不希望获得这个值的时候,用void声明就好。如果需要,比如说需要得到一个整形值\r\n就声明\r\nint func()\r\n在调用它的比如main里面\r\nfunc()的作用就可以相当于一个int型常数\r\n比如外面定义了\r\nint max(int a,int b)\r\n{\r\nreturn ab?a:b;\r\n}\r\n主函数里面是\r\nmain()\r\n{\r\nint A;\r\nA=max(1,2);\r\n}\r\n这时候就是通过max计算 12 则return 一个1 ,1

回答于 2022-11-16

C语言中 关于返回值 谁能具体讲一下 ?

你这个问题很笼统

我就大概说下返回值的东东吧

在C语言里面所谓返回值是说一个函数当他执行到return的时候他会停止执行下面的语句向引用他的地方传递一个值

下面举例子说明

int

pp(void

//那个int就代表返回值的类型

{

……

return

0;

//这个就代表给执行pp这个函数的地方返回int类型的0

}

如果在主函数中有一句a=pp();那么等号右边就等于int

类型的0

,如果a是int类型那么a就等于0

return后面还可以接表达式

int

kk(int

a,int

c)

{

return

a+c;

//这个就代表给执行pp这个函数的地方返回a+c的结果

}

如果调用的地方写int

k;

k=kk(3,4);那么结果就是k等于7

当然返回值类型不是只有int

还可以有char

float那些和结构体类型

如果你不需要返回的时候可以写void

kk(void){}这样就不会返回了

但是如果你是写

kk(void){}没有前面的void默认是给你在前面补上int的而不是无返回值

还有什么问题你再追问吧


网站名称:c语言中函数返回值怎么写 c语言函数返回值怎么使用
转载来源:http://chengdu.cdxwcx.cn/article/ddospch.html