收藏 分享(赏)

《程序设计语言》课程实验教学大纲.doc

上传人:dzzj200808 文档编号:2216654 上传时间:2018-09-05 格式:DOC 页数:11 大小:58.50KB
下载 相关 举报
《程序设计语言》课程实验教学大纲.doc_第1页
第1页 / 共11页
《程序设计语言》课程实验教学大纲.doc_第2页
第2页 / 共11页
《程序设计语言》课程实验教学大纲.doc_第3页
第3页 / 共11页
《程序设计语言》课程实验教学大纲.doc_第4页
第4页 / 共11页
《程序设计语言》课程实验教学大纲.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

1、程序设计语言课程实验教学大纲一、实验课名称:程序设计语言Program Language 二、实验课性质:独立设课三、适用专业:信息管理与信息系统,信息与计算科学,数学与应用数学,统计学四、采用教材及参考书:谭浩强,C 程序设计,清华大学出版社,北京,1991 年五、学时学分:课程总学时:64;课程总学分:3;实验课总学时:36;六、实验项目名称和学时分配序号实验项目名称学时分配实验属性实验类型实验者类别每组人数必开/选开1 数据类型、运算符和表达式 2 专业 验证本、专科1 必开2 最简单的 C 语言程序设计 3 专业 综合本、专科1 必开3 选择结构程序设计 5 专业 设计本、专科23 必

2、开4 循环控制 5 专业 设计本、专科23 必开5 数组的定义与算法 4 专业 设计本、专科23 必开6 函数 5 专业 设计本、专科5 必开7 指针 5 专业 设计本、专科5 必开8 结构体与共用体 6 专业 设计本、专科5 必开9 位运算与文件 1 专业 设计本、专科5 必开七、实验教学的目的和要求指本门实验课总的目的和要求,通过实验培养学生总体上了解或掌握什么方法或技能,达到什么目的;对学生有什么具体要求(比如:理解实验原理及实验方案,掌握正确操作规程;掌握各种仪器的使用,了解其性能参数、适应范围及注意事项等) 。八、实验项目的内容和要求实验 1: 数据类型、运算符和表达式1、实验内容:

3、内容 1:掌握符号常量的使用(1)分析以下程序的功能#define PI 3.14main() float s,r;printf(“input a float number:n”);scanf(“%f”,s=PI*r*r;printf(“s=%fn”,s);(2)写出以下程序的运行结果#define M 5+6main() int a=5,b;b=M*a;printf(“b=%dn”,b);(3)写出下列程序的运行结果,并比较与(2)程序的区别,从而得出符号常量定义的本质。#define M (5+6)main() int a=5,b;b=M*a;printf(“b=%dn”,b);内容 2:

4、大小写字母转换。运行下面的程序并写出运行结果main() char c1,c2;c1=a; c2=b;c1=c1-32; c2=c2-32;printf(“%c %c”,c1,c2);内容 3:考虑将下面的程序 c1 和 c2 赋以整数为初值main() char c1,c2;c1=97; c2=98;c1=c1-32; c2=c2-32;printf(“%c %c”,c1,c2);内容 4:本章小知识综合题。写出下列程序执行的屏幕输入以及显示的结果!认真思考每一步的原理!#define X 5.3+9.1main() int a1,a2,a3,zj1,zj2;unsigned int u1=

