C++:大佬,下面题目咋写(要有点注释)?
初级班结束时,我们会进行考试测评,一共20题,每题100分。
为了激励大家取得高分,初级班老师定了一个奖励分数的措施。
①如果500分以下(含500分),是没有任何奖励的。
②如果分数在500-1000之间(不含500含1000),可以取得自己分数的5%的加分奖励;
③如果分数在1000-1500之间(不含1000含1500),则1000以内部分奖励按5%加分,多于1000的部分(不含1000)按10%加分;
④如果分数在1500-2000之间(不含1500含2000),则1500以下的按上面条件进行加分,超过部分(不含1500)按15%进行加分;
⑤如果取得满分,除了获得前面的奖励之外,还可以将最后分数翻倍。
请你编一个程序,输入你自己的考试成绩,看看你最终能获得多少分。
输入
一行,一个整数,0-2000之间。
输出
一行,一个小数,保留两位小数。
样例
输入1
250
输出1
250.00
输入2
520
输出2
546.00
输入3
1024
输出3
1076.40
输入4
1999
输出4
2173.85
输入5
2000
输出5
4350.00 展开
代码文本:
//#include "stdafx.h"//vc++ 6.0? Maybe should add this line.
#include <iostream>
using namespace std;
int main(int argc,char *argv[]){
int n;
double s;
cout << "Please enter your score n(int 0<=n<2001)...\n";
if((cin >> n) && n>=0 && n<2001){
if(n<501)
s=n;//没有奖励
else if(n>500 && n<1001)
s=n*1.05;//n+n*5%
else if(n>1000 && n<1501)
s=1.1*n-50;//1000*5%+(n-1000)*10%+n
else if(n>1500 && n<2001)
s=1.15*n-125;//1000*5%+(1500-1000)*10%+(n-1500)*15%+n
cout.setf(ios::fixed);//用定点格式输出浮点数据
cout.precision(2);//强制保留2位小数
cout << "Your score is " << (n<2000 ? s : s+s) << endl;
}
else
cout << "Your input error, exit...\n";
return 0;
}