如何在不使用 "goto" 和使用 "do while" 循环的情况下进入程序的初始阶段?

How to go to initial stage of Program without using "goto" and using "do while" loop?

goto 对初学者有用,但不推荐!!!!

我正在编辑我的post,因为我在这个网站上得到了正确的答案。

在这个用户输入科目分数的程序中,(输入分数后)he/she在初始阶段声明了多少科目后,询问he/she是否要输入更多科目分数他想输入数字,如果 he/she 回复 Y,则程序要求他再次输入标记。看,我是第一学期的大学生,我发现 goto 在使用了这么多循环之后更容易让我的程序进入程序的初始阶段。我所需要的只是不使用 goto 而是使用另一个循环,所以我该怎么做(问题由回答我的 eerorika 解决)。

#include<iostream>
using namespace std;
int main (){
int subjec;
retran:


cout<<"please enter number of  subjects : " ;
cin>>subjec;

int marks[subjec];
for ( int u=0;u<subjec;u++){

cout<<"enter marks of subject "<< u+1 << "  ";
cin>>marks[u];

}

char q='Y';
cout<<"do you want TO ENTER MORE MARKS : "<<endl;

cout<<"enter \"Y\" for Yes and \"N\" or any other character for No :       ";          
cin>>q;
while (q=='Y')
goto retran;
return 0;

如果你能告诉我如何在不使用 goto 语句的情况下用户按 Y 时再次进入程序的初始阶段,这是一个请求。

GOTO statements are useful ?

是的。但不适用于此用例。

how I can go to initial stage of program again when user press Y

有一个返回和重复的控制流结构。它被称为循环。一个例子:

do {
    // do some stuff

    cin>>q;
} while(q=='Y');