学习程序设计是一件充满挑战、更充满乐趣的事情,然而学习之初,它之所以给你枯燥乏味的感觉,那是因为没有发掘出它的趣味来。本课程力图用最简明的语言、最典型的实例及最通俗的解释将这种趣味性挖掘出来,带给你全新的学习体验,和你一起欣赏C语言之美,领悟C语言之妙,体会学习C语言之无穷乐趣。
本学期的高级语言程序设计开课时间:2017年2月27日-- 2017年5月27日
本课程考试成绩由四部分组成: 上机考试50% + 实验25% + 作业题库系统25% + 翻转课堂附加分,满分100分。
具体得分请参考如下细则:
1. 上机考试,占总成绩的50%
1)第1次实验课熟悉集成开发环境和考试系统,从第2次课开始,每次实验课考1次,1道编程题(10分),1道附加改错题(附加分2分),总计考6次,分别考核选择结构、循环结构、函数(附加题可以为递归)、数组(附加题可以为指针)、字符串(附加题可以为结构体)、综合应用(数组、函数和常用算法的综合应用,附加题可以为指针、结构体或链表)。必做题为普通编程题或复杂编程题,每次10分,附加改错题为每次2分。前5次考试考试时间为30分钟,综合应用考试时间为40分钟。
2)前5次去掉一个最低分,加上最后一次综合应用考试成绩,作为上机考试成绩。
3)最后一次综合应用考试不允许缺考,缺考者不给补考机会。因故不能参加前5次上机考试的学生,需提供辅导员签字批准的假条,否则不给补考机会。在辅导员签字批准后,可以参加补考,但无论缺考几次,都只能参加一次补考。补考时间定在综合考试之后进行,补考试题由同一时间上实验课的挂牌教师联合出题,考试内容可以涉及选择、循环、函数(包括递归)、数组、字符串(包括指针)、结构体或综合应用等全部知识点,必答题分数为100分(1小时,4道题),折合为该考生缺考的分数后作为该考生补考的分数,例如:若缺考n次,则补考分数折合为n-1次缺考的分数。
当n>=2时(即缺考2次和2次以上),则折合后的补考成绩 = 补考分数*10*(n-1)/100
当n=1时(即缺考1次),学生自愿选择是否参加补考,如果参加补考,则折合后的补考成绩 = 补考分数/10,并且该补考成绩视为前5次考试成绩中的一次。
2. 实验大作业,占总成绩的25%(程序占15%,报告占10%)
从学习指导书上的学生成绩管理系统V1.0(一维数组),V2.0(一维数组+函数指针),V3.0(一维数组+函数指针+指针数组),V4.0(二维数组+函数指针+指针数组),V5.0,V6.0(结构体+文件)中任选一个完成,根据难度的不同分别对应的满分分别为7分,8分,9分,10分,11分,12分。用链表和文件实现学生成绩管理系统V6.0,满分为15分。以下加分和扣分累计结果,到程序满分线15分封顶,不再额外加分。
课堂大翻转展示的程序可以用作实验大作业,但是实验大作业必须单人完成,课堂大翻转可以小组组队完成。
加分项:
1) 对程序有优化,例如随机生成学生数据信息并增加了程序的健壮性,加1分。
2) 增加了删除学生记录、修改学生记录的功能,各加1分。
3) 添加了其他特殊的功能或者趣味性元素,例如模糊查询、考勤、学分绩等,酌情加1-3分。
4) 如果独立设计并完成一个课外的综合应用程序,根据选题的新颖性、题目的难度、代码规模,可以在参考同等难度和代码规模的学生成绩管理系统满分线的基础上,加1-3分。
扣分项:
1) 验收时不能正确回答老师的问题,酌情扣1-2分。
2) 程序有错误,有bug,酌情扣1-2分。
3) 代码风格不好,缺少函数和重要语句的注释,变量名和函数名不符合要求(例如用汉语拼音命名),没有对齐与缩进,酌情扣1-2分。
4) 未按时提交实验报告,酌情扣1-2分.
5) 实验报告中只要出现内容雷同,一律扣5分。
最后一次(第8次)实验课不考试,检查指定实验的完成情况,若未按时完成,则按0分处理。要求学生在第7次实验课之前完成实验大作业。如果学生较多,可以在最后两次实验课上检查学生的实验大作业。
3. SSE随机抽题作业,占总成绩的25%
SSE刷题满分线是2500分,对应相对分25分,(刷题超过3000分按排名加1-3分),及格线是500分,对应相对分15分。提交截止时间为最后一次上课后的下一周周日。
SSE刷题加分项:
1)在习题市场出题代替SSE刷题,每审核通过1道题,则抵SSE刷题分100分。若机考成绩全部低于5分,则取消所有的出题加分。
2)参加课堂的随机小翻转,每参加1次可抵SSE刷题分100分。
3)每找到SSE上一道题目的错误,抵SSE刷题50分。
注:抵刷题分就是减免的刷题分(相当于降低其满分线),不参与超额刷题分的计算,仅参与及格线上下或者及格线与满分线之间的阶梯分(相对分)计算。
SSE刷题扣分项:
1)随堂测验不及格者,1次不及格就扣刷题分100分,缺考1次扣刷题分200分。
随堂测试目的和内容:教师随堂测验学生的自学情况,题型采用编程补全题、程序填空题、程序改错题、选择题、判断对错题、简答题的形式。随堂测试的题目从MOOC规定的自学内容(随堂测试、随堂讨论、周测验题、编程题)中选择。
4. 参加课堂大翻转,可以赢得附加分1-10分。
参与方式:在最后一次上课前,通过在MOOC上自学文件等内容并综合运用课程所学知识,并应用自顶向下、逐步求精的模块化设计思想,在课外完成一个与众不同、有创意的综合应用程序,在课上展示和答辩,以获得附加分。学生现场讲解并演示程序6分钟,2分钟学生提问。每个小组1-3人,如果参与报名的小组数多,就采取随机抽签的方式。
评分方式:全班同学现场投票和计票,每张选票最多投2个组(投多组者按废票处理),课后按票数排序,排名第一的小组可获得10分的附加分(小组其他成员的分数在此分数基础上乘以一定的系数),排在后面的小组根据票数的递减程度依次减1-3分。只要报名参加翻转,即使票数为0,也至少能得1分。
最后的大翻转可以小组组队完成。最多三人一个小组,要求分工明确,组长负责讲解和答辩,组员可以协助其演示程序。
二人一组的,组员的成绩由组长根据其贡献大小给分,系数最多不超过0.6。组长的系数为1.0。
三人一组的,组员的成绩由组长根据其贡献大小给分,一位组员的系数不超过0.5,另一位组员的系数不超过0.3。组长的系数为1.0。
参与翻转的每个组的分数由学生现场投票确定,按票数多少分别为2-10分,只要参与翻转、票数为0,也能得到1分。
每个小组组长和成员的最终得分由小组分数作为系数乘以其每个人的组内分数确定。例如,某二人小组得分8分,组长得分就是1.0*8=8分,组员的得分是0.6*8=4.8分,四舍五入取整后为5分。
大学计算机基础
[1] 苏小红,王宇颖,孙志岗.C语言程序设计(第3版)[M].北京:高等教育出版社.2015
[2] 苏小红,王宇颖,孙志岗.C语言程序设计学习指导(第3版)[M].北京:高等教育出版社.2015
相关链接:
Codeblocks 下载: https://www.codeblocks.org/
SSE随机抽题题库系统: https://sse.hit.edu.cn/train/login.aspx