我被困在必须将“for-loop”/“do-while loop”
转换为“while loop”
而无需更改程序含义的程序中。循环内可能有循环,依此类推。输入将是C语言程序和输出将是有效的C语言程序。
到目前为止,我得到的解决方案是从文件中读取C程序,如果我检测到for语句,则将初始化程序取出,并将"for"
替换为"while"
。
但是我不知道该怎么做。
作为提示,for循环由初始化程序,条件和更新程序组成
`for (initializationStatement; testExpression; updateStatement)
{
// statements inside the body of loop
}`
您需要类似
initializationStatement;
while( testExpression ) {
updateStatement;
}