#include <stdio.h>
int main()
{
char puzzle[100];
int i;
int k=0;
for(i=0; i<100; i++)
{
if(k==1)
{
if(getchar()=='\n')
break;
else
k=0;
}
scanf(" %c",&puzzle[i]);
if(getchar()=='\n')
k=1;
}
}
当输入2个换行符时,该代码应该打破循环但是它并不总是打破循环。
答案 0 :(得分:0)
break语句不会破坏if子句,它会分解最近的循环(for,while)或switch子句。我猜你期待它打破if条件。
所以在你输入两个'\ n'的代码中,它会从for循环中出来并继续执行并存在于程序中。