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

时间:2019-10-11 19:07:35

标签: c++ goto

goto对初学者很有用,但不建议使用!!!!

我正在编辑我的帖子,因为我在此网站上得到了正确的答案。

在用户输入主题标记的此程序中,(在输入标记之后)在初始阶段宣布要输入多少个主题后,询问他/她是否要输入主题的更多标记如果他/她回答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再次进入程序的初始阶段,这是一个请求。

1 个答案:

答案 0 :(得分:7)

  

GOTO语句有用吗?

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

  

当用户按Y时如何再次进入程序的初始阶段

有一个控制流程结构,用于返回和重复。这称为循环。一个例子:

do {
    // do some stuff

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