《程序设计实践》课程安排及要求-2017

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《程序设计实践》课程设计任务书

适用专业年级:电信类2016级

1. 课程安排

1.1 教学目标与任务

《程序设计实践》是电信类专业的一门重要的实践课。

本课程设计是为使《程序设计基础(C语言)》课程取得更好的教学效果而设置,是进一步培养学生综合应用VC的各种编程知识和技巧进行应用程序编写的实际能力,包括:⑴训练学生掌握对数组、指针、链表、文件等的基本操作;⑵训练学生掌握模块化程序设计方法;⑶训练学生对一个实际应用系统进行综合分析、设计、编程及调试等的能力;⑷培养学生自主学习和独立创新的精神。

通过本课程的学习,要求学生能够运用C语言的理论知识,运用流程图的基本手段,熟悉C语言的标准编程规范,取得程序设计说明书及源代码等成果。

同时,通过本课程的学习训练学生文档编写能力、问题的分析与解决能力、流程图的绘制能力、代码编写能力、程序调试能力、小组协调与合作能力等,从而强化学生对C语言的认识,能够熟练使用C 语言的基本语法结构,能够运用C语言的函数进行小组开发,并利用流程图进行程序设计和交流,掌握code review的形式和方法,掌握自主开发中小型程序的能力,了解大型程序开发的步骤和方法。

1.2 基本要求

本课程要求以一人一组的形式进行程序开发。在课程结束(含中期阶段性结束)时,每人都需提交以下几份成果:

1) 电子版的系统设计报告

2) 纸质版的课程设计报告

3) 程序源代码

1.3 课程阶段说明

本次课程设计分为两个阶段,第一个阶段为1-8周,第9周进行考核(考试),主要训练程序设计的基本功,包括程序设计三个基本结构、函数、数组、指针、链表、文件等的基本操作和部分典型算法;第二个阶段为10-17周,利用模块化的程序设计方法,对一个应用系统进行分析、设计和编程调试并撰写课程设计报告。本课程分为两个阶段,如表1所示。

表1 课程的3个阶段

1.3.1 基本能力训练阶段

按要求完成基本能力训练阶段的所有题目(题目见2.1):

1.3.2 系统程序设计阶段

根据给定的综合程序设计题目(2.2),选择1题或自主选择题目。完成对题目的功能分析,数据结

构设计,程序流程设计及代码编写,调试等工作。

1.4 评分标准

本次课程设计第一阶段占50%(其中平时检查和考勤20%,考试占30%);第二阶段占50%(其中平时检查和考勤10%,答辩30%,报告10%)。

1.5 上机辅导安排

本课程总共64学时,16周,每周4学时(2学时集中上机,2学时由指导教师自主安排答疑)。

班级:电信类1601-1606班。

表2 上机辅导安排

1.6 选题要求

1) 基础训练题目每题都做。

2) 综合题目选择1题,或自主选题。自主选题必须要用到链表或数组,文件操作,用户交互操作等。

【注】如果最后发现学生提交上来的成果是抄袭自网上现成的程序和文档,那么这门课程的成绩为零分。

2. 参考选题

2.1 基础题

1、输入x ,求分段函数⎪⎪⎩

⎪⎪

⎨⎧<+<≤----≥+-=10)

sin()cos(01021

01)(2

2x x x x x x

x x x x f 的值。 2、分别利用循环和递归求1+2+3+……+n 的和,其中n 从键盘输入。 3、输入一个正整数,求该正整数的位数以及各位数字之和。

4、输入一个正整数,将该正整数表示为其各个质因子之积的形式,如24=2*2*2*3。

5、输入一个正整数,求其各个因数之和(所谓一个数的因数,是指除了这个数本身之外,其它能整除这个数的数,如18,其因数有1,2,3,6,9)。

6、求出100~999之间的所有水仙花数(所谓水仙花数是指一个三位数,其各位数字的立方和等于该数本身)。

7、任何大于等于6的偶数都可以表示为两个素数之和,请将6~100之间的所有偶数都表示来两个素数之和,其中判断一个数是否是素数设计成函数。 8、输入两个正整数,输出这个两正整数的最大公约数和最小公倍数。 9、有斐波拉契数列1,1,2,3,5,8,13……,请按每行6个数据输出该裴波拉契数列的前30项。请分别用循环和递归算法求解。

10、利用泰勒展开式求cosx 和sinx 的值,要求当最后一项的值小于10-7时停止。

+-+-=!6!4!21)cos(6

42x x x x

+-+-=!

7!5!3)sin(7

53x x x x x

11、输出九九乘法表(可以全部输出,也可以按要求输出上三角或下三角的形式,要求每个式子数字占两位,其它符号1位,如 9* 9=81)。

12、输出1000以内的所有亲密数对,所谓亲密数对是指,如果m的因素和是n,而n的因数和是m,且m和n不相等,则称m和n是亲密数对。

13、用矩形法求函数)

x

=在区间(a,b)之间的积分,其中a,b从键盘输

2

cos(

)

(x

入(a

14、输入n打印如下实心菱形图案和空心菱形图案(下图为n=5时)。

15、输入一个正整数,将其转换为二进制、八进制或十六进制之后输出(程序中可以进行进制的选择)。

16、输入一行字符,统计其中字母、数字、其它符号的个数。

17、输入一行字符,将其中的大(小)写字母转换成小(大)写字母。

18、输入一个英文句子,统计其中单词的个数。

19、输入若干个数据,求输入数据中的最大值、最小值、平均值。

20、输入若干个数据,统计输入数据中大于平均值的数据个数。

21、输入n个数据存入一个一维数组中,将其顺序倒置后输出。

22、输入一个字符串,倒序输出该字符串。

23、输入n个数据,对其进行排序输入(简单排序、冒泡排序、选择排序、插

相关文档
最新文档