用c语言编写:
enter four integer:XX ,XX, XX, XX
要求只要4个 if 语句!
不要用循环,while,for之类的都不要用。(题目中要求只要4个if语句就够了)
总觉得不对!
if(max > c) min = c; /*此处如果进行此步, max = a 情况下,b和c没有比较
怎么知道c 是最小
和 max = b 情况下,a 和c 也是没有比较的,怎么知道c是最小?
*/
你先理解一下第一个if做的事情:第一步先把a和b做比较,大的保存到max,小的保存到min,之后3个if都是max在和b,c,d做比较,每次比较的结果保证了max永远都是最大的那个数,min永远都是最小的那个,最后结果只要把max和min打印出来就ok了。所以不存在你所说的b和c,a和c没有比较的情况。
#include<stdio.h>
int main(void)
{ int a,b,c,d,max1,min1,max2,min2;
printf("请输入四位整数:");
scanf("%d %d %d %d",&a,&b,&c,&d);
if(a>b)
{max1=a;min1=b;}
else
{max1=b;min1=a;}
if(c>d)
{max2=c;min2=d;}
else
{max2=d;min2=c;}
if(max1<max2)
max1=max2;
if(min1>min2)
min1=min2;
printf("最大值是%d\n",max1);
printf("最小值是%d\n",min1);
return 0;
}
你输出的是:最大值了。
没有输出最小值了!!