
《程序设计基础实验》教学大纲一、课程基本信息课程编码:113107B课程名称:程序设计基础实验英文名称:Experimentation of ProgrammingFoundations课程类别:专业基础课总学时:15总学分:0.5适用专业:信息管理与信息系统二、实验课程的性质、目标与任务1、《程序设计基础实验》为独立设课,是信息管理与信息系统专业本科生的专业基础课,是学习程序设计基础的重要环节。2、《程序设计基础实验》课程目的是通过实验加深学生对课堂教学内容的理解和巩固,掌握C语言的编程技巧,掌握结构化程序设计的方法。通过实验培养学生的动手能力、利用C语言编程解决实际问题及调试程序的能力及模块化程序设计的能力。通过课程训练学生能够根据实验要求独立分析问题、解决问题,对于设计型实验能够培养学生的团队意识和协同合作的精神。三、实验课程教学基本要求《程序设计基础实验》为独立设课,是学习程序设计基础的重要环节。采用学生独立进行实验的方式和小组为单位划分任务的方式,要求独立编写程序,上机调试。实验教学中,强化上机教学手段,实验习题与教学大纲密切配合。实验课共包含五项实验,每个实验均应按要求填写实验报告,前四个实验项目以个人为单位,第五个实验以小组为单位上交一份实验报告,格式必须规范报告中要包含有实验题目、实验目的、实验内容及步骤、实验数据及实验结果,运行情况分析、实验过程中出现的问题及解决方法或是实验的总结体会。四、实验教学内容及要求实验一熟悉C语言运行环境及简单程序设计【实验类型】验证型【目的与要求】
《程序设计基础实验》教学大纲 一、课程基本信息 课程编码:113107B 课程名称:程序设计基础实验 英文名称:Experimentation of Programming Foundations 课程类别:专业基础课 总 学 时:15 总 学 分:0.5 适用专业:信息管理与信息系统 二、实验课程的性质、目标与任务 1、《程序设计基础实验》为独立设课 ,是信息管理与信息系统专业本科生的专业基础课,是 学习程序设计基础的重要环节。 2、《程序设计基础实验》课程目的是通过实验加深学生对课堂教学内容的理解和巩固,掌握 C 语言的编程技巧,掌握结构化程序设计的方法。通过实验培养学生的动手能力、利用 C 语言编程 解决实际问题及调试程序的能力及模块化程序设计的能力。通过课程训练学生能够根据实验要求独 立分析问题、解决问题,对于设计型实验能够培养学生的团队意识和协同合作的精神。 三、实验课程教学基本要求 《程序设计基础实验》为独立设课 ,是学习程序设计基础的重要环节。采用学生独立进行实 验的方式和小组为单位划分任务的方式,要求独立编写程序,上机调试。实验教学中,强化上机教 学手段,实验习题与教学大纲密切配合。实验课共包含五项实验,每个实验均应按要求填写实验报 告,前四个实验项目以个人为单位,第五个实验以小组为单位上交一份实验报告,格式必须规范, 报告中要包含有实验题目、实验目的、实验内容及步骤、实验数据及实验结果,运行情况分析、实 验过程中出现的问题及解决方法或是实验的总结体会。 四、实验教学内容及要求 实验一 熟悉 C 语言运行环境及简单程序设计 【实验类型】 验证型 【目的与要求】

