当前位置: 代码迷 >> C语言 >> 关于最大和最小数的一个题
  详细解决方案

关于最大和最小数的一个题

热度:255   发布时间:2007-08-10 18:00:50.0
关于最大和最小数的一个题

求三个整数中的最大值和最小值,三个整数由键盘输入


main()
{ int x,y,z,a;
scanf("%d,%d,%d",&x,&y,&z);
a=max(x,y,z);
printf("max=%d\n",a);
a=min(x,y,z);
printf("min=%d\n",a);
getch();
}


int max(i1,i2,i3)
int i1,i2,i3;
{ int m1;
if((i1>=i2)&&(i1>=i3)) m1=i1;
if((i2>=i1)&&(i2>=i3)) m1=i2;
if((i3>=i1)&&(i3>-i2)) m1=i3;
return(m1);
}

int min(i1,i2,i3)
int i1,i2,i3;
{ int m1;
if(i1<=i2)
if(i1<=i3) m1=i1;
else m1=i3;
else if(i2<=i3) m1=i2;
else m1=i3;
return(m1);
}



输入789三个数 结果显示 max=12803 min=789
输入156三个数 结果显示 max=12803 min=156

是在WIN-TC下写的代码
请哪位高手给指点下

搜索更多相关的解决方案: 小数  

----------------解决方案--------------------------------------------------------
您老的代码风格是若干年前的,不知道您老看的什么古董书。
----------------解决方案--------------------------------------------------------
[CODE]#include<stdio.h>
void main()
{
int num[3],max,min,i;
printf("请输入3个数:\n");
for(i=0;i<3;i++)
scanf("%d",&num[i]);
max=num[0];
min=num[0];
for(i=1;i<3;i++)
{
if (max<num[i])
max=num[i];
if (min>num[i])
min=num[i];
}
printf("最大值为%d\n",max);
printf("最小值为%d\n",min);
}[/CODE]
这样简单多了...
----------------解决方案--------------------------------------------------------
貌似古董比较值钱滴 看完了得考虑拿去拍了 ...

各位还是先解决问题吧.....
----------------解决方案--------------------------------------------------------

max(max(a,b),c)不就可以了?

写3个不是太麻烦?


----------------解决方案--------------------------------------------------------
这是我的
int min(int a,int b)
{ return a<b?a:b;
}
int max(int a,int b)
{ return a>b?a:b;
}
main()
{ int x,y,z,a;
scanf("%d%d%d",&x,&y,&z);
a=max(x,max(y,z));
printf("max=%d\n",a);
a=min(x,min(y,z));
printf("max=%d\n",a);
getch();
}
我测试了你的程序 编译通过 运行结果也正确
你是输入数据的时候出错了吧
如果你想输入 6 7 8 三个数字
按照你的程序应该是输入 6,7,8回车

----------------解决方案--------------------------------------------------------
应该输入7,8,9
你试试看
----------------解决方案--------------------------------------------------------
scanf("%d,%d,%d",&x,&y,&z);
你输入的时候要按照格式来输入的,必须每个数字之间加“,”因为是在scanf里这样写的,最好是%d之间不要加“,”,不然你输入的时候不按照格式来输入会出错
----------------解决方案--------------------------------------------------------

scanf输入函数要求整数中间有逗号的 所以你在输入时必须加上逗号的
如果不加 运行时就会出错
%d要求输入一个整数后系统会等到你输入一个逗号,当你输入整数的时候
程序就会被打乱 然后输出的东西一般都很随机


----------------解决方案--------------------------------------------------------

谢谢, 谢谢
果然还是输入的问题


本人初学,哪位朋友给介绍本好点的书
我用的确实像2楼的说的一样,太....古董了


----------------解决方案--------------------------------------------------------
  相关解决方案