在do-while循环中,我正在使用for循环读取向量的值。该向量具有重复值。我想使用if语句停止for循环。
do {
/* some statement1*/
for(int i = 0; i < n; ++i )
{
if (vec[i] == a)
{
/* some statement2*/
}
} //here i want to terminate the for loop once it finds value a in vector
} while (statement3);
答案 0 :(得分:2)
您的代码有多个语法错误,即缺少内循环/ if条件的右括号。只有一个闭合支撑。这是break
代码的正确版本,应该是:
do
{
/* some statement 1 */
for( int i = 0; i < n; ++i )
{
if ( vec[i] == a )
{
/* some statement 2 */
break;
}
}
} while ( condition );
而且,它应该工作。它只会break
内部for
循环 - 而不是外部do-while
。
答案 1 :(得分:1)
使用break
像这样:
do {
/* some statement1*/
for (int i = 0; i < n; ++i ) {
if (vec[i] == a) {
break;
}
}
} while (statement3);