描述
现有 N 名同学,每名同学需要设计一个结构体记录以下信息:学号、学业成绩和素质拓展成绩、综合分数(实数)。每行读入同学的学号、学业成绩和素质拓展成绩,并且计算综合分数(分别按照 70% 和 30% 权重累加),存入结构体中。
设计一个函数,其参数是一个学生结构体对象,判断该学生是否“优秀”。优秀的定义是学业和素质拓展成绩总分大于 140 分,且综合分数不小于 80 分。
输入描述
第一行一个整数 N。
接下来 N 行,每行 3 个整数,依次代表学号、学业成绩和素质拓展成绩。
输出描述
N 行,如果第 i 名学生是优秀的,输出 Excellent
,否则输出 Not excellent
。
样例输入 1
4 1223 95 59 1224 50 7 1473 32 45 1556 86 99
样例输出 1
Excellent Not excellent Not excellent Excellent
提示
数据规模与约定
数据保证,1≤N≤1000,学号为不超过 100000 的正整数,学业成绩和素质拓展成绩为 0∼100 之间的正整数。
#include<iostream>
using namespace std;
typedef struct{
int num;
int score;
int sum;
int all;
}peo;
int main(){
int n;
cin>>n;
peo stu[n];
for(int i=0;i<n;i++){
cin>>stu[i].num>>stu[i].score>>stu[i].all;
stu[i].sum=stu[i].score+stu[i].all;
stu[i].all=(int)((double)stu[i].score*0.7+(double)stu[i].all*0.3);//70%==0.7 30%==0.3
}
for(int i=0;i<n;i++){
if(stu[i].sum>140&&stu[i].all>=80){
cout<<"Excellent\n";
}
else{
cout<<"Not excellent\n";
}
}
return 0;
}