熟悉VisualC++编译系统的开发环境:掌握C程序的编辑、编译、连接和运行的基本过程了解数据类型在程序设计中的意义:熟悉简单程序(顺序结构程序)的程序设计方法【内容提要】先分析下列程序的输出结果,然后再上机检验。1、#includemain()(int a,b, c,d,timsum;a=8,b=7,c=5,d=6;timsum=a*b+c*d;printf(“%d*%d+%d*%d=%d\/t%d//n”,a,b,c,d,timsum,10*5):)2、#includemainO1int a=2, b=5,c=6, d=10;int z;float x,y;x=12;y=365.2114;z=(float)a+ba+=b;b-=c;c*=d;d/=a;a%=c;printf(“%flln",z);printf(“%d %d %d %d %d) In",a, b, c,d, a);)3、#includemain()1int a=100,b=50,c,d;int x=5, y=12,e,f,g;c=((a>b)?a:b);d=((a<b)?a:b*b);printf(“%d %dlln",c,d);e=x&y;f=xly;g=x y;printf(“%d %d %d//n" e,f,g):)
熟悉 Visual C++编译系统的开发环境;掌握 C 程序的编辑、编译、连接和运行的基本过程; 了解数据类型在程序设计中的意义;熟悉简单程序(顺序结构程序)的程序设计方法。 【内容提要】 先分析下列程序的输出结果,然后再上机检验。 1、 #include main() { int a,b,c,d,timsum; a=8,b=7,c=5,d=6; timsum=a*b+c*d; printf(“%d*%d+%d*%d=%d\\t%d\\n”,a,b,c,d,timsum,10*5);} 2、 #include main() { int a=2,b=5,c=6,d=10; int z; float x,y; x=12;y=365.2114; z=(float)a+b a+=b;b-=c;c*=d;d/=a;a%=c; printf(“%f\\n”,z); printf(“%d %d %d %d %d\\n”,a,b,c,d,a);} 3、 #include main() { int a=100,b=50,c,d; int x=5,y=12,e,f,g; c=((a>b)?a:b); d=((a<b)?a:b*b); printf(“%d %d\\n”,c,d); e=x&y; f=x|y; g=x^y; printf(“%d %d %d\\n”e,f,g);}

4、#includemain()(char c;c=getchar O;putchar(c);)5、#includemain ()float a,b, c, s,area;scanf(“%f,%f,%f”,&a,&b,&c):s=1.0/2*(a+b+c);area=sqrt(s*(s-a)*(s-b)*s(s-c));printf(“a=%7.0f,b=%7.2f,c=%7.2f,s=%7.2flln”,a,b,c,s);printf(“area=%7.2flln”,area):)6、#includemain(1char cl, c2:cl=getchar:printf(“%c,%dln",cl,cl);c2=c1+32;printf(“%c,%dl/n",c2,c2);)7、编程求任意三个数的平均值。【所需主要仪器设备】硬件要求:微型计算机一台(Pentium或以上)。软件要求:Windows操作系统,VisualC++。实验二选择结构、循环结构程序设计【实验类型】验证型【目的与要求】掌握在程序中利用if和switch语句对特定条件进行判断,从而控制程序流程;掌握while
4、#include main() { char c; c=getchar(); putchar(c);} 5、#include main() { float a,b,c,s,area; scanf(“%f, %f, %f”,&a, &b, &c); s=1.0/2*(a+b+c); area=sqrt(s*(s-a)*(s-b)*s(s-c)); printf(“a=%7.0f, b=%7.2f, c=%7.2f, s=%7.2f\\n”,a,b,c,s); printf(“area=%7.2f\\n”,area);} 6、#include main() { char c1,c2; c1=getchar(); printf(“%c, %d\\n”,c1,c1); c2=c1+32; printf(“%c, %d\\n”,c2,c2);} 7、编程求任意三个数的平均值。 【所需主要仪器设备】 硬件要求:微型计算机一台(Pentium 或以上)。 软件要求:Windows 操作系统,Visual C++。 实验二 选择结构、循环结构程序设计 【实验类型】 验证型 【目的与要求】 掌握在程序中利用 if 和 switch 语句对特定条件进行判断,从而控制程序流程;掌握 while

