|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include <stdio.h>
void main()
{
int a,b,c,max,min;
printf("please input three numbers:\n");
scanf("%d%d%d",&a,&b,&c);
if (a>b)
{
max=a,min=b;
}
else
{
max=b,min=a;
}
if (max<c)
{
max=c;
}
else if(min>c);
{
min=c;
}
printf("max=%d\nmin=%d",max,min);
}
本帖最后由 jackz007 于 2019-8-22 00:13 编辑
这一句有问题: - else if(min>c); /* 这句末尾的分号必须去掉 */
- {
- min=c;
- }
复制代码
由于这个分号的存在,将导致 min 的值注定等于 c。
- #include <stdio.h>
- main(void)
- {
- int a , b , c , max , min ;
- printf("please input three numbers:\n") ;
- scanf("%d%d%d" , & a , & b , & c ) ;
- if (a > b) max = a , min = b ;
- else max = b , min = a ;
- if(max < c) max = c ;
- if(min > c) min = c ;
- printf("max = %d\nmin = %d" , max , min) ;
- }
复制代码
也可以考虑采用三目运算符:
- #include <stdio.h>
- main(void)
- {
- int a , b , c , max , min ;
- printf("please input three numbers:\n") ;
- scanf("%d%d%d", & a , & b , & c) ;
- max = a > b ? a : b ;
- max = c > max ? c : max ;
- min = a < b ? a : b ;
- min = c < min ? c : min ;
- printf("max = %d\nmin = %d\n" , max , min) ;
- }
复制代码
|
|