急救!!!用c语言求4个实数的最大值和最小值~~~~

来源:百度知道 编辑:UC知道 时间:2024/06/19 09:27:45
#include <stdio.h>
void main()
{
float max(float a,float b,float c,float d);
float min(float a,float b,float c,float d);
float w,x,y,z,t1,t2;
scanf("%f%f%f%f",&w,&x,&y,&z);
t1=max(w,x,y,z);
t2=min(w,x,y,z);
printf("max=%5.2f,min=%5.2f\n",t1,t2);
}
float max(float a,float b,float c,float d)
{
float e;
if(a>b)
{
if(a>c)
{
if(a>d) e=a;
else e=d;
return(e);
}
else if(c>d) e=c;
else e=d;
return(e);
}
else if(b>c)
{
if(b>d)
e=b;
else e=d;
return(e);
}

}
float min(float a,float b,float c,float d)
{
float g;
if(a<b)
{
if(a<c)
{
if(a<d) g=a;
else g=d;
return(g);
}
else if(c<d) g=c;
else g=d;
return(g);
}
else if(

逻辑没判断全造成的; 一楼帮你修改正确了
不过这样太复杂了,容易遗漏
float max(float a,float b,float c,float d)
{
float e;
e = a;
if( b > e) e = b;
if( c > e) e = c;
if( d > e) e = d;
return e;

}
float min(float a,float b,float c,float d)
{
float e;
e = a;
if( b < e) e = b;
if( c < e) e = c;
if( d < e) e = d;
return e;
}
这样写 简单明了

#include <stdio.h>
void main()
{
float max(float a,float b,float c,float d);
float min(float a,float b,float c,float d);
float w,x,y,z,t1,t2;
scanf("%f%f%f%f",&w,&x,&y,&z);
printf("%f%f%f%f",w,x,y,z);
t1=max(w,x,y,z);
t2=min(w,x,y,z);
printf("max=%5.2f,min=%5.2f\n",t1,t2);
}
float max(float a,float b,float c,float d)
{
float e;
if(a>b)
{
if(a>c)
{
if(a>d) e=a;
else e=d