do-while语句和for语句的语句格式及用法:掌握break、continue语句的作用和使用方法:能够编写一些有实际应用意义的选择、循环结构的程序。【内容提要】上机实验内容:1、求一分段函数的输出值,在程序运行当中动态输入x的值,根据x的之所在范围决定输出2、输入一个百分制成绩,要求输出成绩等级A、B、C、D、E,联系使用switch语句。3、输入两个整数m和n,求它们的最大公约数和最小公倍数。4、用牛顿迭代法求方程的根。5、解决猴子吃桃问题。要求:1、根据实验内容的要求,选择与循环结构各选一题,独立编写完整的程序,上机通过2、根据实验内容的要求,分析程序,并上机验证其结果。【所需主要仪器设备】硬件要求:微型计算机一台(Pentium或以上)。软件要求:Windows操作系统,VisualC++。实验三学生成绩统计小系统【实验类型】综合型【自的与要求】掌握一维数组、多维数组的定义格式及下标范围。学习利用数组解决简单应用问题。掌握函数定义和调用的一般方法,以及函数递归调用的方法。理解变量的作用域和生存期。理解和掌握函数形式参数和实际参数作用。学会建立和调试多文件应用程序,学会使用头文件的使用。【内容提要】上机实验内容:1、用数组结构存放10个学生各门课的成绩(假设有3门课的成绩)。2、调用子函数求每个学生的总分。3、调用子函数统计每门课的最高分、最低分。4、调用子函数求每门课的平均成绩和每个学生的平均成绩。要求:根据实验内容的要求,独立编写完整的程序,上机通过
do-while 语句和 for 语句的语句格式及用法;掌握 break、continue 语句的作用和使用方法;能够编写 一些有实际应用意义的选择、循环结构的程序。 【内容提要】 上机实验内容: 1、求一分段函数的输出值,在程序运行当中动态输入 x 的值,根据 x 的之所在范围决定输出 2、输入一个百分制成绩,要求输出成绩等级 A、B、C、D、E,联系使用 switch 语句。 3、输入两个整数 m 和 n,求它们的最大公约数和最小公倍数。 4、用牛顿迭代法求方程的根。 5、解决猴子吃桃问题。 要求: 1、根据实验内容的要求,选择与循环结构各选一题,独立编写完整的程序,上机通过。 2、根据实验内容的要求,分析程序,并上机验证其结果。 【所需主要仪器设备】 硬件要求:微型计算机一台(Pentium 或以上)。 软件要求:Windows 操作系统,Visual C++。 实验三 学生成绩统计小系统 【实验类型】 综合型 【目的与要求】 掌握一维数组、多维数组的定义格式及下标范围。学习利用数组解决简单应用问题。掌握函 数定义和调用的一般方法,以及函数递归调用的方法。理解变量的作用域和生存期。理解和掌握函 数形式参数和实际参数作用。学会建立和调试多文件应用程序,学会使用头文件的使用。 【内容提要】 上机实验内容: 1、用数组结构存放 10 个学生各门课的成绩(假设有 3 门课的成绩)。 2、调用子函数求每个学生的总分。 3、调用子函数统计每门课的最高分、最低分。 4、调用子函数求每门课的平均成绩和每个学生的平均成绩。 要求:根据实验内容的要求,独立编写完整的程序,上机通过

【所需主要仪器设备】硬件要求:微型计算机一台(Pentium或以上)。软件要求:Windows操作系统,VisualC++。实验四指针应用程序设计【实验类型】综合型【目的与要求】掌握指针定义的方法。掌握利用指针存取数据的方法。通过上机理解数组指针和指针数组的含义。通过上机理解函数指针和指针函数的含义。掌握指针参数的使用方法。【内容提要】上机实验内容:编程序并上机调试运行程序,要求都用指针实现:1、输入三个整数,按由小到大的顺序输出,然后将程序改为:输入三个字符串,按由小到大顺序输出。2、将一个3×3的矩阵转置,用一函数实现之。3、用一个函数实现两个字符串的比较,即自己写一个strcmp函数。4、写一个用矩形法求定积分的通用函数。5、用指向指针的指针的方法对n个整数排序并输出。要求将排序单独写成一个函数。要求:根据实验内容的要求任选2~3个题目,独立编写完整的程序,上机通过【所需主要仪器设备】硬件要求:微型计算机一台(Pentium或以上)。软件要求:Windows操作系统,VisualC++。实验五综合应用程序设计一小型学生管理系统【实验类型】设计型【目的与要求】提高综合运用C语言进行应用程序开发和设计的能力:提高和巩固以前各章所学的知识
【所需主要仪器设备】 硬件要求:微型计算机一台(Pentium 或以上)。 软件要求:Windows 操作系统,Visual C++。 实验四 指针应用程序设计 【实验类型】 综合型 【目的与要求】 掌握指针定义的方法。掌握利用指针存取数据的方法。通过上机理解数组指针和指针数组的 含义。通过上机理解函数指针和指针函数的含义。掌握指针参数的使用方法。 【内容提要】 上机实验内容: 编程序并上机调试运行程序,要求都用指针实现: 1、输入三个整数,按由小到大的顺序输出,然后将程序改为:输入三个字符串,按由小到大 顺序输出。 2、将一个 3×3 的矩阵转置,用一函数实现之。 3、用一个函数实现两个字符串的比较,即自己写一个 strcmp 函数。 4、写一个用矩形法求定积分的通用函数。 5、用指向指针的指针的方法对 n 个整数排序并输出。要求将排序单独写成一个函数。 要求:根据实验内容的要求任选 2~3 个题目,独立编写完整的程序,上机通过。 【所需主要仪器设备】 硬件要求:微型计算机一台(Pentium 或以上)。 软件要求:Windows 操作系统,Visual C++。 实验五 综合应用程序设计——小型学生管理系统 【实验类型】 设计型 【目的与要求】 提高综合运用 C 语言进行应用程序开发和设计的能力;提高和巩固以前各章所学的知识

