Closed. This question is not reproducible or was caused by typos。它当前不接受答案。
想改善这个问题吗?更新问题,以便将其作为on-topic用于堆栈溢出。
5年前关闭。
Improve this question
我必须打印一棵圣诞树,这是树干的代码:”
”
错误是在这行
使用比较运算符
在这里我们使用赋值运算符
为了更加清楚起见,根据
现在,就您而言,您错过了使用结果的机会,因此您的编译器发出了尖叫。
同样,FWIW应该使用
想改善这个问题吗?更新问题,以便将其作为on-topic用于堆栈溢出。
5年前关闭。
Improve this question
我必须打印一棵圣诞树,这是树干的代码:”
#include <stdio.h>
#include <math.h>
int main () {
int j;
int cspaziodx,cspaziosx,cltroncoo;
float cltronco,larghezza;
printf ("ins larghezza");
scanf ("%f",&larghezza);
for (j=1;j<=(ceil(larghezza/10));j++) {
cltronco = roundf(larghezza/4);
cltroncoo = cltronco;
if (cltroncoo%2==0) {(cltroncoo == cltroncoo + 1);}
cspaziodx = ((larghezza - cltroncoo)/2);
cspaziosx = ((larghezza - cltroncoo)/2);
while (cspaziodx > 0)
{
printf(" ");
cspaziodx = cspaziodx - 1;
}
while (cltroncoo > 0)
{
printf ("|");
cltroncoo = cltroncoo - 1;
}
while (cspaziodx > 0)
{
printf(" ");
cspaziosx = cspaziosx - 1;
}
printf ("\n");
}
return 0;
}
”
错误是在这行
if (cltroncoo%2==0) {(cltroncoo == cltroncoo + 1);}
为什么不起作用? 最佳答案
问题出在
(cltroncoo == cltroncoo + 1)
使用比较运算符
==
。也许你的意思是(cltroncoo = cltroncoo + 1)
在这里我们使用赋值运算符
=
。为了更加清楚起见,根据
==
规范第6.5.9章,对于等于运算符C11
,现在,就您而言,您错过了使用结果的机会,因此您的编译器发出了尖叫。
同样,FWIW应该使用
int main ()
而不是int main (void)
。09-12 09:40