C语言中return 0与return(z)语句的区别
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言中return 0与return(z)语句的区别
用一个函数来实现求两个整数中的较大者。
在主函数中调用此函数并显示结果。
# include < stdio . h >
int main (){
int max ( int x int y );
int a , b , C ;
scanf ("% d ,% d ",& a ,&Ь);
c=max ( a ,b );
printf (" max =% d \ n ", c );
return 0;
//求两个整数中的较大者的max 函数(调用作为主函数一个子函数)
int max ( int x , int y )
int z ;
if ( x > y ) z=x;
else z=y ;
return ( z );
运行结果:
8,5
max=8
程序用max ( a , b )调用max 函数。
在调用时将 a 和 b 作为max 函数的参数(称为实际参数,调用时的赋值参数)的值分别传送给max 函数中的参数x 和y (称为形式参数),然后执行max 函数的函数体,使max 函数中的变量z 得到一个值(即x 和y 中大者的值), return ( z )的作用是把z 的值作为max
函数值带回到程序第“c=z”的右侧(主函数调用max 函数的位置),取代max ( a , b ),然后把这个值赋给变量c 。
在一个函数内部可以直接赋值,c=z,但是c 是主函数变量,z是调用函数的变量,直接赋值行不通,不要以为在max 函数中求出最大值z 后就会自动地作为函数值返回调用处,必须用return 语句指定将哪个值作为调用函数返回值,供主函数使用。
通过调用函数把z变量为指定该函数返回值return(z),这样才可以赋值给主函数一个变量,因此不同函数间(跨函数之间〉必须return(Z)语言来指定变量来赋值,直接赋值仅限一个函数的内部。
程序中main()及max()函数都有return 语句,均定义为整型,都需要用return 语句为函数指定返回值。
但是main主函数中的return 语句指定的返回值一般为0,结束函数的运行。
而max 调用函数的返回值是max 函数中求出的两数中的最大值Z ,只有通过return 语句才能把求出的z 值作为调用函数的值并返回调用它的main 函数中,并把此值赋给变量 c 。
只有这种赋值才用到return (Z)语句。
一般情况均用return 0语句,也不是什么情况都用return 0语句来结束函数正确执行过程。
c语言中,return 0什么时候不用加该语句?
函数不返回的情况下无须写出return语句,例如无限循环、调用不返回的函数(exit 语句)等函数返回。
返回类型不是int的情况下,若返回类型是void,则没有写出return的必要性,可在需要提前返回的情况下写出return来进行返回操作。
scanf 和printf 都是C 的标准输入输出函数。
scanf 函数:输入变量a 和b 的值。
scanf 后面圆括号中包括两部分内容。
一是双引号中的内容,指定输入的数据按什么格式输入。
“% d ”的含义是“以十进制整数形式”。
二是输入的数据放入各变量对应地址处,相当赋给各个变量。
scanf 函数中指定的是实际参数 a 和b ,在a 和b 的前面各有一个&,“&”表示地址符,& a 的含义是“变量a 的地址”,&b是“变量 b 的地址”。
执行scanf 函数,从键盘输入两个整数,放到变量a 和 b 的地址,相当分别赋给变量 a 和 b 。
用printf来表示输出结果,在执行printf 函数时,对双引号括起来的max =("% d\n",c)将max =原样输出,% d 由变量c 的值取代,\n 的作用是换行,表示光标移至下一行。