需要帮助定义循环控制变量(while loops)C++
Need help defining a Loop Control Variable (while loops) C++
我一直在想办法让程序使用什么循环控制变量(LCV(,但一直没有成功。
给出的信息如下:
你将提升一名学生的成绩和所修课程的学分。据此,你将计算出平均绩点。
- 系统会提示输入课程名称,但不会对其执行任何操作
- 我们只是使用A级、B级、C级、D级和F级,所以你不必做那么多打字
- 您将需要使用"设置精度"命令,如本书所示。将其设置为"固定"answers"2">
- 您需要使用本课程前面讨论过的"cin.ignore(("函数
票据
- 我使用
int total
来计算类的数量 - 当前的
while
语句是我最后一次尝试,它不正确
我的代码:
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
int main () {
cout << std::fixed << std::setprecision(2);
string course, grade, answer;
int credits, total = 0;
float gradePoints = 0, totalCredits = 0;
float gpa = 0.0;
while (grade <= "ABC") {
cout << "Enter a course name: ";
getline(cin, course);
cout << course << endl;
cout << "Enter number of credits: ";
cin >> credits;
cout << credits << endl;
cout << "Enter your grade (A, B, C, D, F): ";
cin >> grade;
cout << grade << endl;
cout << "Continue ('Yes' or 'No')? ";
cin >> answer;
cout << answer << endl;
if (grade == "A") {
gradePoints = gradePoints + 4;
}
else if (grade == "B") {
gradePoints == gradePoints + 3;
}
else if (grade == "C") {
gradePoints = gradePoints + 2;
}
else if (grade == "D") {
gradePoints = gradePoints + 1;
}
else if (grade == "F") {
gradePoints = 0;
}
total = total + 1;
totalCredits = totalCredits + credits;
}
gpa = (total * gradePoints)/ totalCredits;
return 0;
}
根据程序其余部分的编写方式,我认为您应该检查用户对"继续?"问题的回答。类似这样的东西:
bool answer = true;
while (answer) {
// code
// when ready to exit...
answer = false;
}
也就是说,使用do-while循环可能更有意义,其中第一个块在检查条件之前执行:
do {
// code
} while (answer != "No");
当你这样做的时候,你可能还想考虑使用一个不同的标志,而不是让用户键入"是"或"否"。像y
和n
这样的东西更常见,也更简单一些。
"while (grade <= "ABC")"
如果意图是说只在等级值为a、B或C时进行循环,则:
while(grade == "A" || grade == "B" || grade == "C")
相关文章:
- 为什么"do while"循环不断退出,即使条件计算结果为 false?
- 我正在使用嵌套的while循环来解析具有多行的文本文件,但由于某种原因,它只通过第一行,我不知道为什么
- while循环中while循环的时间复杂度是多少
- Arduino:for/while/if在void setup()或void loop()之前?——错误:之前需要不合格
- 在while循环中输入带有std::cin的字符串后,控制台会输出大量胡言乱语
- 擦除while循环中迭代的元素
- 为什么我不能在 while 循环中创建线程?
- 退出简单while循环时出现问题
- 如何在自定义类中启用'auto loops'?
- 如果条件为TRUE(最佳方式?),则在do while循环中后置增量
- 即使没有满足他们的条件,我也无法通过一些 do-while 循环
- 嵌套While循环不起作用(C++问题)
- 如何通过替换顺序代码的while循环来添加OpenMP for循环
- 使用 GMP 的 while 循环出现问题
- 程序以使用 C++ 中的 while 循环查找一组数字的最小值
- 为什么无论你输入什么,这"while(cin.get(str,3))"只运行一次?
- 为什么在 while 循环中返回表达式不起作用
- 需要帮助定义循环控制变量(while loops)C++
- C 用于IF-Statments和while-loops的短路
- Xcode 调试不显示 for- 或 while-loops