对学生成绩进行评定c语言,急需一个C语言程序设计代码源,请大家帮帮忙~

(1)学生成绩处理

应用以下不同的方法,对学生的成绩进行处理。根据不同的方法的难度和采用方法的种类评定成绩。选方法1、2、3,至少要完成两种算法的程序编写。方法4、5实现其中一个就可以了。

方法1:数组 排序

1. 定义一个数组a[11],用

(1)学生成绩处理

应用以下不同的方法,对学生的成绩进行处理。根据不同的方法的难度和采用方法的种类评定成绩。选方法1、2、3,至少要完成两种算法的程序编写。方法4、5实现其中一个就可以了。

方法1:数组 排序

1. 定义一个数组a[11],用以存放学生的成绩。

2. 从键盘输入10个学生成绩

3. 采用冒泡法,将学生成绩按照从高到低进行排序,显示排序后的结果。

4. 再输入一个学生的成绩,将此成绩按照排序规律插入原学生成绩数组,显示插入后的结果。

5. 将排好序的成绩单进行反序存放,即原来是从高到低,现在改为从低到高排列。显示反序后的结果。

建议:每完成一步程序,运行正确后再做下一步。

方法2:函数 排序

1. 在函数中进行10个学生成绩从高到低排名 sort1(int a[]),显示结果。

2. 改进第一步的函数为sort2(int a[], int n),将数组中前n个学生成绩从进行高到低的排名,显示结果。

3. 改进第二步的函数为sort3(int a[], int n, char style),将n个学生成绩排序,排序方式根据函数的style参数进行,当style为 'a' 时按升序排序,style为 'd' 按降序排序。分别显示升序与降序结果。

4. 编写函数,insert(int a[], int x),将一个学生成绩x按照排序规律插入原学生成绩数组,显示插入后的结果。

建议:为方便第4步插入一个成绩,定义数组时应该有11个元素。在主函数main()中,调用各函数。

方法3:指针 排序 函数

1. 定义一个数组stu[10]存放10个学生的成绩,从键盘输入数据,要求用指针实现。

2. 将数组stu[10]的内容输出到屏幕上,要求用指针实现。

3. 将成绩数组按照从高到低进行排序,要求用指针实现。

4. 将第三步内容放在函数中实现,在主函数main()中调用实现排序,用指针实现,输出排序后的成绩单。

建议:为方便调试程序,建议成绩先定义在数组。实现排序功能后,再改成从键盘输入成绩。

方法4:结构数组 排序

1. 定义一个结构体数组,存放10个学生的学号,姓名,三门课的成绩。

2. 从键盘输入10个学生的以上内容。

3. 输出各门课程成绩最高的学生的学号、姓名、以及该门课程的成绩

4. 输出三门课程的平均分数最高的学生的学号、姓名及其平均分

5. 将10个学生按照平均分数从高到低进行排序,输出结果,格式如下所示:

Number name math Chinese English average

103 zhang 90 90 100 95

101 li 90 80 70 80

建议:为方便调试程序,建议各功能分别设计成函数来实现。成绩数据先定义在数组中,实现排序功能后,再改成从键盘输入成绩。或者设计两个函数,分别用于定义数组数据和从键盘输入数组数据。

方法5:文件 结构 排序

1. 定义一个结构体数组,存放10个学生的学号,姓名,三门课的成绩

2. 从键盘输入10个学生的学号,姓名及三门课的成绩,存入文件stud.dat。关闭文件。

3. 打开stud.dat文件,将数据读出,查看是否正确写入,关闭文件。

4. 打开文件stud.dat文件,读出数据,将10个学生按照平均分数从高到低进行排序,分别将结果输出到屏幕上和另一文件studsort.dat中。

5. 从studsort.dat 文件中读取第2,4,6,8,10个学生的数据。

建议:为方便调试程序,建议各功能分别设计成函数来实现。先将成绩数据定义在数组当中,实现排序及保存文件功能后,再改写程序从键盘输入成绩等数据。或者设计两个函数,分别用于定义数组数据和从键盘输入数组数据,然后在主函数main()当中调用操作。

展开

全部

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值