
C语言比较2个数字的最大值
{int a,b,c;
scanf("%d%d",&a,&b);
if(a>b) c=a
else c=b;
printf("\nmax is:%d",c);
}
②main()
{int a,b,c;
scanf("%d%d",&a,&b);
c=max(a,b);
printf("\nmax is %d",c);
}
int max(int x,int y)
{int z;
if(x>y) z=x;
else z=y;
return(z);
}
本人新手,请问下上面这2个程序我个人感觉结果都一样的 为什么第二个程序要专门定义一个“max” ?功能上有什么不一样?顺便问下 有的程序前面加include<stdio.h> 有什么区别? 展开
一、实现效果的确是相同的,不同就定义MAX方法,通过函数max()来进行比较操作,定义函数的好处就是同样的功能方便多次调用。
即:A事件把【比较】函数写在了自己的函数体内;B事件调用了【比较】的函数。
在实际应用中,假设十个事件都需要【比较】功能,此时:A的做法就是将函数体重复写十遍,而B做法只是简单的调用MAX()即可。
二、<stdio.h> 就是指 “standard input & output"(标准输入输出),源代码中如用到标准输入输出函数时,就要包含这个头文件。
例如比较函数中的:printf("\nmax is:%d",c)。
其他的包括:
扩展资料:
C语言--调用函数。
创建 C 函数时,会定义函数做什么,然后通过调用函数来完成已定义的任务。
当程序调用函数时,程序控制权会转移给被调用的函数。被调用的函数执行已定义的任务,当函数的返回语句被执行时,或到达函数的结束括号时,会把程序控制权交还给主程序。
调用函数时,传递所需参数,如果函数返回一个值,则可以存储返回值。例如:
调用的max函数:
把 max() 函数和 main() 函数放一块,编译源代码。当运行最后的可执行文件时,会产生下列结果:
Max value is : 200。
参考资料:
至于你所说的#include<stdio.h>问题,这是指出程序引用的是哪个头文件,在你的这个程序里,你用到了scanf()和printf()这两个函数来进行输入和输出的操作,这两个函数你并没有写出他们的过程,就可以调用,这是因为这是系统写好的,被包含在这个头文件里,加上这条语句就是告诉编译器,遇到这些没有定义的函数或者属性的时候,可以去指定的头文件中寻找定义,告诉它你是调用的哪个头文件中的。具体的这些预处理指令和编译过程,你可以买本写的详细的书去看看,再多看看MSDN的,上面有很多自带的功能函数,及要使用它们要添加什么头文件引用。
定义函数max,使得其他地方也可以调用。
如果使用了stdio库中的函数,就要包含stdio.h头文件。