题解 | #学分绩点# C++ 想通版
学分绩点
https://www.nowcoder.com/practice/a0c09a7e0da04e728810a8aca7226b7b
#include<cstdio> #include<iostream> using namespace std; /*这个题的示例用Java写就是不一样的结果 为什么啊啊啊 C语言算出来的是2.52=63.1/25 Java算出来的是2.68=67.1/25 为什么??????????? */ int a[10]; int score[10]; double JD(int scoree) { double jidian; if(scoree<60){ jidian=0.0; } else if(scoree<=63) { jidian=1.0; } else if(scoree<=67){ jidian=1.5; } else if(scoree<=71) { jidian=2.0; } else if(scoree<=74) { jidian=2.3; } else if(scoree<=77) { jidian=2.7; } else if(scoree<=81) { jidian=3.0; } else if(scoree<=84) { jidian=3.3; } else if(scoree<=89) { jidian=3.7; } else jidian=4.0; return jidian; } int main() { int n; int i; int j; double jidian; double sumscore=0; double sumcourse=0; cin>>n; for(i=0;i<n;i++){ cin>>a[i]; } for(j=0;j<n;j++){ cin>>score[j]; } for(j=0;j<n;j++){ jidian=JD(score[j]); sumscore+=jidian*(float)a[j]; } for(i=0;i<n;i++){ sumcourse+=a[i]; } double zongping=sumscore/sumcourse; printf("%.2f",zongping); }
原来是自己看错条件了!!!(流汗黄豆致敬自己)
60——63 1.0 60以下 0
这是条件!!!
(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)(流汗黄豆致敬自己)