张世来4610484 发表于 2020-2-14 18:57:40

小白求助

输出3个整数,按小到大输出,帮忙看下,这个代码哪里错了,运行结果不对,完全按照书上来的
#include <stdio.h>
void main ()
{       
        int x,y,z,temp;
        scanf("%d%d%d",&x,&y,&z);
        if(x>y)
        {
                temp=x;
                x=y;
                y=temp;
        }
        if(x>z)
        {
                temp=x;
                x=z;
                z=temp;
        }
        if(y>z);
        {
                temp=y;
                y=z;
                z=temp;

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


qiuyouzhi 发表于 2020-2-14 19:09:49

本帖最后由 qiuyouzhi 于 2020-2-14 19:12 编辑

缩进错误吧
#include <stdio.h>
int main()
{      
      int x,y,z,temp;
      scanf("%d%d%d",&x,&y,&z);
      if(x>y)
      {
                temp=x;
                x=y;
                y=temp;
      }
      if(x>z)
      {
                temp=x;
                x=z;
                z=temp;
      
              if(y>z);
              {
                temp=y;
                y=z;
                z=temp;

              }
      }
      printf("%d %d %d\n",x,y,z);
      return 0;
}

qiuyouzhi 发表于 2020-2-14 19:13:29

顺便给你点建议:
如果那本书让你用VC++6.0的话,建议换一本(甲鱼老师的零基础入门学习C语言就不错)
否则的话就用Dev-C++吧

zltzlt 发表于 2020-2-14 19:17:07

qiuyouzhi 发表于 2020-2-14 19:09
缩进错误吧

不关缩进的事

qiuyouzhi 发表于 2020-2-14 19:56:43

zltzlt 发表于 2020-2-14 19:17
不关缩进的事

可是我把缩进改了一下就OK了啊

zltzlt 发表于 2020-2-14 20:01:23

qiuyouzhi 发表于 2020-2-14 19:56
可是我把缩进改了一下就OK了啊

不好意思,刚刚没看到你改了哪里{:10_250:}

xiao456 发表于 2020-2-14 20:03:44

本帖最后由 xiao456 于 2020-2-14 20:14 编辑

第二个if里面包含了第三个if,我改了一下就可以

qiuyouzhi 发表于 2020-2-14 20:36:06

zltzlt 发表于 2020-2-14 20:01
不好意思,刚刚没看到你改了哪里

{:10_256:}

张世来4610484 发表于 2020-2-14 20:49:28

qiuyouzhi 发表于 2020-2-14 19:09
缩进错误吧

请问下缩进是什么意思啊?我按照你这个改确实可以了

qiuyouzhi 发表于 2020-2-14 20:55:19

缩进就是这样:
int main(void)
{   
    printf("Hello World!");
    return 0;
}
这中间留出来的空就是缩进,用于清晰代码逻辑

4goodworld 发表于 2020-2-14 21:12:59

我建议你先把书上的正确解拍出来给大家看看,这样子更有效力说明两件事情:一是书有问题,所以你跟着出错;二是书没问题,你自己写错了,不怪书

学习C的春某 发表于 2020-2-14 22:08:22

#include <stdio.h>
void main ()
{      
      int x,y,z,temp;
      scanf("%d%d%d",&x,&y,&z);
      if(x>y)
      {
                temp=x;
                x=y;
                y=temp;
      }
      if(x>z)
      {
                temp=x;
                x=z;
                z=temp;
      }
      if(y>z);
      {
                temp=y;
                y=z;
                z=temp;

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

第三处if后面多打了个“ ;”

张世来4610484 发表于 2020-2-15 13:12:51

学习C的春某 发表于 2020-2-14 22:08
#include
void main ()
{      


谢谢, 已经解决了,豁然开朗

良弓无箭 发表于 2020-2-15 16:53:59

和缩进无关
你的第三个if语句多加了一个“分号”,试这里错了,不能加分号。

我是你粉丝 发表于 2020-2-18 11:56:20

#include <stdio.h>
void main ()
{      
      int x,y,z,temp;
      scanf("%d%d%d",&x,&y,&z);
      if(x>y)
      {
                temp=x;
                x=y;
                y=temp;
      }
      if(x>z)
      {
                temp=x;
                x=z;
                z=temp;
      }
      else if(y>z);
      {
                temp=y;
                y=z;
                z=temp;

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

页: [1]
查看完整版本: 小白求助