分类：电脑/网络-程序设计
问题：c语言三个数比大小#include&lt;stdio.h&gt; 
#include <std.h>int main(){{  int max(int x,int y);  int a,b,c,d;  printf("please input three number:\n");  scanf ("%d,%d,%d",&a,&b,&c);  d=max(a,b);  return 0;}int max(int x,int y);{  int z;  if(x>y)z=x;  else z=y;  return(z);}if(c#include <std.h>int main(){{  int max(int x,int y);  int a,b,c,d;  printf("please input three number:\n");  scanf ("%d,%d,%d",&a,&b,&c);  d=max(a,b);  return 0;}int max(int x,int y);{  int z;  if(x>y)z=x;  else z=y;  return(z);}if(c>d)printf("%d\n",c);else printf("%d\n,d");}三个数 比大小 系统报错 一个  受累帮我看看  初学者 自己没找到 谢谢
回答：（1）对函数的定义和实现是有区别的对函数的定义语句最后右括号的后面需要分号而函数实现最后右括号的后不能增加分号，否则编译器将它识别为定义，你的max函数的定义和实现后面都加了分号，编译器会报告max没有实现（2）对于在一对大括号中的代码，编译器会认为是一个代码块，编译器认为代码快中的定义的作用域仅仅试代码块，你的max定义就在一个代码块中，你的变量c和d将被报告没有定义；（3）你把max的实现放在了main方法中，虽然可以，但是不是好习惯，建议单独列出，下面是我给你的修改结果：#include <stdio.h>int max(int x,int y);//函数max的定义int main(){int a,b,c,d;printf("please input three number:\n");scanf ("%d,%d,%d",&a,&b,&c);d=max(a,b);if(c>d)printf("%d\n",c);else printf("%d\n,d");return 0;}int max(int x,int y)//函数max的实现{if(x>y)return x;return y ;}