【发布时间】:2012-08-13 15:54:17
【问题描述】:
我使用的是 Windows 7 Ultimate。我是 C++ 新手。以下是我对 switch 语句的练习。
void GradeBook::inputGrades()
{
int grade;
cout << "Enter Grade: " << endl;
while((grade=cin.get()) != EOF)
{
switch(grade)
{
case 'A':
case 'a':
aCount++;
break;
case 'B':
case 'b':
bCount++;
break;
case 'C':
case'c':
cCount++;
break;
case 'd':
case 'D':
dCount++;
break;
case 'F':
case 'f':
fCount++;
break;
case '\n':
case ' ':
case '\t':
break;
default:
cout << "Incorrect data. Re Enter" << endl;
break;
}
}
}
我在 netbeans 中运行它,我按下了所有组合 ctrl+c 、 ctrl+z 、 ctrl+d 但它没有结束!这是为什么?我做错了什么吗?请帮忙!!
【问题讨论】:
-
我认为你的问题不是关于 EOF,但这里是关于它的:en.wikipedia.org/wiki/End-of-file
-
Control+Z 或 F6。一般需要单独输入一行,所以基本上输入后跟Control+Z或者F6。
-
嗯..仍然无法正常工作..您确定它在 netbeans 中工作吗?否则,将参数 test 更改为 -1 不是更好吗?因此,当用户输入 -1 时,它将中断。