【内容提要】上机实验内容:利用C语言,设计编写一个传统的小型学生信息管理系统。1、该系统可以用于管理一个班的学生信息。学生人数在50人左右。2、该系统存放了儿乎所有的有关学生的信息:如学号、姓名、性别、出生、地址、成绩、所在系等,具体数据由设计者分析确定。3、所有学生信息的数据结构及其存储结构由设计者分析确定。4、所有学生信息的数据以文件形式存放。5、该系统具有相关的数据输入、输出、查询、修改、统计、排序等功能。6、上机实验前进行系统分析和设计。7、选用适当的算法和数据结构,建立相应的程序代码。8、上机调试通过,验证自己编写的程序的结果与预料效果之间的关系。要求:1、根据实验内容提出的要求,进行程序系统的分析和设计。2、编写完整的程序代码,上机验证通过。【所需主要仪器设备】硬件要求:微型计算机一台(Pentium或以上)。软件要求:Windows操作系统,VisualC++。五、实验学时分配实验项目名称、实验学时、实验类型、项目类别、开放性等。实验必做/是否为开序号实验类型实验项目名称备注学时选做放实验C语言运行环境熟悉及简单V是2验证型必做程序设计选择结构、循环结构程序设12是4验证型必做计33是综合型必做学生成绩统计小系统42是综合型必做指针应用程序设计综合应用程序设计一一小5是必做4设计型型学生管理系统六、所在实验室及主要仪器设备(一)实验室名称:软件实验室
【内容提要】 上机实验内容: 利用 C 语言,设计编写一个传统的小型学生信息管理系统。 1、该系统可以用于管理一个班的学生信息。学生人数在 50 人左右。 2、该系统存放了几乎所有的有关学生的信息:如学号、姓名、性别、出生、地址、成绩、所 在系等,具体数据由设计者分析确定。 3、所有学生信息的数据结构及其存储结构由设计者分析确定。 4、所有学生信息的数据以文件形式存放。 5、该系统具有相关的数据输入、输出、查询、修改、统计、排序等功能。 6、上机实验前进行系统分析和设计。 7、选用适当的算法和数据结构,建立相应的程序代码。 8、上机调试通过,验证自己编写的程序的结果与预料效果之间的关系。 要求: 1、根据实验内容提出的要求,进行程序系统的分析和设计。 2、编写完整的程序代码,上机验证通过。 【所需主要仪器设备】 硬件要求:微型计算机一台(Pentium 或以上)。 软件要求:Windows 操作系统,Visual C++。 五、实验学时分配 实验项目名称、实验学时、实验类型、项目类别、开放性等。 序号 实验项目名称 实验 学时 实验类型 必做/ 选做 是否为开 放实验 备注 1 C 语言运行环境熟悉及简单 程序设计 2 验证型 必做 是 2 选择结构、循环结构程序设 计 4 验证型 必做 是 3 学生成绩统计小系统 3 综合型 必做 是 4 指针应用程序设计 2 综合型 必做 是 5 综合应用程序设计——小 型学生管理系统 4 设计型 必做 是 六、所在实验室及主要仪器设备 (一)实验室名称: 软件实验室

