求一道c语言,急急急!!可加分

某大学用学分绩点(GPA)评定学生的学业成绩。学分绩点计算公式为:GPA=∑(课程绩点X课程学分)/
∑课程学分,其中课程绩点是从课程的百分制成绩转换得到的,转换方法见下表。试编程统计某班n个同学在m门必修课上的学分绩点,并按从高到低排序。

百分制课程成绩对应的绩点

课程绩点

4

3.7

3.3

3

2.7

2.3

2

1.7

1.5

1

0

课程成绩

≥90

≥85

≥82

≥78

≥75

≥72

≥68

≥66

≥62

≥60

<60

对有余力的同学,可加入以下功能(选做):
(1)GPA保留3位小数(四舍五入),输出时显示名次,GPA相同的排名相同,如2人并列第一,则没有第二名;
(2)学生学号、姓名用字符串表示,其中姓名可有空格;
(3)输入学分、成绩时,显示课程名称(可有空格)。

给你个思路吧,要编程得自己学会写,自己调试。
首先,这是一个分支语句,可以用if ..else if ..else来实现效果,如果是90分以上,设置课程绩点为4,并且定义一个临时变量保存90分以上的(课程绩点X课程学分)的值,同理85到90分的绩点是3.7,再定义一个临时变量保存(课程绩点X课程学分)计算后的值,后面的一样,一直到60分一下,最后把这些临时变量加起来再除以全部课程学分的总和就得到GPA的值,将这个GPA的值存入一个数组buff,再通过冒泡排序法由高到低进行排序即可
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答