在C中循环内部打印一次

在C中循环内部打印一次,c,for-loop,C,For Loop,我有这个密码 if(orden[i]==1) for(i=0; i<ARRAY_SIZE; i++) if(v[i]<v[i+k]) printf("print once "); 如果满足for循环中的条件,如何使它只打印一次行?我建议您首先更改索引变量,以避免混淆。我建议使用I和j。代码的形式大致如下: if(orden[i]==1) for(j=0; j<ARRAY_SIZE; j++) if((j==0)

我有这个密码

if(orden[i]==1)
    for(i=0; i<ARRAY_SIZE; i++)
        if(v[i]<v[i+k])
            printf("print once "); 

如果满足for循环中的条件,如何使它只打印一次行?

我建议您首先更改索引变量,以避免混淆。我建议使用I和j。代码的形式大致如下:

if(orden[i]==1)  
  for(j=0; j<ARRAY_SIZE; j++)
    if((j==0)&&(v[j]<v[j+k]))
      printf("print once ");

我建议您首先更改索引变量,以避免混淆。我建议使用I和j。代码的形式大致如下:

if(orden[i]==1)  
  for(j=0; j<ARRAY_SIZE; j++)
    if((j==0)&&(v[j]<v[j+k]))
      printf("print once ");
使用break命令退出for循环

使用break命令退出for循环


如果v[i]不大于v[i+k],则退出“while”并打印您的值:

while ((i < ARRAY_SIZE) && (v[i] > v[i+k])) {
    i++;
}
printf("print once ");

或者,您可以使用布尔变量,但由于内存原因,这不是最佳解决方案。

如果v[i]不大于v[i+k],则退出“while”并打印您的值:

while ((i < ARRAY_SIZE) && (v[i] > v[i+k])) {
    i++;
}
printf("print once ");

或者,您可以使用布尔变量,但由于内存原因,这不是最佳解决方案。

首先修复代码格式,然后提供正确的“我已重新格式化代码”。请不要将C代码作为JavaScript代码段发布,只需使用{}图标的纯代码即可。如果不总是使用括号,我非常建议使用括号。如果我在for to be ifprintfhere\n&&v[I]中重写了if,请首先修复代码格式,然后提供正确的代码格式,我已经重新格式化了您的代码。请不要将C代码作为JavaScript片段发布,只需使用{}图标的纯代码即可。如果不总是使用括号,我非常建议使用括号。如果我在for to be ifprintfhere\n&&v[I]中重写了if,请确保数组索引不会越界。假设v的大小为ARRAY_size,则i+k应小于ARRAY_size。还要确保数组索引不会超出范围。假设v是数组大小,i+k应该小于数组大小。