(二)主要仪器设备:硬件:微型计算机一台。软件:Windows操作系统,VisualC++。七、使用教材及主要教学参考书教材及教学参考书需注明:著者、书名、出版社、出版地、出版年、适用的专业名称。建议教材:1、陈慧马杰良主编《案例式C语言教程》,中国铁道出版社2011年参考书目:1、马杰良陈慧编著《案例式C语言教程实验指导》,中国铁道出版社2011年2、谭浩强主编《C程序设计》(第4版),清华大学出版社2010年3、谭浩强编著《C程序设计题解与上机指导》(第4版),清华大学出版社2010年4、李丽娟主编《C语言程序设计教程》(第4版),人民邮电出版社2013年5、李丽娟主编《C语言程序设计教程习题解答与实验指导》(第4版),人民邮电出版社2013年八、课程考核方式与成绩评定1、课程考核实行平时考核和综合实验考核相结合的形式。2、平时考核主要包括平时考勤和平时的四次实验,共五项内容。即:平时考核成绩=平时考勤分数*10%+实验一分数*10%+实验二分数*20%+实验三分数*30%+实验四分数*30%。3、综合实验考核(即期未考核)作为该课程的总结性考试,采用综合性实验的方式进行考核共记100分。4、课程总成绩由平时考核成绩和期末综合实验考核成绩两部分组成。平时考核成绩占总成绩的50%,期末综合实验考核成绩占总成绩的50%。即:课程总成绩=平时考核成绩*50%+期末综合实验成绩*50%。《程序设计基础实验》课程考核成绩由以上平时考核成绩和期末考试成绩两种成绩加权合计,总成绩达到60分为通过。制订:数学与信息技术学院教研室:计算机工程教研室执笔人:杨秀荣审订人:贺玉珍
(二)主要仪器设备: 硬件:微型计算机一台。 软件:Windows 操作系统,Visual C++。 七、使用教材及主要教学参考书 教材及教学参考书需注明:著者、书名、出版社、出版地、出版年、适用的专业名称。 建议教材:1、陈慧 马杰良主编 《案例式 C 语言教程》,中国铁道出版社 2011 年 参考书目:1、马杰良 陈慧编著 《案例式 C 语言教程实验指导》,中国铁道出版社 2011 年 2、谭浩强主编 《C 程序设计》(第 4 版),清华大学出版社 2010 年 3、谭浩强编著 《C 程序设计题解与上机指导》(第 4 版),清华大学出版社 2010 年 4、李丽娟主编 《C 语言程序设计教程》(第 4 版),人民邮电出版社 2013 年 5、李丽娟主编 《C 语言程序设计教程习题解答与实验指导》(第 4 版),人民邮电出版社 2013 年 八、课程考核方式与成绩评定 1、课程考核实行平时考核和综合实验考核相结合的形式。 2、平时考核主要包括平时考勤和平时的四次实验,共五项内容。 即:平时考核成绩=平时考勤分数*10%+实验一分数*10%+实验二分数*20%+实验三分数*30%+ 实验四分数*30%。 3、综合实验考核(即期末考核)作为该课程的总结性考试,采用综合性实验的方式进行考核。 共记 100 分。 4、课程总成绩由平时考核成绩和期末综合实验考核成绩两部分组成。平时考核成绩占总成绩 的 50%,期末综合实验考核成绩占总成绩的 50%。 即:课程总成绩=平时考核成绩*50%+期末综合实验成绩*50%。 《程序设计基础实验》课程考核成绩由以上平时考核成绩和期末考试成绩两种成绩加权合计, 总成绩达到 60 分为通过。 制 订:数学与信息技术学院 教研室:计算机工程教研室 执笔人:杨秀荣 审订人:贺玉珍