版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C和C+程序设计实验一、课程概况所属专业:软件工程开课单位:数学计算机科学学院课程类型:专业实验课程课程代码:07414200开课学期:1学分:1学时:34核心课程:否拟使用教材: 学院编写的程序设计基础|C语言设计课程实验指导书国内(外)现有教材:胡明、王红梅.程序设计基础(第二版).清华大学出版社.2016裘宗燕.从问题到程序程序设计与C语言引论(第2版).机械工业出版社.2011谭浩强、张基温.C语言习题集与上机指导(第二版). 高等教育出版社.2002郭大海.实用C语言编程(第三版).中国电力出版社.2001李春葆.C语言程序设计题典.清华大学出版社.2002Charles Petzo
2、ld.Programming Windows程序开发设计指南.2000学习参考资料谭浩强.C+程序设计实践指导.清华大学出版社.2007吴文虎、经彤.程序设计基础(第2版)习题解答与上机指导.清华大学出版社.2008二、课程描述C/C+程序设计实验实践是软件工程专业的重要实践性课程。目的在于培养学生分析问题和解决问题的能力,为学生提供了一个既动手又动脑,独立实践的机会。将课本上的理论知识和实际应用问题进行有机结合,提高学生程序设计、程序调试及项目开发能力。为后续课程:JAVA,数据结构,软件工程等软件技术基础课程奠定必要的实践基础。三、课程目标本课程的教学,既要使学生了解程序设计语言的基本概念
3、,初步培养解决实际问题的编程思路、掌握简单的程序设计方法,同时也为为后续课程:C+,数据结构,软件工程等软件技术基础课程奠定必要的实践基础。作为课程教学的实践环节,实验目的是使学生通过实验能够对课堂讲授内容进行验证、设计或综合运用,从而进一步加深知识的理解与掌握。任务是培养学生的独立思考能力与动手编程能力。在必要的教师辅导下,由学生独立编写C程序,通过上机调试程序,解决实际问题,从中了解计算机语言的功能和适用领域。四、教学要求C/C+程序设计是一种实用性和实践性要求很强的程序设计语言,要求学生在较好的掌握理论知识的基础上,多动脑,多实践,自己动手编写、调试程序。通过布置具有一定难度、一定编程量
4、的题目,使学生通过课程实践掌握C/C+语言的知识和编程技术,掌握程序设计的思想和方法,具备利用计算机求解实际问题的能力。本课程由17个实验组成,授课教师根据理论课教学情况,选择相应的实验内容。实验前要求学生提前完成程序的编写,以便有足够的时间在机房调试程序,掌握调试程序的技巧和方法。五、考核方式及要求为实现课程教学目标,本门课程考核采用平时上机实践、期末课程设计相结合的方式进行。平时考核用于考察学生每次上机编程上交的电子作业和在线测试成绩,占课程总成绩的70%;期末课程设计主要用于检验学生综合设计的能力,占课程总成绩的30%;课程设计内容为一个小型计算机管理的系统设计与实现,要求学生完成程序且
5、通过调试并编写实验报告。六、课程内容实验一:C程序基本结构及其上机基本步骤(授课时间:第一学期第四周)教学目标:1、了解在VC+ 6.0上如何编辑、编译、连接和运行一个C程序。2、通过运行简单的C程序,初步了解C源程序的特点。3、掌握输入输出函数的简单使用。主要内容:1、上机熟悉C/C+编程环境,在VC+ 6.0中编辑一个源程序,该源程序要求显示如下的内容:*程序设计基础*再对这个程序进行编译、连接和运行,并查看运行结果。2、要求用户从键盘输入一个整数,输出这个整数的7倍值。3、A+BProbrem(OJ1306) 输入两个整数,输出它们的和。学 时:2学时教学方法:演示法/讲授/现场指导实验
6、类型:验证性实验实验二:C语言常量和变量的使用(授课时间:第一学期第五周)教学目标:1、掌握C语言中的基本数据类型。2、掌握C语言中的常量和变量的使用。3、进一步熟悉C语言程序的编辑、编译、连接和运行。4、掌握数据的输入输出的方法。主要内容:要求用户从键盘输入圆的半径,输出这个圆的周长,要求输出的值保留2位小数。温度转换:输入一个华氏温度转换成摄氏温度后输出。公式:C=5/9*(F-32)交换两个整数后输出数字重组(OJ1313)两点间的距离(OJ1315)学 时:2学时教学方法:演示法/讲授/现场指导实验类型:应用性实验实验三:选择结构程序设计(授课时间:第一学期第六周)教学目标:1、熟练掌
7、握用if语句和switch语句编程。2、学会正确使用逻辑运算符和逻辑表达式。3、熟练掌握各种选择结构及其嵌套的使用。主要内容:1、输入三个数a,b,c,要求按由小到大的顺序输出。2、将三个整数顺序排列(OJ1321)编写程序:从键盘输入3个整数,输出它们从小到大排列的序列。3、水果价格计算(OJ1325)编写程序:某水果按照单个重量不同而售价不同。2.5千克以下(不含2.5千克),单价0.2元,2.5-5千克,单价0.25元,5-7.5千克,单价0.3元,7.5-10千克,单价0.35元,10千克以上(含10千克),单价0.4元。现有一个水果,请确定其价格(精确到分)。4、点与三角形的位置判断
8、(OJ1323)读入一点的坐标和三角形的顶点坐标,判断该点在三角形内,在三角形边界上,还是在边界之外。学 时:2学时教学方法:演示法/讲授/现场指导实验类型:应用性实验实验四:循环结构程序设计(授课时间:第一学期第七周)教学目标:1、熟练掌握用循环语句:while语句、do-while语句、for语句编程。2、了解goto语句和if语句的循环语句的使用。主要内容:完成实验教材P31(1)(2)判断m是否素数。(实验教材P32)求平均成绩(OJ1330)编写程序,输入物理课的若干个同学的成绩,以“-1”结束,求平均成绩并输出。求和1(OJ1333)编写程序,求下面表达式的和:(1-1/3)+(1
9、/3-1/5)+(1/5-1/7)+.+(1/(2n-1) -1/(2n+1)打印数字(OJ1332)编程求出所有个位数是6且能被3整除的4位数,数字间用空格隔开,每行输出10个数字。学 时:2学时教学方法:演示法/讲授/现场指导实验类型:验证性、应用性实验实验五:循环嵌套(授课时间:第一学期第八周)教学目标:1、熟练掌握二重循环的使用。2、熟练掌握循环语句中break语句和continue语句的使用,并能理解他们的区别之处。主要内容:完成实验教材P35-362、找数字1。(OJ1337)编写程序,已知4个连续自然数乘积为3024,求这4个数。 3、求和(OJ1336)编写程序,输入数字字符c
10、和整数n,求下式的值。Sn=c+cc+ccc+cccc其中cccc是由n个数字c组成的整数。 4、简单计算器(OJ1338)设计一个简单的计算器,可以进行加、减、乘、除运算。结果保留两位小数,若输入的数字不能作相关运算,则输出ERROR。学 时:2学时教学方法:演示法/讲授/现场指导实验类型:验证性、应用性实验实验六:函数定义与调用(授课时间:第一学期第九周)教学目标:1、掌握函数的定义方法,理解函数返回类型、函数名、参数的意义。2、掌握函数调用的规则,形式参数和实际参数的传递方法。3、掌握函数的嵌套调用和递归调用。主要内容:求出1000以内所有的素数(编写函数实现素数的判定)求出1000以内
11、所有的完数(编写函数实现完数的判定)求可逆素数(OJ1344)编写一个函数,实现对数组元素的升序排列,函数声明为void mySort(int a,int n);十六进制转换为十进制(OJ1354)编写一个函数,将10进制数字转换成2进制数,函数声明为:void TenToTwo(int a,char s);编程求两个正整数的最大公约数和最小公倍数,函数的声明为:int Gys(int m,int n); /公约数int Gbs(int m,int n); /公倍数 8、有一个整数N,N可以分解成若干个整数之和,问如何分解能使这些数的乘积最大。请编程,由键盘输入一个整数N(N3*1,用递归函数
12、实现分解过程。)学 时:4学时教学方法:演示法/讲授/现场指导实验类型:验证性、应用性实验实验七:期中综合实验(授课时间:第一学期第十周)教学目标:1、熟练掌握程序流程控制语句,可以将实际问题转化为编程问题。 2、变量名规范,格式整齐,多做注释。主要内容:从3个红球,5个绿球,6个篮球中任意取出8个作为一组,进行输出。在每组中,可以没有篮球,但必须要有红球和绿球。设计程序找出方案。A,B,C,D,E五个小朋友一起分糖,其规则如下:A首先将糖分成5份,多余的一个归A,拿走自己的一份;B将剩下的糖也分为5份,多余的一个归B,拿走自己的一份。C,D,E依次按同样的方法分糖得自己的糖。问他们一共有多少
13、糖?一个数如果从左往右读和从右往左读数字是相同的,则称这个数为为回文数,比如898,1221,15651都是回文数。求:既是回文数又是素数的五位十进制数有多少个?A是一个四位数,且是一个完全平方数;B是一个四位数,且每一位的数字都相同;C也是一个四位的完全平方数。已知C=A-B,请编程求出所有这样的四位数A。学 时:2学时教学方法:讲授实验类型:应用性实验实验八:指针初步(授课时间:第一学期第十一周)教学目标:1、掌握指针的概念,学会定义和使用指针变量。2、掌握指针变量作为函数参数的使用方法。主要内容:完成实验教材P49程序1和程序2完成实验教材P50:1)、2)学 时:2学时教学方法:演示法
14、/讲授/现场指导实验类型:基础性、应用性实验实验九:一维数组(授课时间:第一学期第十二周)教学目标:1、熟练掌握一维数组的定义、初始化和输入输出方法。2、掌握与数组有关的常用算法(如查找、排序等)。主要内容:完成实验教材P53验证性实验完成实验教材P54应用性实验编一程序,将一维数组中的10个数按逆序存放,同时显示出来在卡拉OK大赛中,有10个评委为参赛的选手打分,分数为1到100分。要求:用一维数组存放选手的分数,选手最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均值。编写一个程序加以实现。有15个数存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个元素的值。如果
15、该数不在数组中,则输出“无此数”。以15个数用赋初值的方法在程序中给出。(选做题)“数学黑洞”:任意一个4位自然数,将组成该数的各位数字重新排列,形成一个最大数和一个最小数,之后两数相减,其差仍为一个自然数。重复进行上述运算,你会发现一个神秘的数。(验证卡布列克运算)学 时:2学时教学方法:演示法/讲授/现场指导实验类型:验证性、应用性实验实验十:多维数组(授课时间:第一学期第十三周)教学目标:1、熟悉数组的内存存储方式。2、了解多维数组的概念,重点掌握二维数组的定义、初始化。3、熟练使用二维数组处理矩阵问题。主要内容:找出一个二维数组的“鞍点”,即该位置上的元素在该行上最大,在该列上最小。也
16、可能没有鞍点。5个学生学4门课程,编程实现:求出每个学生的平均分,每门课的平均分以及每门课的最高分。实验教材P60:人数统计(OJ1359)学 时:2学时教学方法:演示法/讲授/现场指导实验类型:验证性、应用性实验实验十一:字符串(授课时间:第一学期第十四周)教学目标:1、掌握字符串的定义、赋值、输入输出。2、掌握字符串的基本操作函数。主要内容:完成实验教材P65-66验证性和应用性实验有一篇文章,共有3行文字,每行有60个字符。要求分别统计出其中英文大写字母、小写字母、数字、空格以及其他字符的个数。求最长单词长度(OJ1342)编写一个函数,连接两个字符串。输入10个字符串,在每个字符串中找
17、出ASCII码值最大的字符(如果ASCII值最大的字符在串中多次出现,认为第一次出现的字符是最大的),将其放在该串首位置上,并将原该字符串前的字符向后顺序移动。例如,某串原来为“abcgfged”,经过移动操作后变为“gabcfged”。学 时:4学时教学方法:演示法/讲授/现场指导实验类型:验证性、应用性实验实验十二:函数的嵌套与递归(授课时间:第一学期第十五周)教学目标:1、理解函数的嵌套调用方式。2、理解递归的定义,掌握递归函数的定义方法。3、学会使用函数的嵌套调用解决一些复杂应用问题,理解函数调用的程序设计思想。主要内容:完成实验教材P72验证性实验1)完成实验教材P73应用性实验1)
18、和2)友好数字(OJ1361)学 时:2学时教学方法:演示法/讲授/现场指导实验类型:验证性、应用性实验实验十三:自定义数据类型(授课时间:第一学期第十六周)教学目标:1、理解结构体数据类型。 2、认识和掌握结构体数组和链表。主要内容: 1、 对候选人得票的统计程序。设有3个候选人,每次输入一个得票的候选人的名字,要求最后输出各人得票结果。2、有10个学生,每个学生的数据包括学号、姓名、3门课程的成绩,从键盘输入10个学生数据,要求输出3门课程总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门成绩、平均分数)。3、建立一个职工基本情况统计表,基本情况包括职工号、姓名、性别、年龄等内容,要求统计:1)女职工占总职工数的比例;2)所有职工的平均年龄;3)30-40、4-0-50、50-60这三个年龄段的职工人数。4、已有a,b两个链表,每个链表中的结点包括学号、成绩。要求把两个链表合并,按学号升序排列。学 时:4学时教学方法:演示法/讲授/现场指导实验类型:综合性实验实验十四:期末综合实验(授课时间:第一学期第十七周)教学目标:1、掌握用模块化分析与设计方法解决实际问题。 2、熟练掌握结构体类型数据的使用,熟练掌握文件的操作方式以及相关
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医院大部室工作制度
- 医院内消杀工作制度
- 医院药药房工作制度
- 单位查验证工作制度
- 卫健局双拥工作制度
- 卫生站工作制度汇编
- 卫生院检验工作制度
- 印刷厂考勤工作制度
- 厨房蒸笼部工作制度
- 县委办信息工作制度
- 2026年消费维权竞赛试题及答案
- 2025年广东深圳市中考英语试卷真题及答案详解(精校打印版)
- 校医院内部财务管理制度
- 2026年兰考三农职业学院单招职业适应性测试题库附答案详解(黄金题型)
- 2025年一级建造师考试《矿业工程管理与实务》真题及答案
- 2025四川泸州市古蔺县考试选任聘副科级领导干部14人备考题库附答案
- 小学语文跨学科融合教学的实践探索课题报告教学研究课题报告
- 高校毕业生就业创业调查报告
- 山东省2026届高三12月大联考数学试题(含答案)
- 水晶产品采购合同范本
- 钢结构厂房组织方案
评论
0/150
提交评论