高分急求!C语言程序设计问题,求高手解答!

#include<stdio.h>intmain(){intmax(intx,inty);inta,b,c;scanf("%d,%d",&a,&b);c=max(a,b)... #include <stdio.h>
int main ()
{
int max (int x,int y);
int a,b,c;
scanf("%d,%d",&a,&b);
c=max(a,b);
printf("max=%d\n",c);
return 0;
}
int max(int x,int y)
{
int z;
if(x>y)z=x;
else z=y;
return(z);
}

#include <stdio.h>
int main ()
{
int max (int x,int y);
int a,b,c;
scanf("%d,%d",&a,&b);
c=max(a,b);
printf("max=%d\n",c);
return 0;
}
int max(int x,int y)
{
int z;
if(x>y)z=x;
else z=y;
return(z);
}

输出结果 8,5
max=8

1、max括号里的x,y是什么?详细解释下它的作用
2、if (x>y)z=x;这一行,请问程序里并未对xy做任何声明,为什么可以直接调用?
3、return(z);为什么不是0而是z,什么情况用0什么情况用z呢?
4、c=max,括号后面怎么成ab了,不是xy的么?
展开
 我来答
云淡风轻in苏州
推荐于2016-08-02 · TA获得超过599个赞
知道小有建树答主
回答量:418
采纳率:0%
帮助的人:555万
展开全部
俩程序一样的啊。。。
1、max里的x,y是外部传入的两个整数,作为待比较的参数,比较后可以返回两者间的较大值
2、x,y是函数max的形式参数,所以已有定义,不需要max里面再重新声明
3、根据函数max的功能来看,最终是要返回较大值,而z是xy两者中的较大值,故肯定返回z。除非xy一个为负数一个为0或者两个都为0才返回0,不过这种情况与返回z是一样的
4、c=max(a,b),ab是max函数的实参,xy是max函数的形参,形参和实参的名称并不要求必须一致
更多追问追答
追问
回答的很好,就是第3答,还不是很懂,像那种简单的输出 This is a C program,为什么也是返回0呢?
追答
返回0?一般的返回值是用来标记函数处理状态的,0表示正常退出,非0表示异常退出函数,就像main函数里面最后也会返回0表示程序正常退出!
wen上敏
2014-11-21
知道答主
回答量:20
采纳率:0%
帮助的人:7万
展开全部
1、max括号里的x,y是max函数的两个形参参数 目的就是用来传递实参的 这里的实参是你输入的两个数

2 if (x>y)z=x;这一行,程序里并未对xy做任何声明 这里声明了int max(int x,int y)

3 因为你要比较的是两个数的大数 输出大数 所以返回的肯定是z
4 c=max x y 只不过是两个实参而已 名字随便起 c=max(a,b)这句的意思是调用c=max(x,y)

并将a传给x b传给y
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式