快要期末了,以前自己一个个加总成绩加的心烦,所以就想写一个来算。
(~ ̄(OO) ̄)ブ下面的代码只是一个雏形,肯定有很多地方没有考虑到,
(~ ̄▽ ̄)~没考虑到的久自己在源码上改改吧。
#include <iostream>
using namespace std;
int main(void)
{
double degree_mark, degree_total;
double final_total=0, final_all_total=0;
double final_gpa=0, final_all_gpa=0;
char choice;
cout << "输入I为专业课科目,O为选修课科目:" << endl
<< "先输入总分,再输入你自己的得分: " << endl;
cout << "\tA+,A: 4.0 \n\tA-: 3.7 \n\tB+: 3.3 \n\tB: 3.0\n\tB-: 2.7\n";
while(cin>>choice){
if(choice!='i'&&choice!='I'&&choice!='O'&&choice!='o'){
cout << "你想退出吗?Y/N" << endl;
cin >> choice;
if(choice=='y'||choice=='Y')
break;
else{
cout << "请继续输入" << endl;
}
}
while(choice=='i'||choice=='I'||choice=='o'||choice=='O'){
cin >> degree_total >> degree_mark;
if(choice=='i'||choice=='I'){
final_total += degree_total;
final_all_total += degree_total;
final_gpa += degree_mark * degree_total;
final_all_gpa += degree_mark * degree_total;
}
else if(choice=='o'||choice=='O'){
final_all_total += degree_total;
final_all_gpa += degree_mark * degree_total;
}
cout << "请选择下一次输入\n";
cin >> choice;
}
if(choice!='i'&&choice!='I'&&choice!='O'&&choice!='o'){
cout << "你想退出吗?Y/N" << endl;
cin >> choice;
if(choice=='y'||choice=='Y')
break;
else{
cout << "请继续输入" << endl;
}
}
}
final_gpa /= final_total;
final_all_gpa /= final_all_total;
cout << "专业课gpa为: " << final_gpa << "\t总gpa为: " << final_all_gpa << endl;
system("pause");
return 0;
}