C printf()函数在for循环中的用法

C printf()函数在for循环中的用法,c,for-loop,printf,increment,C,For Loop,Printf,Increment,但我得到了一个输出 2 1 3 2 4 3 5 4 6 5 因为#包括 int main() { int x=1,y=1; 对于(;y您是否试图检查y和x是否都小于6? 如果是这样的话,我建议您不要使用y&x #include<stdio.h> int main() { int x=1,y=1; for(;y<6&x<6;printf("%d%d_",x,y++)) x++; } #包括 int main() { int x,y; 对于(x=1,y=1;(y

但我得到了一个输出

2 1
3 2
4 3
5 4
6 5
因为
#包括
int main()
{
int x=1,y=1;

对于(;y您是否试图检查y和x是否都小于6? 如果是这样的话,我建议您不要使用
y&x

#include<stdio.h>
int main()
{
int x=1,y=1;
for(;y<6&x<6;printf("%d%d_",x,y++))
 x++;
}
#包括
int main()
{
int x,y;

对于(x=1,y=1;(y&x)
的优先级高于
&

y&X软件,因为
&
是按位二进制和运算符。如果需要执行布尔和运算符,则改为
&&
。虽然此代码片段可以解决问题,但确实有助于提高文章的质量。请记住,您是在回答读者的问题将来,那些人可能不知道你的代码建议的原因。非常感谢大家..我对优先级和按位and,逻辑and感到困惑..现在清楚了@coderredoc@Aksh.字体很高兴它帮助了你,你也很感激。祝你一切顺利。
2 1
      000010
  AND 000001
   ----------
      000000
#include<stdio.h>
int main()
{
int x=1,y=1;
for(;y<6&x<6;printf("%d%d_",x,y++))
 x++;
}
#include<stdio.h>
int main()
{
    int x,y;
    for(x = 1, y = 1; (y & x)<6;printf("%d %d\n",x,y++));
        x++;
    return 0;
}