残II 发表于 2013-10-6 23:29:19

还是if语句。。。。

#include <stdio.h>
main ()
{
int a,b,c,d,max,min;
printf("输入三个数: \n");
scanf("%d%d%d%d",&a,&b,&c,&d);
max=a;
if(max<b)
max=b;
if(max<c)
max=c;
if(max<d)
max=d;
else
if(c<d)         为什么这个就不执行了 把这个换成 if就可以了
d=5;
printf("max=%d\nd=%d\n",max,d);


}
#include <stdio.h>
main ()
{
int a,b,c,max,min;
printf("输入三个数: \n");
scanf("%d%d%d",&a,&b,&c);
if(a<b)
{
max=b;
min=a;
}
else
{
max=a;
min=b;
}
if(max<c)
max=c;
else
if(min>c)         这个程序的这里为什么又可以执行
   min=c;
printf("max=%d\nmin=%d\n",max,min);


}
                                                                              求解{:5_96:}

牡丹花下死做鬼 发表于 2013-10-6 23:29:20

你上面的代码写规范就是#include <stdio.h>
int main ()
{
        int a,b,c,d,max,min;
        printf("输入三个数: \n");
        scanf("%d%d%d%d",&a,&b,&c,&d);
        max=a;
        if(max<b)
        {
                max=b;
        }
        if(max<c)
        {
                max=c;
        }
       
       
        if(max<d)//如果max<d成立就不会执行else的全部语句
        {
                max=d;
        }
        else
        {
                if(c<d) //如果max>d 在判断 c是否<d 如果成立就执行 d = 5;
                          //你输入 6 1 2 3 输出就是 6 和 5了
                {
                        d=5;
                }
        }


        printf("max=%d\nd=%d\n",max,d);
       
        return 0;
}
下面那个你在自己看看吧

3112793 发表于 2013-10-7 12:50:37

写的好复杂,第一个程序的目的没看懂,刚开始还是找出abcd的最大值,怎么后来又给d赋值了。完全看不懂第一个程序的目的。
第二个程序是返回abc中的最大值和最小值。不过编的好复杂,直接用数组和循环就可以了.

trek600 发表于 2013-10-7 20:51:15

这样会按照顺序进行下去的

夏七夕 发表于 2013-10-8 16:20:59

写的有点繁琐额,,,,,,应该跟输入的数有关吧{:1_1:}{:1_1:}{:1_1:}

devotedtoc 发表于 2013-10-8 17:53:32

写清楚点比较好,

福禄娃娃 发表于 2013-10-8 23:12:16

逻辑好乱,反正if和else是就近配对原则,判断三个数的大小,只需要把a分别和b、c比较的结果与b、c比较即可。

沸腾的火焰 发表于 2013-10-8 23:59:25

第一个程序,有问题!你这个是要输入3个数呢,还是4个数。如果是4个数,最后一句d还要赋值5干嘛。
另外如果你是输入三个数,“if(max<d)”d没有赋任何值呀。不知道楼主想干嘛

沸腾的火焰 发表于 2013-10-9 00:02:12

请楼主把你做的程序的功能告诉我

残II 发表于 2013-10-10 19:50:18

3112793 发表于 2013-10-7 12:50 static/image/common/back.gif
写的好复杂,第一个程序的目的没看懂,刚开始还是找出abcd的最大值,怎么后来又给d赋值了。完全看不懂第一个 ...

刚开始学呢

残II 发表于 2013-10-10 19:51:38

福禄娃娃 发表于 2013-10-8 23:12 static/image/common/back.gif
逻辑好乱,反正if和else是就近配对原则,判断三个数的大小,只需要把a分别和b、c比较的结果与b、c比较即可。 ...

现在懂了 ,
谢谢
页: [1]
查看完整版本: 还是if语句。。。。