Loops 使用goto语句显式显示通过循环的流控制
我应该获取以下程序片段并使用goto语句来显示通过循环的流控制:Loops 使用goto语句显式显示通过循环的流控制,loops,for-loop,goto,flow-control,Loops,For Loop,Goto,Flow Control,我应该获取以下程序片段并使用goto语句来显示通过循环的流控制: for ( int i = n; i > 0; i-- ) { if ( x != A[i] ) break; } for ( int i = n; i > 0; i-- ) { if ( x != A[i] ) goto xValue; break; } xValue: cout << "The value of x: \n" << x; 我意识到
for ( int i = n; i > 0; i-- ) {
if ( x != A[i] )
break;
}
for ( int i = n; i > 0; i-- ) {
if ( x != A[i] )
goto xValue;
break;
}
xValue: cout << "The value of x: \n" << x;
我意识到应该避免使用goto语句,但这正是问题所要求的。我认为这就是它应该是的,因此通过循环显示流量控制:
for ( int i = n; i > 0; i-- ) {
if ( x != A[i] )
break;
}
for ( int i = n; i > 0; i-- ) {
if ( x != A[i] )
goto xValue;
break;
}
xValue: cout << "The value of x: \n" << x;
for(int i=n;i>0;i--){
如果(x!=A[i])
转到xValue;
打破
}
xValue:cout我相信这是这个问题的正确解决方案:
xValue ( int i = n; i > 0; i-- )
If ( x != A[i] )
goto xValue;
我相信这是解决这个问题的正确方法:
xValue ( int i = n; i > 0; i-- )
If ( x != A[i] )
goto xValue;
问:为什么不删除“中断”?问:您是否也应该将for“for”循环替换为goto?因此,您的意思是将for
替换为goto
,并完全删除break语句@paulsm4I也将删除for循环,并用显式gotos替换它。for只是一个init块,后跟一个退出条件(基本上是if和goto),后跟一个body、一个增量操作和一个goto返回到退出条件检查。显然,只是为了任务;)你是这么想的吗@paulsm4@A.Chiesagotoxvalue(inti=n;i>0;i--)如果(x!=A[i])gotoxvalue代码>问:为什么不删除“中断”?问:您是否也应该将for“for”循环替换为goto?因此,您的意思是将for
替换为goto
,并完全删除break语句@paulsm4I也将删除for循环,并用显式gotos替换它。for只是一个init块,后跟一个退出条件(基本上是if和goto),后跟一个body、一个增量操作和一个goto返回到退出条件检查。显然,只是为了任务;)你是这么想的吗@paulsm4@A.Chiesagotoxvalue(inti=n;i>0;i--)如果(x!=A[i])gotoxvalue代码>