C语言:三个整数中的最大值#includemain(){\x05int x,y,z,m; //定义整形变量x,y,z,m\x05int max(int a,int b,int c);\x05//声明函数max\x05printf ("请输入三个整数:\n");\x05\x05//输出提示信息\x05scanf("%d,%d,%d",&x,&y,&z);\x0

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/30 14:13:08
C语言:三个整数中的最大值#includemain(){\x05int x,y,z,m; //定义整形变量x,y,z,m\x05int max(int a,int b,int c);\x05//声明函数max\x05printf (

C语言:三个整数中的最大值#includemain(){\x05int x,y,z,m; //定义整形变量x,y,z,m\x05int max(int a,int b,int c);\x05//声明函数max\x05printf ("请输入三个整数:\n");\x05\x05//输出提示信息\x05scanf("%d,%d,%d",&x,&y,&z);\x0
C语言:三个整数中的最大值
#include
main()
{
\x05int x,y,z,m; //定义整形变量x,y,z,m
\x05int max(int a,int b,int c);\x05//声明函数max
\x05printf ("请输入三个整数:\n");\x05\x05//输出提示信息
\x05scanf("%d,%d,%d",&x,&y,&z);\x05\x05//输入x,y,z的值
\x05m=max(x,y,z);\x05\x05\x05//调用max函数
\x05printf("最大的整数是%d.\n",m);\x05\x05//输出结果
}
int max(int a,int b,int c)
{
\x05if (a>b)
\x05\x05if(a>c) return a;
\x05\x05else return c;
\x05else if(b>c) return b;
\x05\x05 else return c;
}
程序输出的一直是第一个数a,
我怎么也找不到错误在哪啊,

C语言:三个整数中的最大值#includemain(){\x05int x,y,z,m; //定义整形变量x,y,z,m\x05int max(int a,int b,int c);\x05//声明函数max\x05printf ("请输入三个整数:\n");\x05\x05//输出提示信息\x05scanf("%d,%d,%d",&x,&y,&z);\x0
你输入数的时候用逗号隔开了还是用空格隔开的?你的scanf函数里面规定的是用逗号隔开三个整数.如果你用空格隔的,默认你只输入了第一个数,后两个默认是0,所以每次比较得出的最大值肯定是第一个数a啦.希望我的解释对你有用哦~愿采纳~