第一篇:《C语言程序设计》实验教学大纲1
《C语言程序设计实验》教学大纲
一、本大纲编写的依据是《C语言程序设计》教学大纲。实验总学时:32学时
学分:1学分
二、适用专业:全院C语言公共课
三、考核方式及评定标准:
实验操作能力50%,实验报告50%
四、配套的实验教材或自编指导书:
《C语言程序设计学习指导》
五、实验项目概述与学时分配:
实验一:C语言开发环境与输入输出(4学时)
(一)实验类型:演示性
(二)实验类别:学科基础
(三)每组人数:1人
(四)实验目的和实验能力要求:
1.学习Turbo C2.0集成环境,掌握源程序编辑方法;
2.掌握在Turbo C2.0集成开发环境中编译、调试与运行程序的方法; 3.通过运行简单的C语言程序,初步了解C语言源程序的特点。
(五)实验内容:
1.设计一个C语言程序,输出以下信息: *************** Hello!
*************** 2.设计一个程序,从键盘输入一个圆的半径,求其周长和面积。
3.设计一个程序,从键盘输入一个小写字母,将它转换成大写字母输出。4.输入一个华氏温度,要求输出摄氏温度。公式是:C=(5/9)*(F-32)。5.输入一个球的半径,求其表面积和体积。(S= 4πr²,V= 4πR³/3)。
(六)主要仪器设备:
1.计算机:CPU: Pentium III 600MHz以上 RAM:256M以上 硬盘空间:4G以上 2.操作系统: Windows2000、WindowsXP、Windows2003 任选其一 3.软件要求:Turbo C2.0
(七)所在实验室:计算机实验室 实验二:程序流程控制应用(6学时)
(一)实验类型:验证性
(二)实验类别:学科基础
(三)每组人数:1人
(四)实验目的和实验能力要求:
1.掌握Turbo C2.0集成环境中的单步执行;
2.熟悉if 与switch语句的格式、执行过程、使用方法及典型案例; 3.学会使用选择结构解决一般的实际问题,能编写简单的应用程序。
4.掌握循环结构while、do-while、for等语句格式、执行过程、使用方法及典型案例。
5.学习循环结构的嵌套使用。6.掌握分支与循环综合程序的编写方法;
7.学习并熟悉break、continue的区别与使用。8.学会常用数值与图形的编程方法。
(五)实验内容:
1.由键盘输入三个数,判断能否构成三角形。
2.某商店“五·一”长假期间购物打折。规则如下: 若每位顾客一次购物,①满1000元,打九折; ②满2000元,打八折; ③满3000元,打七折; ④满4000元,打六折; ⑤5000元,打五折;
编写程序,输入购物款,输出实收款。3.有下列分段函数:
编一程序,输入x,输出y的值。4.计算:S=1+2+3+4+„+n。
5.裴波那契数列的前几个数为1,1,2,3,5,8,„„,其规律为: 6.求出100~200之间的所有素数,输出时一行打印五个素数。7.编写程序用公式计算e的近似值。直到最后一项小于给定精度。8.从键盘输入任意多个整数(-999为结束标志),计算其中正数之和。9.求π近似值的公式为:
其中,n=1、2、3„设计一个程序,求出当n=1000时的π的近似值。
(六)主要仪器设备:
1.计算机:CPU: Pentium III 600MHz以上 RAM:256M以上 硬盘空间:4G以上 2.操作系统: Windows2000、WindowsXP、Windows2003 任选其一 3.软件要求:Turbo C2.0
(七)所在实验室:计算机实验室
实验三:函数与宏定义的应用(6学时)
(一)实验类型:验证性
(二)实验类别:学科基础
(三)每组人数:1人
(四)实验目的和实验能力要求:
1.了解函数的定义方法,理解函数的调用; 2.初步掌握函数的递归、嵌套调用; 3.掌握函数调用的实参与形参的传递。
(五)实验内容:
1.编写一个函数,用递归的方法求1+2+3+4+„+n的值。在主函数中进行输入输出。
mc2.编写程序,输入m和n(n>m),求n的值。3.编写程序,求两个自然数m和n的最大公约数和最小公倍数。4.分别输入整数半径和实数半径,使用函数重载计算圆的面积。5.使用内联函数计算长方形的面积。6.用函数调用方法打印九九表乘法。
(六)主要仪器设备:
1.计算机: CPU: Pentium III 600MHz以上 RAM:256M以上 硬盘空间:4G以上 2.操作系统: Windows2000、WindowsXP、Windows2003 任选其一 3.软件要求:Turbo C2.0
(七)所在实验室:计算机实验室 实验四:数组的应用(8学时)
(一)实验类型:验证性
(二)实验类别:学科基础
(三)每组人数:1人
(四)实验目的和实验能力要求:
1.掌握一维数组、二维数组、字符数组的定义、初始化赋值、数组元素的引用方法; 2.掌握求最大、小值、平均值、排序的方法以及有序数组的查找、增加、删除的编程方法;
3.初步掌握字符串处理函数的使用方法以及字符串复制、连接、测长等程序的编写方法;
4.掌握数组的典型应用。
(五)实验内容:
1.应用一维数组,对10个数进行冒泡排序,使其按照从大到小的顺序输出。2.应用二维数组打印5行杨辉三角形。
3.从键盘输入两个字符串,将它们连接成一个字符串。4.编程序将输入的字符串删去空格后输出。5.编程实现将一十进制整数M转换为D进制数。(选做)6.已知一int a[20]数组,编程将值为偶数的元素移到数组前端,值为奇数的元素移到数组后端。(要求元素比较、移动次数尽量最少)
(选做)7.某班有10个学生,进行了“数学”、“语文”、“英语”、“C语言”等科目的考试,编写程序:
(1)将考试成绩输入一个二维数组;(2)求每门课的平均成绩、每门课的不及格学生的人数及每门课的最高分与最低分;(3)求每个学生的平均成绩、总分、不及格门数;(4)按学生平均成绩的高低排序并输出。
8.设计一个程序,打印杨辉三角形。(使用其它方法)
(选做)9.编写程序,实现str=str1+str2的操作,此处运算符“+”表示将二个字符串str1、str2连接成一个字符串str。用键盘将二个字符串输入字符数组str1与str2中,连接后的字符串存放在字符数组str中,并输出连接后的字符串str。
(六)主要仪器设备:
1.计算机:CPU: Pentium III 600MHz以上 RAM:256M以上 硬盘空间:4G以上 2.操作系统: Windows2000、WindowsXP、Windows2003 任选其一 3.软件要求:Turbo C2.0
(七)所在实验室:计算机实验室 实验五:指针的应用(8学时)
(一)实验类型:验证性
(二)实验类别:学科基础
(三)每组人数:1人
(四)实验目的和实验能力要求:
1. 理解指针的基本概念和运算 2. 掌握指针与数组、指针与函数、指向字符串的指针的应用 3. 掌握多重指针的概念和基本应用
(五)实验内容:
1.输入3个数a,b,c,按小到大顺序输出。要求利用指针方法实现。
2.用返回指针类型函数实现字符串连接函数strcat(),通过1)输入字符串s1和s2进行测试,2)将字符串“string”作为参数与s1和s2的连接后的结果调用函数strcat()实现连接。
3.写一个函数,该函数从主程序接受一个字符串,将字符串中的数字和其它字符分开,形成二个字符串输出。
4.编一程序,实现计算器的功能,使得在操作系统下可以通过如下形式实现操作 calc 4 + 5 calc 3.7 * 7.9
(六)主要仪器设备:
1.计算机: CPU: Pentium III 600MHz以上 RAM:256M以上 硬盘空间:4G以上 2.操作系统: Windows2000、WindowsXP、Windows2003 任选其一 3.软件要求:Turbo C2.0
(七)所在实验室:计算机实验室
第二篇:《高级语言程序设计C》实验教学大纲
《高级语言程序设计C》实验教学大纲
课程编号:1021742 总学时:56学时
适用专业:非计算机理工科各专业 总实验学时:24 实验次数: 12 次 应开实验个数:13 已开实验个数:13 实验开出率:100%
实验一
熟悉C 程序的运行环境
一、学时:2
二、实验类型:演示、验证
三、实验目的和主要内容:
1.了解计算机系统对高级语言的基本操作方法
2.熟悉和了解Turbo C 系统软件的使用和操作
3.能进行简单的C语言程序录入、调试、编译和运行
四、需用仪器、设备:
1.硬件环境
PC-486以上微机
32M以上的内存
VGA显卡
2.软件环境
西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统
Turbo C(2.0版)
五、实验方法及步骤:
1.熟悉开机操作,使用单机或计算机上网。
2.进入 Turbo C 系统。
3.熟悉Turbo C 系统各菜单命令的使用和操作
4.模仿简单的源程序,编写自己的小程序,并能运行这些程序。
5.录入、调试、编译和运行C语言程序
实验二
数据类型、表达式及输入输出函数实验
一、学时:2
二、实验类型:验证、设计
三、实验目的和主要内容:
1. 熟悉和了解C语言的数据类型
2. 使用C语言的有关算术运算符,以及包含这些运算符的表达式
3.进行简单的C语言输入输出函数的使用,格式控制符的涵意,简单C程序的设计、调 试、编译和运行
四、需用仪器、设备:
1.硬件环境
PC-486以上微机
32M以上的内存
VGA显卡
2.软件环境
西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统
Turbo C(2.0版)
五、实验方法及步骤:
1.进入 Turbo C 系统。
2.编写简单的有输入输出的C程序,并进行该程序的运行、调试、编译。
3.编写一个输入三条边,计算三角形面积的程序。
4.编写程序,计算a+b×c÷d-d3,其中:a,b为整型变量,c,d为实型变量。
5.编写一个有关数据计算程序,验证运算符及表达式的结果。
6.可从布置的作业中,再任选一编程题,进行上机。
实验三
顺序程序结构程序设计
一、学时:2
二、实验类型:验证、设计
三、实验目的和主要内容:
1.进一步掌握C程序的编辑、编译、连接和运行的过程。2.熟悉顺序结构的程序设计方法。3.熟练使用C的各种表达式。
4.熟练掌握输入、输出函数的使用。
四、需用仪器、设备:
1.硬件环境
PC-486以上微机
32M以上的内存
VGA显卡
2.软件环境
西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统
Turbo C(2.0版)
五、实验方法及步骤:
1.输入x,y,编写程序求z=x+|y|的值。实验步骤与要求:
(1)程序中用scanf函数输入x和y的值,请分析以下两个语句 scanf(“%f%f”,x,y);scanf(“%f%f”,&x,&y);
哪一个是正确的,分别运行之,分析程序运行结果。
(2)如果scanf函数改为scanf(“%f,%f”,&x,&y);应该怎样输入数据。2.编写输入三角形的三边长a、b、c,求三角形面积area的程序。实验步骤与要求:
(1)输入前要加提示语句。
(2)输出结果前要有必要的文字说明。(3)输入一组数据3,4,5,观察运算结果。
(4)输入另外一组数据3,4,8,观察运算结果,分析这个运算结果是否有效。
实验四
分支控制语句实验
一、学时:2
二、实验类型:验证、设计
三、实验目的和主要内容:
1.熟悉和了解C语言系统分支语句的使用和操作
2.进行C语言分支控制语句的设计、调试、编译和运行
四、需用仪器、设备:
1.硬件环境
PC-486以上微机
32M以上的内存
VGA显卡
2.软件环境
西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统
Turbo C(2.0版)
五、实验方法及步骤:
1.进入 Turbo C 系统。
2.进行分支控制源程序的设计,并进行该程序的运行、调试、编译。
3.编辑一个分支控制程序,求:任意输入数(n>2)是否为素数。
4.编辑一个分支控制程序,求:任意输入3个数,求其最大数。
实验五
循环语句实验
一、学时:2
二、实验类型:验证、设计
三、实验目的和主要内容:
1.熟悉和了解C语言循环语句的使用和操作
2.进行C语言循环语句的设计、调试、编译和运行
四、需用仪器、设备:
1.硬件环境
PC-486以上微机
32M以上的内存
VGA显卡
2.软件环境
西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统
Turbo C(2.0版)
五、实验方法及步骤:
1.进入 Turbo C 系统。
2.进行循环源程序的设计,并进行该程序的运行、调试、编译。
3.编辑一个循环程序,求:1到100的和及平方和。
4.编辑一个循环程序,求:任意输入10个数,求其最大数。
5.可从布置的作业中,再任选一编程题,进行上机。
实验六
数组实验
一、学时:2
二、实验类型:验证、设计
三、实验目的和主要内容:
1.熟悉和了解C语言数组程序的设计方法
2.学会使用C语言数组进行程序设计
3.进行C语言数组语句的设计、调试、编译和运行
四、需用仪器、设备:
1.硬件环境
PC-486以上微机
32M以上的内存
VGA显卡
2.软件环境
西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统
Turbo C(2.0版)
五、实验方法及步骤:
1.进入 Turbo C 系统。
2.进行数组的定义和使用方法,即:一维和二维数组的应用。
3.进行数组语句源程序的设计,并进行该程序的运行、调试、编译。
4.编辑数组应用程序:
(1)任意输入20个数在一维数组a中,求20个数的平均值。
(2)定义2个二维数组A[2][3]、B[2][3],分别对这2个数组输入数据,求A+B和A-B的值。
(3)用字符数组存储任意输入10字符,求其最大字符。
(4)编辑一个有5个学生,考 3门功课。求出每一个学生的总分及平均分,统计平均成绩低于 60 分的学生人数。
5.可从布置的作业中,再任选一编程题,进行上机。
实验七
有关数组的程序设计
一、学时:2
二、实验类型:验证、设计
三、实验目的和主要内容:
1.掌握有关数组和字符串的程序设计方法。
四、需用仪器、设备:
1.硬件环境
PC-486以上微机
32M以上的内存
VGA显卡
2.软件环境
西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统
Turbo C(2.0版)
五、实验方法及步骤: 已知一组数据如下:6,3,42,23,35,71,98,67,56,38。编写程序,把它们按 从小到大的次序排列起来。求2行3列矩阵A 的转置矩阵。
实验八
函数实验
一、学时:2
二、实验类型:验证、设计
三、实验目的和主要内容:
1.熟悉和了解C语言函数程序的设计方法。
2.学会使用C语言函数的定义及调用,并进行程序编制。
3.进行C语言函数语句的设计、调试、编译和运行
四、需用仪器、设备:
1.硬件环境
PC-486以上微机
32M以上的内存
VGA显卡
2.软件环境
西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统
Turbo C(2.0版)
五、实验方法及步骤:
1.进入 Turbo C 系统。
2.进行函数的定义及调用。
3.进行函数语句源程序的设计,并进行该程序的运行、调试、编译。
(1)任意输入一个数n,用两个子函数实现1+2+3„n以及n!,在主函数中输出该结果。
(2)在主函数中定义二维数组A[3][4]、B[4],用子函数对数组A[3][4]每一行求和,其值放在数组B[4]中,在主函数中输出该值。
(3)用字符数组存储任意输入的10字符,在子函数中把该字符数组的小写字母转换成大写字母。
4.可从布置的作业中,再任选一编程题,进行上机。
实验九
常用指针实验
(一)一、学时:2
二、实验类型:验证、设计
三、实验目的和主要内容:
1.熟悉和了解C语言指针一般设计方法
2.学会使用C语言指针进行程序设计
3.进行简单C语言指针语句的设计、调试、编译和运行
四、需用仪器、设备:
1.硬件环境
PC-486以上微机
32M以上的内存
VGA显卡
2.软件环境
西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统
Turbo C(2.0版)
五、实验方法及步骤:
1.进入 Turbo C 系统。
2.进行C语言指针语句的定义和使用方法。
3.进行C语言指针语句源程序的设计,并进行该程序的运行、调试、编译。
4.编辑一个找出字串 str1中 str2出现的位置,用指针编程实现。
5.可从布置的作业中,再任选一编程题,进行上机。
实验十
复杂指针实验
(二)一、学时:2
二、实验类型:验证、设计
三、实验目的和主要内容:
1.进一步熟悉和了解C语言指针语句设计方法
2.进行C语言中的指针与函数、指针数组、多级指针语句的设计、调试、编译和运行
四、需用仪器、设备:
1.硬件环境
PC-486以上微机
32M以上的内存
VGA显卡
2.软件环境
西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统
Turbo C(2.0版)
五、实验方法及步骤:
1.进入 Turbo C 系统。
2.进行C语言指针与函数、指针数组、多级指针语句的定义和使用方法。
3.进行C语言该指针语句源程序的设计,并进行该程序的运行、调试、编译。
4.编辑一个在主程序里输入十个不等长的字串,调用自编的函数把它们按升序排列,用指针编程实现。
5.可从布置的作业中,再任选一题编程题,进行上机。
实验十一
结构类型实验
一、学时:2
二、实验类型:验证、设计
三、实验目的和主要内容:
1.熟悉和了解C语言结构、联合数据的定义及设计方法
2.学会使用C语言结构、联合数据类型进行程序设计
3.进行C语言结构、联合语句的设计、调试、编译和运行
四、需用仪器、设备:
1.硬件环境
PC-486以上微机
32M以上的内存
VGA显卡
2.软件环境
西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统
Turbo C(2.0版)
五、实验方法及步骤:
1.进入 Turbo C 系统。
2.进行C语言结构、联合数据类型的定义和使用。
3.进行C语言结构、联合数据类型源程序的设计,并进行该程序的运行、调试、编译。
4.编辑一个能处理学生综合信息的程序(包括:学号、姓名、班级、语文成绩、数学成绩、英语成绩等)。
实验十二
有关结构的程序设计
一、学时:2(课后完成或选作)
二、实验类型:验证、设计
三、实验目的和主要内容:
1.掌握结构体类型和结构体变量的定义。2.掌握结构类型变量的定义和使用;
3.掌握链表的概念,初步学会对链表进行操作;
四、需用仪器、设备:
1.硬件环境
PC-486以上微机
32M以上的内存
VGA显卡
2.软件环境
西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统
Turbo C(2.0版)
五、实验方法及步骤:
1.有五个学生,每个学生的数据包括学号,姓名,三门课的成绩,从键盘输入五个学生的数据,要求打印出每个学生的平均成绩,以及最高分的学生的数据(包括学号,姓名,三门课的成绩,平均分数)。实验步骤与要求:
用一个函数输入五个学生的数据;用一个函数求总平均分;用函数找出最高分学生数据,总平均分和最高分的学生的数据都在主函数中输出。
2.三个人围成一圈,从第一个人开始顺序报号1,2,3。凡报到“3”者退出圈子,找出最后流在圈子中的人原来的序号。
3.建立一个链表,每个结点包括:学号,姓名,性别,年龄。输入一个年龄,如果链表中的结点所包含的年龄等于此年龄,则将此结点删去。
实验十三
文件实验
一、学时:2
二、实验类型:验证、设计
三、实验目的和主要内容:
1.熟悉和了解C语言文件系统的组成及设计方法。
2.学会使用C语言文件系统进行程序设计
3.进行C语言文件语句的设计、调试、编译和运行
四、需用仪器、设备:
1.硬件环境
PC-486以上微机
32M以上的内存
VGA显卡
2.软件环境
西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统
Turbo C(2.0版)
五、实验方法及步骤:
1.进入 Turbo C 系统。
2.进行C语言文件系统类型的定义和使用。
3.进行C语言文件系统类型源程序的设计,并进行该程序的运行、调试、编译。
4.编辑程序。
(1)用数组存储10个数据,并存储在“date.dat”文件中
(2)对存储在“date.dat”文件中的数据读入到一个数组中,求出总和及最大值,并把它存储在“dsum.dat”文件中
第三篇:实验教学大纲样本--C语言程序设计
《C语言程序设计》实验教学大纲
课程名称:C语言程序设计
课程属性:必修(限选)
实验属性:独立设课
适用专业:光伏发电技术及应用、光伏材料加工与应用技术、新能源应用专业 学时:(实验学时 34)
应开实验学期:第二学期
应开实验项目数:
实验类型:综合性、验证性
一、本门课程实验的目的与要求
通过实验,加深学生对C语言的理解,掌握数据类型、模块化程序设计、指针、数组、指针及结构体、共用体和枚举类型的定义及使用,会写选择型程序、循环型程序,要求学完本门课程后,可编写C语言小程序。
上机实验是学习C语言程序设计的重要环节。通过实验,学习C语言的特点和方法;理解计算机程序的执行过程;掌握用计算机解决问题的方法和基本的程序设计技术;学会程序的调试方法。
二、实践形式和实践环境要求
1、实践形式:课内实验。
2、实验环境要求:每人一台电脑,安装有(Turbo C 2.0,C++环境)的实验室环境条件。
三、实践总学时和实践资料
1、总学时:34学时。
2、资料:按自编实验指导书相关内容进行实践。
四、考核与成绩评定
本课程实验考核由各分阶段实验报告、期末实训两大部分组成。各分阶段实验报告占总成绩的60%,期末考核占总成绩的40%。
五、实践任务与学时分配
实验一C程序上机操作方法及运行环境
(一)实验目的与要求:
1、了解所用的计算机系统的基本操作方法,学会独立使用该系统。
2、了解在该系统上如何编辑、编译、连接和运行一个C程序。
3、通过运行简单的C程序,初步了解C程序的特点。
(二)参考学时:2
(三)实验环境::计算机机房(Turbo C 2.0,C++环境)。
实验二数据类型、运算符和表达式
(一)实验目的与要求:
1、掌握C语言数据类型,熟悉如何定义一个整型、字符型和实型的变量,以及对它们赋值的方法。
2、掌握不同的数据类型之间赋值的规律。
3、学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加和自减运算符的使用。
4、进一步熟悉C程序的编辑、编译、连接和运行的过程。
(二)参考学时:2
(三)实验环境::计算机机房(Turbo C 2.0,C++环境)。
实验三顺序结构程序设计
(一)实验目的与要求:
1、掌握字符型数据与整型数据如何通用及赋值语句的使用方法。
2、掌握各种类型数据的输入输出函数的应用方法。
3、掌握顺序结构程序的编写过程。
(二)参考学时:2
(三)实验环境::计算机机房(Turbo C 2.0环境)。
实验四选择结构程序设计
(一)实验目的与要求:
1、掌握关系运算符和逻辑运算符的使用方法及其表达式的应用。
2、掌握分支语句的使用。
3、结合程序掌握一些简单的算法。
4、学习调试程序。
(二)参考学时:2
(三)实验环境::计算机机房(Turbo C 2.0,C++环境)。
实验五循环结构程序设计
(一)(一)实验目的与要求:
1、掌握循环次数不确定的循环程序设计方法。
2、掌握如何用break语句退出循环。
(二)参考学时:2
(三)实验环境::计算机机房(Turbo C 2.0,C++环境)。
实验六循环结构程序设计
(二)(一)实验目的与要求:
1、掌握循环次数确定的循环结构程序及双重循环结构程序的设计思路。
2、掌握循环控制变量的取值范围的确定。
(二)参考学时:2
(三)实验环境::计算机机房(Turbo C 2.0,C++环境)。
实验七数组的应用
(一)(一)实验目的与要求:
1、掌握一维数组的定义及应用,主要注意其下标从0开始及下标越界问题。
2、掌握数组在循环的控制下其下标的灵活变化。
(二)参考学时:2
(三)实验环境::计算机机房(Turbo C 2.0,C++环境)。
实验八数组的应用
(二)(一)实验目的与要求:
1、掌握数组的定义、数组元素的引用及数组的初始化。
2、掌握字符数组的定义、数组元素的引用及对字符数组的初始化。
3、在综合应用中的具体体现。
(二)参考学时:2
(三)实验环境::计算机机房(Turbo C 2.0,C++环境))。
实验九函数
(一)(一)实验目的与要求:
1、掌握函数的定义、说明和调用方法。
2、理解return语句的作用和使用方法。
3、掌握函数调用过程中“传值”和“传址”方法的特性、使用及区别。
(二)参考学时:2
(三)实验环境::计算机机房(Turbo C 2.0,C++环境)。
实验十函数
(二)(一)实验目的与要求:
1、掌握函数的定义、说明和调用方法。
2、理解return语句的作用和使用方法。
3、掌握函数的嵌套调用和递归调用的定义及编制方法。
(二)参考学时:2
(三)实验环境::计算机机房(Turbo C 2.0,C++环境)。
实验十一编译预处理
(一)实验目的与要求:
1、掌握简单的宏定义和带参数宏的定义及其应用,并理解宏展开实质。
2、掌握文件包含和条件编译的应用。
3、清楚带参的宏和函数的差异。
(二)参考学时:2
(三)实验环境::计算机机房(Turbo C 2.0,C++环境)。
实验十二指针
(一)实验目的与要求:
1、掌握指针的概念,指针变量的定义和使用。
2、会使用指向数组的指针。
3、会使用指向字符串的指针。
4、掌握指针型函数和指向函数的指针。
(二)参考学时:2
(三)实验环境::计算机机房(Turbo C 2.0,C++环境)。
实验十三结构体、共用体
(一)实验目的与要求:
1、掌握结构体类型的说明和结构体变量的定义。
2、掌握结构体变量成员的引用和对结构体变量的初始化。
3、掌握结构体数组的定义及使用。
(二)参考学时:2
(三)实验环境::计算机机房(Turbo C 2.0环境)。
实验十四文件
(一)实验目的与要求:
1、掌握文件以及缓冲文件系统、文件指针的概念。
2、学会使用文件打开、关闭、读、写等文件操作函数。
3、学会用缓冲文件系统对文件进行简单的操作。
(二)参考学时:2
(三)实验环境::计算机机房(Turbo C 2.0,C++环境)。
第四篇:高级语言程序设计(C语言)实验教学大纲
信息技术系《高级语言程序设计》实验教学大纲
一、教材名称:<
二、课程总学时:108学时 [理论: 72 学时;实验与上机:36学时]
三、适用专业和开课学期:软件技术专业,第2学期。
四、实验的目的与任务:
《C程序设计》是一门实践性很强的课程。通过实验使学生加深对课堂讲授的概念、语法、算法、编程技术的理解;熟悉C程序设计的开发环境;掌握程序设计和调试的基本技能。并通过实践激发学生进一步学习的积极性,培养学生的学习兴趣和创新思维。通过8个实验,使学生经过一定数量的上机训练,了解和掌握C程序设计的环境、程序的数据表示、程序的执行流程控制、程序的整体结构等C程序设计的基本概念和应用技术。
五、主要仪器设备及台(套)数
安装Windowsxp,TC2.0等软件的计算机,每生一台。
六、主要实验教材(指导书)及参考用书:
谭浩强主编,《C程序设计题解与上机指导》,清华大学出版社。
七、成绩考核方式及评分标准
实验占课程总课时1/3,每项实验按该实验说明要求规定的评分标准积分,学期末合计的实验成绩占课程总成绩的18%。
八、实验开出率:100%
九、实验项目与要求
实验一:C程序的运行环境和运行一个C程序的方法(2学时)
实验性质:验证性实验
一、实验目的
1.了解所用的计算机系统的基本操作方法,学会独立使用该系统。2.了解在该系统上如何编辑、编译、连接和运行一个C程序。3.通过运行简单的C程序,初步了解C源程序的特点。
二、实验内容
1.调用编辑程序,输入教材第一章例1.1程序,并进行编译和运行。应了解所用的系统是用什么命令进行编译和连接运行的。编译和连接后所得到的目标程序的后缀是什么形式的?
2.输入并运行教材第一章中例1.2。
3.输入并运行教材第一章中例1.3,了解如何在运行时向程序变量输入数据。
实验二 数据类型、运算符和表达式(2学时)
实验性质:验证性实验
一、实验目的
1.掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用格式转换符。
2.学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运算符的使用。
3.进一步熟悉C程序的编辑、编译、连接和运行的过程。
二、实验内容
1.输入并运行教材第三章例3.6.即: #include
printf(“%c %cn”,c1,c2); printf(“%d %dn”,c1,c2); } 在此基础上 ①将第二行改为: int c1,c2;再使之运行,分析结果。②再将第三行、第四行改为: c1=300;c2=400;再使之运行,分析其运行结果。
2.输入并运行教材第三章习题3.6,在上机前先用人工分析程序写出应得结果,上机后将二者对照。
3.输入并运行习题3.10。即: #include
printf(“%d,%d,%d,%d”,i,j, i++,j++);⑤程序改为: main(){int i,j,m=0,n=0;;i=8;j=10;m+=i++;n-=--j;printf(“i=%d,j=%d,m=%d,n=%d”,i,j,m,n);}
实验三 最简单的C程序设计(2学时)
实验性质:验证性实验
一、实验目的
1.掌握C语言中使用最多的一种语句—赋值语句的使用。2.掌握数据的输入输出的方法,能正确使用各种格式转换符。
二、实验内容
1.输入并运行以下程序:
#include
void main(){int a,b; float d,e; char c1,c2; double f,g; long m,n;
unsigned int p,q; a=61;b=62; c1=’a’;c2=’b’; d=3.56;e=-6.87;
f=3157.890121;g=0.123456789; m=50000;n=-60000; p=32768;q=40000;
printf(“a=%d,b=%dn c1=%c,c2=%cnd=%6.2f,e=%6.2fn”,a,b,c1,c2,d,e); printf(“f=%15.6f,g=%15.12fnm=%ld,n=%ldnp=%u,q=%un”,f,g,m,m,p,q); } 在此基础上,做以下改动: ① 将程序第8-13行改为: a=61;b=62; c1=a;c2=b;
f=3157.890121;g=0.123456789; d=f;e=g;
p=a=m=50000;q=b=n=-60000; 运行程序,分析结果。
② 在①的基础上将printf语句改为:
printf(“a=%d,b=%dn c1=%c,c2=%cnd=%15.6f,e=%15.12fn”,a,b,c1,c2,d,e);
printf(“f=%f,g=%fn m=%ld,n=%ldn p=%d,q=%dn”,f,g,m,n,p,q); 运行程序。
2.编写程序,用getchar函数读入两个字符c1、c2,然后分别用putchar函数和printf函数输出这两个字符。
上机运行程序,比较用printf和putchar函数输出字符的特点。
实验四 选择结构程序设计(2学时)
实验性质:设计性实验
一、实验目的
1.了解C语言表示逻辑量的方法(以0代表“假”,以1代表“真”); 2.学会正确使用逻辑运算符和逻辑表达式; 3.熟练掌握if语句和switch语句。
二、实验内容
先编程序,解决以下问题,然后上机调试运行程序。1.有一个函数 xy2x13x11x11x10 x10用scanf函数输入x的值(分别为x<1、1~
10、≥10三种情况),求y值。2.给出一个百分制成绩,要求输出成绩等级‘A’,‘B’,‘C’,‘D’,‘E’。90分以上为‘A’,80~89分为‘B’,70~79分为‘C’,60~69分为‘D’,60分以下为‘E’。
实验五 循环控制(4学时)
实验性质:设计性实验
一、实验目的
1.熟悉用while语句,do-while语句和for语句实现循环的方法。2.掌握在程序设计中用循环的方法实现各种算法(如穷举、迭代、递推等)。
二、实验内容
编程序并上机调试运行。
1.输入两个正整数,求其中最大公约数和最小公倍数。2.用牛顿迭代法求方程2x3-4x2+3x-6=0在1.5附近的根。
实验六 数组(4学时)
实验性质:设计性实验
一、实验目的
1.掌握一维数组和二维数组的定义、赋值和输入输出的方法; 2.掌握字符数组和字符串函数的使用。3.掌握与数组有关的算法(特别是排序算法)。
二、实验内容
编程序并上机调试运行。
1.用选择法对10个整数排序。10个整数用scanf函数输入。2.将两个字符串连接起来,不要用strcat函数。实验七 函数(4学时)
实验性质:设计性实验
一、实验目的
1.掌握定义函数的方法;
2.掌握函数实参与形参的对应关系,以及“值传递”的方式; 3.掌握函数的嵌套调用和递归调用的方法;
4.掌握全局变量和局部变量,动态变量和静态变量的概念和使用方法。
二、实验内容
编程序并上机调试运行。
1.写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的信息。2.求两个整数的最大公约数和最小公倍数,用一个函数求最大公约数。用另一函数根据求出的最大公约数求最小公倍数。
(1)用全局变量的方法。将两个整数的最大公约数、最小公倍数都设为全局变量。
(2)不用全局变量,两个整数在主函数中输入,并传送给函数1,求出的最大公约数返回主函数,然后再与两个整数一起作为实参传递给函数2,以求出最小公倍数,返回到主函数输出最大公约数和最小公倍数。
实验八 预处理命令(2学时)
实验性质:设计性实验
一、实验目的
1.掌握宏定义的方法; 2.掌握文件包含处理方法; 3.掌握条件编译的方法。
二、实验内容
编程序并上机调试运行。
1.定义一个带参数的宏,使两个参数的值互换。在主函数中输入两个数作为使用宏的实参,输出已交换后的两个值。
说明:在程序主函数使用宏时只能用两个实参,如SWAP(a,b),不能用三个参数。2.用条件编译方法实现以下功能:
输入一行电报文字,可以任选两种输出,一为原文输出;一为将字母变成其下字母(如‘a’变成‘b’,„,‘z’变成‘a’。其它字符不变)。用#define命令来控制是否要译成密码。例如: #define CHANGE 1 则输出密码。若 #define CHANGE 0 则不译成密码,按原码输出。用条件编译方法来处理。
实验九 指针(4学时)
实验性质:设计性实验
一、实验目的
1.掌握指针的概念,会定义和使用指针变量; 2.学会使用数组的指针和指向数组的指针变量; 3.学会使用字符串的指针和指向字符串的指针变量; 4.学会使用指向函数的指针变量;
二、实验内容
编程序并上机调试运行程序(都要求用指针处理)。1.输入三个整数,按由小到大的顺序输出。
2.将一个3*3的矩阵转置,用一函数实现之。在主函数中用scanf函数输入以下矩阵元素:
1 7133915511 19将数组名作为函数实参。函数调用后在主函数中输出已转置的矩阵。3.用一个函数实现两个字符串的比较,即自己写一个strcmp函数: strcmp(s1,s2)如果s1=s2,则函数返回值为0;如果s1≠s2,返回它们二者第一个不同字符的ASCII码差值(如“BOY”与“BAD”,第二个字母不同,“O”与“A”之差为79-65=14);如果s1>s2,则输出正值;如s1 两个字符串s1,s2由main函数输入,strcmp函数的返回值也在main函数输出。 实验十 结构体和共用体(4学时) 实验性质:设计性实验 一、实验目的 1.掌握结构体类型变量的定义和使用; 2.掌握结构体类型数组的概念和应用; 3.掌握共用体的概念与使用。 二、实验内容 编程序,然后上机调试运行。 1.有5个学生,每个学生的数据包括学号、姓名、三门课的成绩,从键盘输入5个学生数据,要求打印出三门课总平均成绩,以及最高分的学生的数据(包括学号、姓名、三门课的成绩、平均分数)。 要求用一个input函数输入5个学生数据;用一个average函数求总平均分;用max函数找出最高分学生数据;总平均分和最高分的学生的数据都在主函数中输出。 2.输入和运行以下程序: #include union data {int i[2]; float a; long b; char c[4]; }; void main(){union data u; scanf(“%d,%d”,&u.i[0],&u.i[1]); printf(“i[0]=%d,i[1]=%dna=%fnb=%ldnc[0]=%c,c[1]=%c,c[2]=%c,c[3]=%cn”,u.i[0],u.i[1],u.a,u.b,u.c[0],u.c[1],u.c[2],u.c[3]);} 输入两个整数10000、20000给u.i[0]和u.i[1]。分析运行结果。 然后将scanf语句改为: scanf(“%ld”,&u.b); 输入60000给b。分析运行结果。 实验十一 位运算(1学时) 实验性质:设计性实验 一、实验目的 1.掌握位运算的概念和方法,学会使用位运算符; 2.学会通过位运算实现对某些位的操作。 二、实验内容 编写程序,上机调试并运行。 1.设计一个函数,使给出一个数的原码,能得到该数的补码,用八进制形式输入和输出。 实验十二 文件(1学时) 实验性质:设计性实验 一、实验目的 1.掌握文件以及缓冲文件系统、文件指针的概念; 2.学会使用文件打开、关闭、读、写等文件操作函数。3.学会用缓冲文件系统对文件进行简单的操作。 二、实验内容 1.从键盘输入一个字符,将其中的小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存。输入的字符以“!”结束。实验十三 学生成绩管理(4学时) 实验性质:综合性设计性实验 一、实验目的 1.综合运用C程序设计知识,解决实际问题。 二、实验内容 1.有5个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号、姓名、三门课成绩),计算出平均成绩,将原有数据和计算出的平均分数存放在磁盘文件“stud”中。 2.将上题“stud”文件中的学生数据,按平均分进行排序处理,将已排序的学生数据存入一个新文件“stu-sort”中。 3.将上题已排序的学生成绩文件进行插入处理。插入一个学生的三门课成绩。程序先计算新插入学生的平均成绩,然后将它按成绩高低顺序插入,插入后建立一个新文件。 学生的原有数据为: 91101 Wang 89,98,67.5 91103 Li 60,80,90 91106 Fun 75.5,91.5,99 91110 Ling 100,50,62.5 91113 Yuan 58,68,71 要插入的学生数据为: 91108 Xin 90,95,60 制 订:程世辉 教研室:软件教研室 执笔人:程世辉 审定人: 二00七年八月 《C语言程序设计》 (一)教学大纲 课程名称:C语言程序设计 英文名称:The C Programming Language 课程编号: 000331,000332 课程性质:基础必修 任课教师:张萍、张莉、黄达明、陶烨、潘亦 教学课时:3-4学时/周 实验课时:4学时/周 课程学分:4学分/6学分 授课周数:18周 授课课时:68 实验课时:68 教学对象:匡亚明学院、化学化工学院、地理与海洋科学学院、环境学院、大气科学学院、天文与空间科学学院、地球科学与工程学院、工程管理学院、生命科学院 先修课程:大学计算机信息技术 一、课程目标 通过对本门课程的学习,学生能够掌握基本的算法和面向过程的程序设计一般方法;能熟练地用C语言编写调试各类数值计算程序和数据处理程序;帮助培养学生的计算思维能力,完善其对各自专业研究领域问题的抽象能力并进而应用计算装置来自动化解决问题的能力。 二、课程内容和学时分配 第1章 C程序设计概述(2学时) 1.1 程序设计语言、程序与程序设计 1.2 C语言概述 掌握程序设计语言、程序和程序设计的基本内涵,了解C语言的发展过程和特性,掌握C语言程序的结构与执行以及上机调试运行C语言程序的过程。第2章 数据的表示与存储(4学时) 2.1 C语言的数据类型 2.2 整型数据 2.3 浮点型数据 2.4 字符型数据 2.5 字符串数据 2.6 指针型数据 2.7 枚举型数据 2.8 符号常量与const限定 2.9 使用typedef命名数据类型 理解C语言中数据类型的含义和作用,掌握整型、浮点型和字符型常量和变量的使用及声明和初始化的方式,掌握字符串常量的表现形式,掌握地址的概念和指针变量声明及初始化的方式,掌握枚举数据类型的定义方式和枚举型变量的声明,掌握符号常量的使用方式,掌握用typedef命名数据类型的方式。第3章 基本运算与输入输出(6学时) 3.1 运算符与表达式概述 3.2 数据对象的存取 3.3 基本数值运算 3.4 其他常用运算 3.5 输入与输出 掌握运算符和表达式的含义和作用,间接引用运算与间接引用数据对象的方法,赋值运算和赋值表达式的使用方式,算术运算符和算术表达式的使用方式,常见的数值计算与数学库函数的使用以及数值计算中溢出、有效数字与计算误差,了解强制类型转换运算及其表达式,sizeof、逗号运算符及其表达式的使用方式,掌握字符数据的输入输出函数和格式化输入输出函数的使用方式。第4章 结构化程序设计(8学时) 4.1结构化算法及其表示 4.2 结构化程序开发 掌握算法的含义,基本算法结构及其表示,结构化程序设计方法,表示顺序、选择和循环算法结构的语句,break语句和continue语句,无条件转移语句的应用和使用方式。第5章 常用数值计算算法及其程序设计(6学时) 5.1 素数判断 5.2 最大公约数求解 5.3 穷举法求满足条件的一组解 5.4 级数近似计算 5.5 一元非线性方程求根 5.6 定积分近似计算 掌握判断判断算法、求最大公约数算法,能够熟练运用穷举法求满足条件的一组解,掌握级数近似计算的递推法,掌握用牛顿迭代法和二分法及弦截法求一元非线性方程的根,用梯形法和矩形法进行定积分近似计算。第6章 模块化程序设计与函数(12学时) 6.1 函数概述 6.2 函数定义 6.3 函数返回 6.4 函数调用 6.5 标识符的作用域 6.6 变量的存储属性 *6.7 参数个数可变函数的定义及调用【不作要求】 6.8 编译预处理及预处理命令 掌握函数定义的方法,掌握函数之间数据的传递途径,掌握函数的调用方法,掌握库函数的使用,理解函数的作用及掌握模块化程序设计方法,掌握程序调试的基本方法,掌握函数的间接调用,掌握返回指针的函数的应用,掌握函数调用时传递地址的方法,理解变量的作用域及生命期属性,理解递归函数的执行过程,掌握包含递归函数的程序的编写与调试方法。第7章 数组(12学时)7.1 数组概念 7.2 一维数组 7.3 二维数组 7.4 字符与字符串处理 *7.5指针数组及应用 *7.6动态数组【不作要求】 掌握一维数组的声明与初始化形式,掌握一维数组元素的直接与间接引用方法,掌握一维数组作函数实参的应用,掌握与一维数组相关的常用算法,掌握二维数组的声明与初始化形式,掌握二维数组元素的直接与间接引用方法,掌握二维数组作函数实参的应用,掌握与二维数组相关的常用算法,掌握使用一维字符数组表示字符串的方法,掌握字符与字符串处理函数的应用,掌握使用二维字符型数组表示字符串集合的方法,掌握字符串集合的处理方法,掌握指针数组的声明、初始化及数组元素的引用,掌握指向指针型数据的指针变量的声明、引用,掌握带参数的主函数的编写及程序的运行方法。第8章 结构、联合与指针(8学时)8.1结构数据类型 *8.2联合类型 8.3指针小结 掌握结构类型定义的方法,掌握结构类型变量与数组的声明和使用,掌握函数间结构类型数据的传递方式,掌握动态内存分配、释放函数的使用,掌握单向链表的基本操作。 第9章 文件操作(4学时)9.1 文件概念 9.2 C文件系统 9.3 利用高级I/O库函数存取文件 了解C语言的文件系统,掌握使用高级I/O库函数存取文件的方法。第10章 位运算(2学时)10.1 位运算符 10.2 位段【不作要求】 掌握位逻辑运算符和移位运算符的基本概念和方法 课程设计 将所学知识综合应用到C语言程序设计中,开发具有一定规模和实际应用价值的程序产品,最好能与专业应用相结合(1至3人为一个项目开发小组)。 三、课程考核 平时(实验)占10% 课程设计占20% 期中笔试占20%,期末笔试和上机占50% 四、教材 姜恒远,陶烨,张莉,张萍,黄达明.C语言程序设计教程.高等教育出版社,2010(8).姜恒远,张莉,陶烨,张萍,黄达明,金莹.C语言程序设计教程学习指导.高等教育出版社,2010(8).五、参考书目 1.Kernighan B W,Ritchie D M.The C Programming Language.PRENTICE-HALL.INC,1983.2.Digital Research.C Language programmer's Guide for the IBM Personal Computer Disk Operating System.3.C Primer Plus(第四版)中文版,技桥工作室译,人民邮电出版社,2002(7).4.谭浩强.C程序设计,清华大学出版社,1991(7).5.Deitel H M,Deitel P J.C程序设计教程,薛万鹏等译,机械工业出版社,2000(7).6.Kernighan B W,Ritchie D M.C程序设计语言(第2版),徐宝文、李志译,机械工业出版社,2003(6).7.Kelley A,Pohl I.C语言教程(第4版),徐波译,机械工业出版社,2007(1).第五篇:C语言程序设计教学大纲(2014)