5、8;float b1,b2,b3;char c1=h,c2=i,c3=s;printf(“u1=%dn”,u1);printf(“input a int number a1=n”);scanf(“%d”,printf(“input a int number a2=n”);scanf(“%d”,a3=a1+a2+u1;printf(“a1=%d,a2=%d,u1=%d,a3=a1+a2+u1=%dn”,a1,a2,u1,a3);a3=a3-(int)(x);printf(“a3=a3-(int)(x)=%dn”,a3);printf(“%d,%c,%c#bfloattintx01x03n”,c1

6、,c2,c3);zj1=1; zj2=+zj1;printf(“1:zj1=%d,zj2=%dn”,zj1,zj2);zj2=zj1-;printf(“2:zj1=%d,zj2=%dn”,zj1,zj2);printf(“a1=%d, a2=%d, a3=%dn”,a1,a2,a3);a3*=a1+2*a2;printf(“a3=a3*(a1+2*a2)=%dn”,a3);printf(“%d,%d,%dn”,-0x13,011,-024);2、实验要求:(1)掌握定义整型、字符型和实型变量的方法,以及对它们的赋值方法。(2)学会使用 C 语言的有关算术运算符,以及包含这些运算符的表达式。(3

7、)学会编辑、编译、连接和运行 C 语言程序。实验 2:最简单的 C 语言程序设计1、实验内容:内容 1:编程序,输出如下图形。* * * * * * * * * * * * * * * * * * * * *内容 2:编写程序,输入变量 x 值,输出变量 y 的值,并分析输出结果。(1)y = 2.4 * x - 1 / 2(2) y = x % 2 / 5 - x(3) y = x 10 long int b=10;float x=10.0;double y=10.0;printf(“a=%d,b=%ld,x=%f,y=%lfn”,a,b,x,y);printf(“a=%ld,b=%d,x=

8、%lf,y=%fn”,a,b,x,y);printf(“x=%f,x=%e,x=%gn”,x,x,x);内容 4:请写出下面程序的输出结果:main() int a=6,b=3;float x=37.8534,y=-729.124;char c=B;long n=7654321;unsigned u=65535;printf(“%d%dn”,a,b);printf(“%4d%5dn”,a,b);printf(“%f,%fn”,x,y);printf(“%-10f,%-10fn”,x,y);printf(“%8.2f,%8.2f,%.4f,%.4f,%3f,%3f n”,x,y,x,y,x,y)

9、;printf(“%e,%10.2en”,x,y);printf(“%c,%d,%o,%xn”,c,c,c,c);printf(“%ld,%lo,%lxn”,n,n,n);printf(“%u,%o,%x,%dn”,u,u,u,u);printf(“%s,%5.3sn”,”BUTTER”,”STUDENT1”);2、实验要求:(1)掌握赋值语句的使用。(2)掌握数据的输入/输出方法,学会输入/输出函数的使用方法实验 3 选择结构程序设计1、实验内容:范例 1:p101 例 5.6 。内容1:计算下列分段函数值:其 他 及且且 ,1321065 ,)(22xxxf 用if语句实现分支。 变量x用

10、scanf函数输入,结果的输出采用以下形式:x=具体值,f(x)=具体值 分别输入 x=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0,运行该程序。 范例 2:p103 例 5.7。内容 2:用 scanf 函数输入一个百分制成绩(整型量) ,要求输出成绩等级A,B, C,D ,E。其中 90100 为 A,8089 为 B,7079 为 C,6069 为 D,60 分以下为 E。题目要求:用 if 语句实现分支用 switch 语句实现分支2、实验要求:选择结构程序设计是最基本最常用的一种程序设计技能,要求: (1)进一步掌握各种表达式的使用;(2)利用 IF 语句实现选择结构;

11、(3)利用 switch 语句实现多分支选择结构;(4)练习调试与修改程序。实验 4 循环控制1、实验内容:内容 1:利用循环实现九九乘法表。内容 2:打印如下数字方阵(打印行数 n 可输入)1 2 3 4 52 2 3 4 53 3 3 4 54 4 4 4 55 5 5 5 5内容 3:“鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁母雏各几何?”2、实验要求:进一步联系选择结构的程序设计。 练习并掌握实现循环结构的三种方法 练习并掌握选择结构与循环结构的嵌套 练习调试与修改程序 实验 5 数组的定义与算法1、实验内容:范例 1:定义一个含有 30 个整型元素的数组,按安

12、顺序分别赋予从 2 开始的偶数,然后安顺序每 5 个数求出一个平均值,放在另一个数组中并输出。 内容 1:设计一个程序,实现如下功能:(1)定义一个数组输入 30 个整数。(2)给数组赋初值(3)按顺序每 5 个求出一个平均值,并存放在另外一个数组中(4)输出数组。题目要求:数组的定义、赋值与输入输出。 范例 2:有一个字符串(“adfgikmnprs”)存放在一个数组中,输入一个字符,要求用折半查找法找出该字符是数组中第几个元素的值。如果该字符不在数组中,则输出“*”。2、实验要求:学会对数组的有关操作,学会运用字符数组与系统所提供的字符串函数,要求: (1)数组的定义、赋值;(2)数组的输

13、入输出方法;(3)字符数组和字符串函数的使用;(4)数组有关的算法(排序算法) ;实验 6 函数1、实验内容:范例 1:写一个用迭代法求平方根的函数。内容 1:设计一个程序,实现如下功能:(1)能输入 n 个整数。(2)用选择法对 n 个整数实现排序的通用函数。(3)能输出 n 个整数。范例 2:求组合数。内容 2:用递归函数实现计算 k 阶裴波那契数列的第 m 项,所求第 m 项大于等于给定的数值 max, 其前一项小于给定的数值 max。要求 2:用 2 个文件实现该程序,用户自定义函数放在文件 mysource.c 中,主函数放在 mymain.c 中。2、实验要求:函数是 c 程序的基

14、本组成单位,要求熟练掌握:(1)函数的定义及调用;(2)函数参数的传递,形参、实参的关系,函数原型;(3)变量的存储类别及它们之间的差别;(4)作用域概念,全局变量与局部变量的比较。(5)掌握函数的嵌套调用、递归调用,掌握递归法编程;(6)掌握程序的多文件组织。 实验 7 指针1、实验内容:内容 1:将两组整型数据中的相同元素合并为一组降序排列的序列,要求时间复杂度最小。要求:(1)能输入这两组的数据。(2)调用实验 a 编好的排序算法对分别两组进行排序。(3)将两组已升序排好的数据序列中的相同元素合并为一个降序排列的数据序列,要求时间复杂度最小。(4)能输出合并后的数据。内容 2:40 个学

15、生 4 门课程,4 门课程分别为:语文、数学、英语、物理,求出(1)每个学生的平均分并输出;(2)每门课程的最高分并输出;(3)单科最高分并输出;(4)总分最高的学生的姓名与学号并输出。题目要求:以上题目要求函数的形参用指针定义。内容 2:在图形态下设计绘图软件,该软件具有如下功能:(1)通过菜单选择的方式在指定的位置画点、线、矩形;(2)能够给矩形着色,能够填充矩形。2、实验要求:(1)指针的定义与使用;(2)指针和数组的相互关系;(3)数组或指针作为函数参数的函数定义及调用方法;(4)字符串与运算。(5)会设计 dos 提示符命令实验 8 结构体与共用体1、实验内容:内容 1:有 10 个

16、学生,每个学生的数据包括学号、姓名、3 门课的成绩,从键盘输入 10 个学生的数据,要求打印出 3 门课总平均成绩,以及最高分的学生的数据(包括学号、姓名、3 门课的成绩、平均分数) 。要求:(1)用 input 函数输入 10 个学生的数据。(2)用 average 函数求总平均分。(3)用 max 函数找出最高分的学生数据。(4)总平均分和最高分学生的数据都在主函数中输出。内容 2:13 个人围成一圈,从第一个人开始顺序报号 1、2、3。凡报到“3”者退出圈子,找出最后留在圈子中的人原来的序号。要求用链表实现。2、实验要求:(1)结构体类型变量的定义与使用;(2)结构体类型数组的概念和使用

17、;(3)链表的概念,初步学会对链表进行操作;(4)共用体的概念与使用实验 9 位运算与文件1、实验内容:内容 1:设计一个函数,使给出一个数的原码,能得到该数的补码。要求:用八进制形式输入和输出。内容 2:从键盘输入一个字符串,将其中的小写字母全部转换成大写字母,输出到磁盘文件“upper.txt” 中保存。输入的字符串以“ !” 结束。然后在将文件 upper.txt 中的内容读出显示在屏幕上。要求:学会对文件的基本操作。2、实验要求:(1)位运算的概念的方法,学会使用位运算符;(2)学会使用文件打开、关闭、读、写等文件操作九、实验课考核方式:(1)实验报告:班级:学号:姓名:课程名称:实验

18、教师:实验时间:实验题目 需求分析:程序设计的任务,强调需要做什么,明确规定任务。 输入的形式和输入值的范围: 输出的形式: 程序所能达到的功能: 测试数据:包括正确的输入输出结果和错误的输入输出结果。概要设计:对于面向过程的程序设计,说明用到的数据结构定义、主程序的流程及几个程序模块的调用关系,各个模块的功能。对于面向对象的程序设计,要说明对象的抽象划分思想、功能、属性、对外提供的服务以及类之间的继承关系图。详细设计:提交有注释的源程序或者用伪代码写出每个操作所涉及的算法。调试分析:调试过程中所遇到的问题及解决方法。算法的时空分析。经验与体会。程序使用说明书:用户如何使用你的程序,详细列出每一操作步骤。实验分数: 实验教师签字:(2)考核方式:实验课单独考核,上机考试。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报