小白求助
输出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: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;
} 顺便给你点建议:
如果那本书让你用VC++6.0的话,建议换一本(甲鱼老师的零基础入门学习C语言就不错)
否则的话就用Dev-C++吧 qiuyouzhi 发表于 2020-2-14 19:09
缩进错误吧
不关缩进的事 zltzlt 发表于 2020-2-14 19:17
不关缩进的事
可是我把缩进改了一下就OK了啊 qiuyouzhi 发表于 2020-2-14 19:56
可是我把缩进改了一下就OK了啊
不好意思,刚刚没看到你改了哪里{:10_250:} 本帖最后由 xiao456 于 2020-2-14 20:14 编辑
第二个if里面包含了第三个if,我改了一下就可以 zltzlt 发表于 2020-2-14 20:01
不好意思,刚刚没看到你改了哪里
{:10_256:} qiuyouzhi 发表于 2020-2-14 19:09
缩进错误吧
请问下缩进是什么意思啊?我按照你这个改确实可以了 缩进就是这样:
int main(void)
{
printf("Hello World!");
return 0;
}
这中间留出来的空就是缩进,用于清晰代码逻辑 我建议你先把书上的正确解拍出来给大家看看,这样子更有效力说明两件事情:一是书有问题,所以你跟着出错;二是书没问题,你自己写错了,不怪书 #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后面多打了个“ ;” 学习C的春某 发表于 2020-2-14 22:08
#include
void main ()
{
谢谢, 已经解决了,豁然开朗 和缩进无关
你的第三个if语句多加了一个“分号”,试这里错了,不能加分号。 #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]