我是C ++的新编码器,最近我正在学习它,因此我可能缺少基本要素和理解。我正在创建一个c ++文件,该文件将考虑各种信息,直到输入-1 sentinel值,然后对信息进行汇总。在学生编号中输入-1时,while循环不会终止。我可以从代码中获得一些建议和想法吗?我想念什么吗?我是新来的,所以我一个月前才开始提出批评。我认为我的while循环可能太大,如果我放括号或采取其他方法解决问题,谢谢
return fib(i-1) + fib(i-2) ;
答案 0 :(得分:1)
您应该在读取哨兵值后立即添加支票,而不是在处理之后。
while ( true )
{
cout<<"Enter student number:"<<endl;
cin>> studentnumber;
if ( studentnumber == -1 )
{
break;
}
// Use studentnumber
}
您可以通过使用辅助函数来读取输入来将支票置于while
的条件中。
int readStudentNumber()
{
int studentnumber;
cout<<"Enter student number:"<<endl;
cin>> studentnumber;
return studentnumber;
}
while ( (studentnumber = readStudentNumber()) != -1 )
{
// Use studentnumber
}