版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 程序设计基础 实验课程教学大纲实验课程教学性质、目的、要求程序设计基础是医药软件、信息管理和信息系统专业的一门专业基础课,它是一门实践性很强的课程,需要通过大量的实践,培养学生的计算思维,训练学生的程序设计和程序调试能力。实验遵循初学者的认知规律,结合课程教学大纲的相应内容,引导学生由浅入深了解并掌握C+程序设计语言的基本语法,通过大量上机题目的训练,培养学生分析问题、算法设计、编写程序、及调试程序的能力,在实训中掌握程序设计的基本思想和一般方法,提高计算思维能力和程序设计能力。要求学生在上机前认真做好各种准备工作,独立完成程序编制,在规定的时间内将所编程序在计算机上调试通过,提交到CG平台
2、。实验内容实验一使用cin和cout进行数据的输入和输出 实验目的:1、了解和熟悉codeblocks集成开发环境;2、学会使用cout进行数据输出操作;3、学会使用cin进行数据输入操作。实验内容:1、表白C+。设计一个C+程序,输出以下信息: I LOVE C+!2、为程序1加上装饰,输出如下图案:* I LOVE C+! * *3、编写程序,实现从键盘终端输入两个整型的数据,计算其和,以形如1+2=3的形式输出。4、温度转换。从键盘输入华氏温度,将其转换为摄氏温度。5、设计一个程序,从键盘输入一个圆的半径,求其周长和面积。(应用符号常量)实验二基本数据类型和表达式实验目的:1、掌握基本数
3、据类型常量的表示方式; 2、掌握基本数据类型变量的定义; 3、掌握运算符与表达式的应用;4、学会编写简单程序验证常量、表达式、运算符所表示的值。实验内容:1、设计一个C+程序,输入三个学生的成绩,求其总成绩。2、从键盘输入三个整数,求这三个整数的较大值。3、设计一个程序,从键盘输入一个小写字母,将它转换成大写字母后输出。(提示:小写字母ASCII=大写字母ASCII-0 x20)4、从键盘输入一个三位整数n=abc,从左到右用a、b、c表示各位的数字,现要求依次输出从右到左的各位数字,即输出另一个三位数m=cba,例如:输入123,输出321,试设计程序。(提示:a=n/100,b=(n-a*
4、100)/10,c=n%10,m=c*100+b*10+a)5、从键盘输入一个整数,判断其奇偶性。实验三选择结构程序设计实验目的:1、掌握if语句的使用; 2、掌握switch语句的使用; 3、掌握switch语句中break语句的使用。实验内容:1、从键盘终端输入一个整数,若该整数为奇数则输出“该数是奇数!”,为偶数则输出“该数为偶数!”(要求用两种方法:if和switch)2、从键盘终端输入三个整数,输出这三个数中的最大值和最小值。3、从键盘终端输入学生的成绩,输出其等级。4、求一元二次方程的根。(方程的系数从键盘终端输入)5、编程设计一个简单的运算器,要求先输出一个菜单,如下图所示,输入
5、1或2或3或4,选择执行对应的运算。参与运算的操作数从键盘终端输入。实验四循环结构程序设计 实验目的:1、初步掌握循环结构的程序设计方法,掌握while语句的使用方法; 2、掌握do-while语句的使用; 3、掌握for语句的使用; 4、掌握break和continue的使用。实验内容:1、依次对从键盘终端输入的10个整数判断其奇偶性。2、判断并输出1-1000之间所有17的倍数,以5个一行输出。3、用公式求的近视值,直到最后一项的绝对值小于10-6为止。4、判断一个整数是否是素数。5、输入一行字符,分别统计出其中英文字母,数字和其他字符的个数。(cin.get())6、编程计算a+aa+a
6、aa+aaa(n个a)的值,n和a的值由键盘输入。7、求100-999之间的水仙花数(各位数的立方和等于其值。例如:407=4*4*4+7*7*7)。8、输出兔子序列:1 1 2 3 5 8 13。9、编程设计一个简单的可重复运算的运算器,要求先输出一个菜单,输入1或2或3或4,选择执行对应的运算,输入5退出运算器。参与运算的操作数从键盘终端输入。实验五循环结构嵌套实验目的:1、掌握嵌套循环的执行过程; 2、学会用循环嵌套解决实际问题;实验内容:1、乘法口诀表。(三角形的形式输出)2、求2-1000之间的所有完数(所谓完数是指它的所有因子之和等于它本身,如6=1+2+3)。 3、求2-1000
7、之间的所有素数,并以10个一行输出。4、输出下列图形。(a) *(b)*(c) * * * * * * * *5、求和S=1+(1+2)+(1+2+3)+(1+2+3+4)+。+(1+2+。+n)。n从键盘输入。6、求1!+2!+3!。+6!实验六函数实验目的:1、掌握函数的定义;2、掌握函数的调用;3、掌握return语句的使用。 实验内容:1、定义一个函数,实现判断某个整数是否是完数。并调用该函数求2-1000之间的所有完数(所谓完数是指它的所有因子之和等于它本身,如6=1+2+3)。2、定义一个函数,实现判断某个整数是否是素数。调用该函数求2-1000之间的所有素数,并以10个一行输出。
8、 3、定义一个函数,实现判断某个整数是否是素数。借用该函数验证哥德巴赫猜想:任意一个大的偶数都可以分解成两个素数之和。从键盘输入一个偶数,输出该偶数的两个素数之和。4、定义一个函数,实现求某个整数的阶乘。并调用该函数实现求1!+2!+3!。+n!5、定义一个函数,实现求任意两个整数之间的所有整数的和。并借助该函数求和S=1+(1+2)+(1+2+3)+(1+2+3+4)+。+(1+2+。+n)。n从键盘输入。6、若将某一素数的各位数字的顺序颠倒后得到的数仍是素数,则此素数称为可逆素数。编写一个判断某数是否为可逆素数的函数,在主函数中输入一个整数,再调用此函数进行判断。实验七一维数组实验目的:1
9、、掌握一维数组的定义;2、掌握一维数组的存储;3、掌握一维数组元素的访问;4、掌握一维数组的应用。实验内容:1、求从键盘终端输入的十个整数的最大值、最小值、平均值。2、从键盘终端输入10个整数,用冒泡法按从小到大排序后输出。 3、从键盘终端输入10个整数,用选择法按从小到大排序后输出。4、统计从键盘终端输入20个整数,统计其中有多少个正数、多少个负数。5、从键盘终端输入20个学生的成绩,统计各个分数段的人数。(小于60、60-69、70-79、80-89、90-100)用一个一维数组作为各分数段的计数器。6、从键盘终端输入一个十进制数,将其转换为二进制后输出。借助数组实现。7、利用数组实现求兔
10、子序列前50个数,并10个一行输出。8、利用一维数组求解并输出杨辉三角形前10行。实验八二维数组实验目的:1、掌握二维数组的定义;2、掌握二维数组的存储;3、掌握二维数组元素的访问;4、掌握二维数组的应用。 实验内容:1、二维数组的二维数组访问法。2、二维数组的一维数组访问法。3、求矩阵的转置矩阵。4、输出二维数组及每行的最大值。(函数法)5、求两个矩阵的乘积。6、利用二维数组求解并输出杨辉三角形前10行。实验九 字符数组实验目的:1、掌握字符数组的定义;2、掌握字符串的表示;3、掌握字符数组的使用4、掌握字符串变量的定义和使用。实验内容:1、编写函数实现求字符串的长度、字符串的复制、字符串的
11、连接、字符串的比较。2、对从键盘终端输入的5个字符串,按从大到小的顺序输出。实验十 指针实验目的:1、掌握指针的定义;2、掌握指针的表示;3、掌握如何通过指针访问数组;4、掌握指针作为函数的参数。实验内容:1、编写函数实现求字符串的长度、字符串的复制、字符串的连接、字符串的比较。2、编写一个程序,该程序建立一个动态数组,为动态数组的元素赋值,显示动态数组的值并删除动态数组。3、从键盘读入若干整数,将它们按由低到高排序输出。要求用一个数组存放各个整数;在主函数main()中实现数据的输入和输出操作,并用一个函数实现对数组元素的排序操作。排序函数调用另一个函数swap()实现两个数组元素的交换。可
12、以使用指针、引用两种方式实现函数参数的传递:swap(int *pa, int *pb);swap(int & a, int & b);另要求:用数组实现程序说明:用一个长度为10的数组存放待排序的数据,数组的定义为int iArray10;数组排序函数的原型为:void sort(int num, int iArray);其中num表示数组元素的个数,iArray是数组。用动态申请空间的方式实现程序要求。说明:使用指针来实现前面数组的功能int *piArray;piArray = new intnum;其中数组的大小num需要由用户预先输入。实验十一 结构实验目的:1、学习堆内存分配技术;
13、2、学习用指针构造链式数据结构;3、学习操作链表。实验内容:1、编程打印学生数据:有5个学生,每个学生的数据包括学号、姓名、三门课程成绩,从键盘输入5个学生数据,要求打印出三门课总平均分,以及最高分的学生数据(包括学号、姓名、三门课成绩、平均分数)。要求:用一个自定义函数,负责输入5个学生数据;用另一个自定义函数求总平均分;再用一个自定义函数求出最高分学生数据;总平均分和最高分的学生的数据都在主函数中输出。用多文件程序结构实现。2、用单向链表实现约瑟夫环问题。实验十二 类实验目的:1、定义类;2、学习构造类的方法;3、领会面向对象程序设计的方法。实验内容:1、打印矩阵定义一个矩形类,内有保护数
14、据成员长和宽(范围1-30),成员函数:取长、取宽。在构造该类对象时,初始化矩阵的长和宽。编制应用程序,创建矩形对象,并打印其矩形的形状,如一个长为6宽为15的矩阵打印如下:*2、生日是星期几。实验十三 友元实验目的:1、掌握友元函数和友元类的说明方法;2、理解友元函数和友元类的使用特点。实验内容:1、设计一个学生类,成员变量包含学生的姓名、成绩,设计其成员函数,并设计一个友元函数比较学生成绩的高低,并输出所有学生中最高分和最低分学生的姓名。2、设计一个日期类Date包含日期的年、月、日三个数据成员,编写一个友元函数,求两个日期之间相差的天数。3、设计一个点类Point,包含点的坐标x和y两个
15、数据成员,设计两个友元函数,分别计算两点间的水平距离和垂直距离。4、采用友元类方式重新编写以上各题的程序。实验十四 运算符重载实验目的:1、理解运算符重载的概念和实质;2、掌握运算符重载函数的定义方法;3、掌握将运算符重载为类的成员函数和友元函数的方法,掌握和运用几种常用的C+语言运算符的重载进行解决问题的方法。实验内容:1、运用运算符重载实现点类Point的两个对象(即两点)间横、纵坐标的相加运算。2、设计一个person类,包含姓名、年龄等数据成员。要求重载流插入运算符(),以实现对person类对象信息的输入和输出。3、设计一个复数类Complex,实现两个复数的相加(+)、相减(双目-
16、)以及取负(单目-)的运算。4、设计一个日期类,重载+和运算符实现求日期的前一天和后一天。实验十五 模板实验目的:1、理解类模板和函数模板的意义和作用;2、掌握类模板和函数模板的定义方法及在程序中的使用方法。实验内容:设计一个类模板,模拟动态数组的增加、删除、排序、输出等操作。实验课程学时分配序 号 实验名称 课 时 一 数据类型、表达式2二 程序设计初步8三 利用函数实现指定功能4 四 利用数组批量处理数据4五善于使用指针和引用4六用户自定义数据类型6七类和对象的特性2八怎样使用类和对象2九运算符重载2十继承与派生2十一输入输出流2教材与参考书1、(美) HYPERLINK /author/
17、%CE%C4%C4%E1%CC%D8_1 t _blank 文尼特( HYPERLINK /author/Stewart_1 t _blank Stewart HYPERLINK /author/Venit_1 t _blank Venit),(美) HYPERLINK /author/%B5%C2%C0%D7%BF%CB_1 t _blank 德雷克( HYPERLINK /author/Elizabeth_1 t _blank Elizabeth HYPERLINK /author/Drake_1 t _blank Drake) 著, HYPERLINK /author/%D4%B6%BA%EC%C1%C1_1 t _blank 远红亮等译,程序设计基础(第5版), HYPERLINK /publish/%C7%E5%BB%AA%B4%F3%D1%A7%B3%F6%B0%E6%C9%E7_1 t _blank 清华大学出版社出版,2013年04月2、 HYPERLINK /author/%BD%
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025《Young在春晚》招商方案-
- 医学资料档案管理制度
- 人教部编版四年级语文上册第16课《麻雀》精美课件
- 算法设计与分析 课件 5.3-动态规划-原理方法步骤
- 2024年西宁客运资格证培训资料
- 2024年盐城申请客运从业资格证理论考试题
- 2024年曲靖客运从业资格证培训考试资料
- 2024年孝感道路客运输从业资格证理论考题
- 吉首大学《建筑美学》2021-2022学年第一学期期末试卷
- 吉首大学《常微分方程》2021-2022学年第一学期期末试卷
- 电机与电气控制技术课程说课
- 职业生涯报告六篇
- 作业本印制服务投标方案(技术标)
- 上虞净化工程施工方案范本
- 【语文】宁波市小学四年级上册期中试卷
- 辽宁省沈阳市铁西区2023-2024学年七年级上学期期中地理试题
- 环保设施安全风险评估报告
- 建设工程消防验收技术服务项目方案(技术标 )
- 脑梗死恢复期康复临床路径表单
- 拆除桥梁专项施工方案范本
- 【基于活动理论的信息技术课程教学研究8300字(论文)】
评论
0/150
提交评论