回复:(vben)编程中国被采集有感-->静夜思转移
好了,弄得我好像**似的。。先向大家说一声对不起。。。
1.我是刚学C语言一星期。。我有看书并认真思考
2.关于这问题,我自己结合其他书籍加上思考,在发这个帖子前,已经想通了
其实我是不懂这函数执行程序的流程。。并不是不懂函数的功能。。晕~
弄的我好像没看书就来问。。。你说看书和等别人回复。。谁的时间更长...
福尔摩斯的解译我有不同看法:
c=max(a,b) 赋值语句是用来干什么的?
max(a,b),它是通过自定义函数,来选取 a 和 b 中的较大者(应付菜鸟理解倒是可以)
是自定义函数,但是不一定是选取a b较大者。。而是在a b两值选取一个合适的值代入
max(a,b)的值就是return的返回值
将这个返回值 给 c赋值
这样理解对于你可能很好理解,但对于初学者来说,可不一定,应该这样解译:
#include <stdio.h>
int max(int x,int y)
{
int z;
if(x>y) //如果x大于y
z=x; //把x的值交给z
else
z=y; //否则把y的值交给z
return z; //返回z的值(也就是把这个结果返回给主函数,完成它的最后任务)
}
int main(void) //主函数,C中,不管有多少函数,程序总是从main()函数开始执行。
{
int a,b,c;
scanf("%d%d",&a,&b);
c=max(a,b);
printf("%d\n",c); //打印c的值
return 0 ;
}
当main函数执行到c=max(a,b)时候就会调用
max(int x,int y)来比较数值,当执行到return z时候。z的值先
返回到
max(int x,int y)函数,再返回到
c=max(a,b)
这样比你那样好理解得多
好吧,再说一声对不起,希望大家不要生我气~~
开玩笑是可以,我也不是固执的人,但要分什么情节。。。
月光影,对不起啦~可以的话,大家做朋友吧