你要输出三个数, 你的程序只输出俩数字的比较:
#include
int main()
{
int a,b,c;
printf("input three number:");
scanf("%d,%d,%d",&a,&b,&c);
if (a>=b) //a>=b
if (b>=c) // a>b>c
printf("%d,%d,%d\n",c,b,a);
else
if (a>=c) // a>c>b
printf("%d,%d,%d\n",b,c,a);
else // c>a>b
printf("%d,%d,%d\n",b,a,c);
else // a if (a>=c) //c printf("%d,%d,%d\n",c,a,b);
else // a
else // a printf("%d,%d,%d\n",a,b,c);
return 0;
}
#include
void
main(){
float
a,b,c,d;
printf("请输入任意三个数");
scanf("%f,%f,%f",&a,&b,&c);
if(a>b)
{d=a;
a=b;
b=d;}
if(a
c=a;
a=d;}
if(b>c)
{d=b;
b=c;
c=d;}
printf("三个数中最大的数是%f",d);
}
这样试试,还有,最好不要用float类型进行比较,可能会存在误差。
你这个程序写的有点乱呃
一个是if语句下面没有{}
再一个这个从小到大排的逻辑也不对
比如c>a>b,满足a>b 直接printf("%d,%d\n",b,a);,可其实c最大呢
if(b>c)
t=b;
b=c;
c=t;
少括号啊
#include
void main()
{
int a,b,c,t;
printf("请输入三个整数:");
scanf("%d,%d,%d",&a,&b,&c);
if(a>b){
t=a;
a=b;
b=t;
}//执行到这里表示满足a小于b,接下来把c插进去就行了
if(cprintf("%d,%d,%d\n",c,a,b);
else if(c>b)
printf("%d,%d,%d\n",a,b,c);
else
printf("%d,%d,%d\n",a,c,b);
}