源码如上,但是每次我随便输入第一个数字,他就直接跳出循环了
#include <iostream>
using namespace std;
int main()
{
double ar[10];
int i;
double temp;
for (i = 1; i < 11; i++)
{
cout << "请输入第" << i << "个成绩" << endl;
cin >> temp;
if (temp = 'q')
break;
else
ar[i] = temp;
}
cout << "输入完成" << endl;
system("pause");
return 0;
}
temp = 'q'应该是temp == 'q'才对。
if(temp == 'q')这个判断有逻辑错误,因为temp是double型,输入q时它并没有接收,还是上次输入的数字。
建议这样写——无论是不是输入了q,只要不是数字或'.'就结束输入了
double ar[10];
int i;
//double temp;
for (i = 1; i < 11; i++)
{
cout << "请输入第" << i << "个成绩" << endl;
if(!(cin >> ar[i]))
break;
}
cout << "输入完成" << endl;
system("pause");
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答 2016-11-05
if(temp=='q')