程序设计课程设计教学大纲
西北师范大学课程教学大纲
PAGE
PAGE 6
西北师范大学计算机科学与技术(师范)专业课程教学大纲
程序设计课程设计
一、说明
(一)课程性质
本课程是计算机科学与技术、物联网工程、计算机科学与技术(软件工程)、计算机科学与技术(网络与信息安全)等专业或者专业方向的一门实践类专业基础课程,是学生在学习完《Python程序设计》、《C语言程序设计》、《面向对象程序设计(JAVA)》之后进行的设计性实验课程。
(二)教学目的
本课程的目的是:通过设计和实现较复杂的程序项目,让学生能够更好地掌握各种程序设计语言,更深地理解较复杂程序的设计、实现、编码、测试的方法和流程,锻炼和培养更扎实的程序设计能力,开阔学生的视野,提升学生的信心。
通过该课程的学习,学生应该积累更多的程序开发经验,掌握基本的程序功能分析和模块划分、程序的多文件组织、按工程要求的代码编写、程序测试与调试、程序安装包的打包等方法,为后续专业课程的学习和解决实际问题奠定扎实的程序设计基础。
(三)教学内容
指导学生选择与实际应用紧密结合的较为综合性的题目,并指导学生根据题目要求进行程序的功能和性能分析、数据结构选择和设计、模块划分、算法的设计,以及程序代码的实现和测试,将分析、设计、实现、测试的结果总结、整理成为项目文档。因此,课程的教学重点是:
程序功能和性能分析与设计的基本方法;
对应问题的数据结构选择和算法设计方法;
较大型的程序代码的编写、编译和测试方法;
文档撰写的方法。
(四)教学时数
实践36学时。
(五)教学方式
多媒体演示与讲解、讨论、答辩验收。
二、本文
(一)基本要求
通过本课程的学习,学生能掌握较复杂的综合性程序的分析和设计方法,大程序代码的组织、编写、编译方法,程序的测试方法,以及软件项目文档撰写的基本方法。
(二)实验项目总表
序号
实验项目名称
学时数
项目类别
项目类型
1
简单的文件读写程序
4
基础
必做
2
综合软件系统设计与开发
32
综合
必做
(三)实验项目内容及要求
实验一:简单的文件读写程序
实验目的:复习和熟悉利用Python或者C或者Java语言读写不同类型文件的方法,掌握程序测试和调试的方法。
实验内容:
利用学习过的编程语言,编写一个可以读写无结构文件的程序,如编写一个可以对任意文件进行复制的程序。
利用学习过的编程语言,编写一个可以读写有结构文件的程序,例如编写一个存储了学生基本信息(包括固定长度的姓名、性别、年龄、专业、各门课的成绩)的程序,并对学生按照成绩总分进行从高分到低分的排序,并打印结果。
实验二:综合软件系统设计与开发
实验目的:通过开发较为复杂的综合性程序,让学生掌握复杂程序的分析、设计、编码、测试、文档撰写的基本流程和方法。
实验内容:可让学生从以下的建议题目中任选一个,教师也可以根据技术的发展、专业的新要求,来布置合适的、并具有相当工作量的新题目。
建议题目1:学生成绩管理系统
题目要求:
1)能按学期、按班级完成对学生成绩的录入、修改
2)能按班级统计学生的成绩、求学生的总分及平均分
3)能根据学生的平均成绩进行排序
4)能查询学生成绩、不及格科目及学生名单
5)能按班级输出学生的成绩单。输出的学生的成绩单信息包括:
学生学号、姓名、所选课程名称、平时成绩、期末成绩、平时成绩所占百分比
6)能对学生各科成绩进行录入:。
7)能对学生的成绩进行增加、删除、修改。
8)能对学生的成绩按总成绩,姓名,进行查询。
9)能输出学生的所有数据,能进行成绩统计
10)能进行总分查询排名。
说明:
1、计算学生总评成绩的方法:
总评成绩=平时成绩*平时成绩所占百分比+期末成绩*(1-平时成绩所占百分比)
2、学生成绩及课程信息用文件保存
程序运行开始之后的界面形式参考(也可以根据自己的理解设计操作的界面,或者GUI图形用户界面):
*****************欢迎来到学生成绩查询系统*****************
请选择您需要的操作!
操作:
(1)数据录入
(2)增加学生
(3)删除学生
(4)修改数据
查询:
(5)按班级查询
(6)按姓名查询
(7)按课程查询
(8)输出所有学生的数据
成绩统计:
(9)每个学生的平均成绩
(10)各科不及格人数
排名:
(11)按总分查询排名"
(12)退出
选择相关操作请输入相对的括号里的阿拉伯数字及字母:
建议题目2:图书管理系统
功能要求:
图书管理系统
图书管理系统
图书管理子系统
读者管理子系统
借阅管理子系统
图书添加
图书删除
图书浏览
图书查询
读者添加
读者删除
读者浏览
读者查询
图书借阅
图书归还
借阅查询
借阅浏览
界面形式参考(可按