大家进来帮我看一个C语言程序

来源:百度知道 编辑:UC知道 时间:2024/05/16 06:44:11
就是3个数比大小我这样输那错了
main()
{
int a,b,c,d;
scanf(%d%d%d",&a,&b,&c);
d=(a>b)?((a>c)?a:c):((b>c)?b:c);
printf("%d",d);
}
双引号 那是我打时忘了
我的意思除着以外

哦,对不起啊!呵呵
我编译了一下!没发现什么错误!只是在输入a,b,c时要以回车输入下一个数!建议你改成scanf("%d %d %d",&a,&b,&c);中间使用空格!这样输入时只要在两个数之间加上空格就好了!

什么意思?你是准备把3个数都输出来。按你现在的方法,可以先把d(最大数)和a,b,c比较一下(就是找一个和d相同的剔除掉),根据d把a,b,c去掉一个最大值,然后再拿2个数就行了。

3个数比大小你完全没必要用现在这种方式。给你个参考(x,y,z即3个数):
#include <stdio.h>
void main()
{
int x,y,z,temp;
printf("Please input three numbers:");
scanf("%d,%d,%d",&x,&y,&z);

if (x<y)
{temp=x; x=y; y=temp;}; //使x>=y

if (y<z)
{temp=z; z=y; //使temp>z
if (x>=temp) y=temp;
else {y=x; x=temp;}
}

printf("x=%d, y=%d, z=%d",x,y,z);
}

应该是没有变量吧