c语言程序设计实验二(通用11篇)
(二)[实验1]
1.实验题目
下列各题的算法用传统流程图及N-S流程图两种方式表示:
(1)输出图形(顺序结构)
★★★★★★★★
★★★★★★★★
★★★★★★★★
★★★★★★★★
(2)判断用户输入的字符是数字字符、字母字符还是其它字符。(选择结构)
(3)运用循环结构打印如下图形(for循环结构)。
◆
◆◆◆
◆◆◆◆◆
◆◆◆◆◆◆◆
◆◆◆◆◆◆◆◆◆
(4)输入任意数N,求P的值(P=N!)(当型循环结构)
(5)输出1~N间20个不能被3整除的数列(直到型循环结构)
(6)计算并打印九九表。(直到型循环结构)
2.实验目标
(1)熟练掌握流程图表示算法的方法。
(2)熟练掌握结构化程序设计的三种基本结构。
[实验2] 变量的变化情况。
1.实验题目
有以下程序
#include
#definea 3*2+1
#defineA a*a+a
#defineb(3*2+1)
#defineB(b)*(b)+(b)
main()
{
int x1,x2;
int y1,y2;
x1=a*a;
y1=A*A;
x2=b*b;
y2=B*B;//换为y2=(A)*(A)结果是否相同
printf(“x=%d tty=%dn”,x1,y1);
printf(“x=%dtty=%dn”,x2,y2);
}用逐行断点测试方法,体会程序运行时各变量值的变化情况。
2.实验要求
(1)在上机实验之前先将每执行一条语句后变量x1、x2和y1、y2的预期结果写在相应语句旁。
(2)设置4个监视项x1、x2和y1、y2,断点逐行测试执行程序。
(3)每执行一条语句后,对比Watch窗口中变量x1、x2和y1、y2的值与预期的值是否一致,若不一致,请解释原因。
(4)将语句“y2=B*B;”换为“y2=(A)*(A)”,测试结果是否相同,为什么?
(5)运行结束后查看输出结果,确认该结果是否与预期的值一致。
3.实验目标
(1)宏定义的正确定义。
在C语言实验中,主要是引导学生突破传统的思维方式,培养学生读、写程序和调试程序的能力以及提高上机的学习兴趣和自主实验的方法技巧等。以下是笔者结合教学实践,从几个方面总结如何加强实践环节的教学。
1 编写符合学生实际情况的实验讲义,注重学生综合实验能力的培养
目前,C语言实验方面的教材和参考资料很多,但是绝大部分内容广泛,针对性不强,不好直接拿来当作学生的实验指导书,主要有以下几个原因:第一,学生没有明确的实验目标,实验兴趣不大。上机时一些学生无所事事或玩游戏,不但害了自己,还影响其他同学。第二,现有教材中上机实验都立足于C语言本身的一些语言规则,和实际开发脱节,没有较容易理解和生动有趣的范例,比较死板、枯燥。第三、现有实验大多注重语句、语法等,没有把编程解题思路和程序测试等放在首位,对学生分析问题和解决问题的能力训练不够。为此,教师需要结合自己的教学经验,针对专业特色和教学要求编写针对性较强的实验指导书,以达到以下几个目的:(1)每个实验目的明确;(2)明确实验预习内容,让学生每次实验都作好预习准备;(3)实验指导部分重在指出此次实验的重点内容、不易理解和易出错的环节,而不是理论教材的重复讲述;(4)精选实验题目,以达到每一道题都能体现一个或多个知识点,并较多地设置“陷阱”,尽量让学生出错,把问题留给学生去思考和解决。根据难易程度分必作题和选作题,必作题要求在上机时间内完成,选作题供学有余力的同学参考,以满足不同层次学生的需求。
2 规范实验活动过程,量化评分标准
学生是实验的主体,要提高实验教学效果,学生必须要对实验有足够的兴趣和重视。然而,认为实验课无关紧要的思想还是比较普遍,因此作为实验教师就应当制定一些规章制度来规范整个实验过程,在C语言实验教学过程中实验教学过程中主要从以下几个方面进行规范。
2.1 检查实验预习报告
由于是程序设计课程,如果学生上机时才来思考、写程序和调试,绝大部分同学根本不能完成实验任务,甚至根本没法动手。为了提高实验教学效果,在自编的实验指导书中设有“预习与思考”内容。要求学生在上课之前思考相关问题并将“实验内容”部分的源程序写好。每次上课前,老师严格检查实验预习报告,凡没有预习的同学一律不允许进实验室。这样,可以促使学生对相关的内容进行一定时间的预习和思考,实验教学效果较明显。
2.2 严格考勤制度和实验现场考评
在实验教学过程中应注意培养学生的动手能力、独立科研能力及合作精神,绝不允许“一人动手大家看”这种“放羊式”现象出现。学生在做完实验后都必须由教师检查其结果,打分后方可离开,凡无结果或结果不理想者,必须补做或提供条件让其重做,促使学生在实验中勤动手,也使学生们具有成就感。对于部分综合型的实验尤其强调分工合作,实行小组长负责制,争取小组成员一起协调配合完成。
2.3 认真批阅实验报告加强反馈
每次实验结束,要求学生上交实验报告。对每一份实验报告都认真批阅,在不正确的地方作出批注,并提示学生错误的原因让他进一步思考;对表现好的学生下评语给予鼓励。这样做有几个好处:(1)能够检验学生上机实践的效果;(2)能及时发现和校正学生所出现的问题;(3)能够激发学生对此门实验课程的学习兴趣;(4)老师能清楚地了解学生对相关知识的掌握情况,教学更加有针对性。实践证明,认真批阅实验报告后,下次同学们上机时会更认真,所写的实验报告更工整、规范。
2.4 量化评分标准
实验课不同于理论课,实验操作能力是评价学生成绩的一个主要方面,不能仅以试卷的形式来评分,因此需要制定了严格的评分标准,将学生们在课堂上的表现以分数形式量化,比如可这样规定(实验成绩30分):其中操作和实验结果10分、实验报告5分、实验考试5分、提问5分、纪律5分:包括迟到早、旷课、环境整洁等。这样可以让学生有紧迫感,杜绝“放羊”现象的发生。
3 改革实验教学方法
在以前的实验教学中,老师在上机之前将实验过程中可能涉及到的问题先作讲解,在实验过程中,当学生问到问题时,马上给出正确的解决方案,甚至帮学生将问题解决,很少让学生去思考。这样可能下次学生遇到相同的问题时仍然没法解决。然而,学生在整个实验过程中,是否积极开动脑筋,所收到的效果是大不一样的。现在,在教学过程中切实采用“启发式”教学方法,主要体现在:(1)在课前,针对本次实验的内容提出几个问题让学生思考后作答,这样就会促使学生应用所学过的理论知识对教师所提的问题积极思考,并通过实验来验证解决;(2)对学生在实验过程中所遇到问题,并不马上将解决的方法都告诉学生,而是引导学生分析,在什么情况下才会出现这种错误,如果要解决它有哪几种思路,留几分钟的时间给学生自己思考。比如针对以下3个C语句:int b=7;float a=2.5,c=4.7;a+(int)(b/3*(int)(a+c)/2)%4,让学生计算表达式的值并上机验证。采用的教学方法是先让学生用笔计算,之后上机验证,看两个结果是否一致。一般会发现一部分学生出错,就可提出以下几个问题供他们思考:(1)整个表达式的结果是int型还是float型?(2)(int)(a+c)的结果是多少?是整型还是实型?(3)两个整型数据相除结果是什么类型?(4)“%”运算符的功能是什么?左右两边的数据要求是什么类型?
比起“填鸭式”的灌输,“启发式”教学方法可以让学生积极开动脑筋思考,对本实验的理解就会更加深刻,学到的知识也更扎实。
4 设计综合性的实验
以往大多数同学在学完C语言后,普遍反映能看懂例题,但遇到实际问题就无从下手,这主要是教材上的例题缺少实际意义。为此,我们可以设计短期任务与长期任务结合的上机内容。以一个大题目作为长期任务,再按不同功能模块分解开来,形成一个个短期任务。每一章学过之后要求完成一项或几项编程作业,而各章的编程作业不是孤立的,而是相互联系的,实际上它们都是一个较大型较复杂程序的组成部分。这样就可以使学生的任务形成一种连贯性,在整个学科的学习过程中始终都有一个总任务的驱动,而学生又在一个又一个短期任务的驱动下,体验着一次又一次迈向成功的喜悦。例如,以“学生成绩管理系统”为课程设计的长期任务,从常用输入/输出语句printf和scanf开始,让学生编写主函数并在主函数中调用若干个空函数形成一个文本型菜单的雏形;学习常用数据类型后,再编写一个验证密码输入的函数;选择结构后,要求编写一个菜单选取函数;循环控制和数组后,要求建立班级课程的成绩输入输出函数;学完结构体类型后,要求使用结构体数组来存储和处理学生的信息;学习链表后,要求利用单链表动态管理学生的成绩;最后在“文件”这一章,要求利用文件操作完成学生成绩管理。当学完整个课程,完成了平时要求的各项编程作业之后,就会发现,原来自己完成的远不是零碎的程序段,而是在制作程序的各个部件,只要通过简单的程序拼装,就可以构成一个比较复杂的程序。这也在潜移默化中培养了学生采用各个击破的方法解决实际问题的意识。最后,学生从整体的角度来审视整个程序的设计,并通过上机进行综合调试,达到提高编程能力的目的。
5 采用协作方式的实验组织形式
协作学习由David W.和Roger R.Jonson教授提出,是学生以小组形式参与、为达到共同的学习目标、在一定的激励机制下最大化个人和他人习得成果,而合作互助的一切相关行为。协作学习是一种通过小组或团队的形式组织学生进行学习的一种策略。小组成员的协同工作是实现班级学习目标的有机组成部分。小组协作活动中的个体(学生)可以将其在学习过程中探索、发现的信息和学习材料与小组中的其他成员共享,甚至可以同其他组或全班同学共享。在此过程中,学生之间为了达到小组学习目标,个体之间可以采用对话、商讨、争论等形式对问题进行充分论证,以期获得达到学习目标的最佳途径。学生学习中的协作活动有利于发展学生个体的思维能力,增强学生个体之间的沟通能力以及对学生个体之间差异的包容能力。此外,协作学习对提高学生的学习业绩、形成学生的批判性思维与创新性思维、对待学习内容与学校的乐观态度、小组个体之间及其与社会成员的交流沟通能力、自尊心与个体间相互尊重关系的处理等都有明显的积极作用。
采用协作方式来组织实验,是值得广大教师探讨并推广的一种形式。在C语言实验教学过程中,在尊重学生个体差异和一人一机基础上,利用局域网,将学生分成小组进行协作实验,将实验心得体会、结论等在网上共享。改变以前那种各自为阵,互不往来的实验组织方式。协作学习对提高学生的学习业绩、形成学生的批判性思维与创新性思维、对待学习内容与学校的乐观态度、小组个体之间及其与社会成员的交流沟通能力、自尊心与个体间相互尊重关系的处理等都有明显的积极作用。
6 结束语
C语言的实践教学在该课程的教学过程中占有举足轻重的地位,本文通过对C语言课程多年的教学经验和教学改革的实践和体会,提出了增强实践教学和加强学生动手能力的培养想结合的思想,使学生在实践教学的同时,也锻炼和培养了都手能力,为大学计算机语言课程的实践教学提出了一个新的思路和方法。当然,对于实验课的教学,还有许多方面需要我们进一步完善和提高。
摘要:《C语言程序设计》是高校计算机教学的一门基础课,实验教学在其中占有非常重要的地位。本文就如何强化C语言实验教学进行了探索,并提出了一些可行的方法。通过教学实践表明,这些方法和措施能有效地提高教学效果以及学生的动手能力。
关键词:C语言,实验教学改革,探讨
参考文献
[1]谭浩强.C程序设计(第二版)[M].北京:清华大学出版社,1999.
关键词:C语言实验教学;教学改革;教学设计;教学流程
中图分类号:G642.0 文献标识码:A
一、引言
C程序编写能力是要靠大量的练习学会的,只有让学生多多动手,他们才会对程序设计语言感兴趣。因此在C语言课程教学中应该重视实验课。但是,目前C语言实验课的教学存在着以下弊端:第一,在教学理念上重视理论教学,轻视实验课的练习。第二,在实验课教学过程中教师往往放任学生自由上机,学生只能被动地编写教师提供的程序清单对编程知识缺少深入思考。第三,在实验课的教学过程中,学生之间缺少交流。而在实际的程序开发行业中所有开发人员是需要相互合作的。基于以上因素需要对C语言实验课的教学过程进行改进。
二、C语言实验课教学目标的确定
教学目标就是教学的一个标准,教学目标规定了教学要达到的程度,它是教师教学和学生学习的依据,教学目标的制定可以克服教学的盲目性,在教学过程中占有重要的地位。因此,C语言实验课教学首先要确定教学目标。
C语言实验课教学目标的制订要从认知领域、动作技能领域和情感领域这三个方面来确定。例如对于C语言课程中的“控制结构”这部分的实验内容其实验目标确定如下:在认知领域方面,学生要理解基本的解决问题的技巧,理解计数控制循环和标记控制循环;在动作技能领域方面,学生能够熟练掌握自顶向下逐步求精算法设计,能够熟练应用if语句,if/else语句和switch语句来实现选择结构,能够应用while语句,do/while语句和for语句实现程序循环结构,学生可以使用++、--、赋值和逻辑运算操作符,在循环语句中能够应用break语句和continue语句来控制程序的结构;在情感領域方面,要培养学生认真学习、严谨求实、实事求是和勇于探索的科学精神和态度。
三、确定C语言实验课的操作流程
为了上好C语言实验课,并且能够完成制订好的教学目标,需要根据C语言实验课的具体题目可以将实验课教学过程分为三大部分进行:课前部分、课中部分和课后部分。其具体的操作流程如下图所示:
C语言实验课操作流程图
在上图中,课前教学部分、课中教学部分和课后教学部分都要按照实验教学目标来制定。课前教学部分是在课堂讲授课程完毕之后并且在实验课进行之前进行的,在这部分中主要是要对所讲授课程的知识点进行巩固,并对实验课涉及的知识进行预习。教师在设计实验题目时要设计好学习环境,利用良好的环境调动学生学习的积极性。在实验课学生现场自主编程中,可以发现C语言的语法错误和逻辑错误,提高学生自己分析和解决问题的能力。在这个过程中,教师要给予学生必要的指导和帮助。在协助学习实验题目过程中,教师要确定协作小组让学生共同完成学习目标并将个人习得成果转化为大家习得成果,并且教师要对不同的学习任务进行选择,要设计好实验课程的协作环境,保证实验课程的顺利实施,最后要对实验教学效果进行评价,以此来刺激教学的进行。
四、结论
在C语言实验课的教学中,要充分尊重学生学习活动的主体性地位。所以在大学C语言程序设计这门课程的实验教学中采用了以学为主的教学设计方案,这样可以促进学生独立分析问题的能力,充分调动学生学习的兴趣和主动参与意识。
参考文献:
[1]吴文虎.计算机程序设计基础课程改革[J].中国大学教学,2004(02).
[2]乌美娜.教学设计[M].北京:高等教育出版社,1994.
[3]孙可平.现代教学设计纲要[M].西安:陕西人民教育出版社,1998.
实验七 指针 了解指针的概念,学会定义和使用指针变量。2 掌握指针、变量和数组的关系及使用方法。3 学会使用指向函数的指针变量。
二 实验内容 编写函数fun(float *sn,int n),其功能是:根据以下公式计算s,计算结果通过形参sn传回;n通过实参传入,n的值大于等于0。上机运行并记录输入输出(主函数已给出)。
s11111 3572n1fun(float *sn,int n){ 定义变量:和s,通项w,符号f,循环控制变量i; /* 其中s、f要初始化 */ 循环求累加和s { 改变符号;/* 由负变正或由正变负 */ 求通项w;累加:s+=w;} 形参指针变量sn赋值;/* 通过形参sn传回累加和s */ } main(){ float s;int n;printf(“n=”);scanf(“%d”,&n);fun(&s,n);printf(“s=%fn”,s);}
完整程序如下:
#include
输出结果如下图: 想使指针变量pt1指向a和b中的大者,pt2指向小者,以下程序能否实现此目的? swap(int *p1,int *p2){ int *p;p=p1;p1=p2;p2=p } main(){ int a,b;int *pt1,*pt2;scanf(“%d,%d”,&a,&b);pt1=&a;pt2=&b;if(a
上机调试此程序。如果不能实现题目要求,指出原因并修改之。
子函数swap改成下面程序方可实现目的,主函数不变: swap(int *p1,int *p2){ int p;p=*p1;*p1=*p2;*p2=p;} 下面的程序用来实现将一个3×3的矩阵转置。#include 程序修改如下: #include 应改为: printf(“%cn”,*pt++); 课程编号: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”文件中 1、请根据输入的x值和以下公式,计算输出分段函数y的值。 x10 y0 x10 (x0)(0x1)(x1) 2、编写一个C程序,把整数0,1,..6依次转换成Sunday,Monday,„Saturday并输出,整数0,„,6由键盘输入。如果输入错误,输出“error”。 (提示:此题可以用if语句实现,不需要用循环。) 说明: (1)请大家按学号来坐,便于考勤和管理。 (2)请珍惜宝贵的实验时间!不要做与实验无关的事情,比如聊QQ、上网或打游戏。 (3)直接把C语言代码粘贴到相应的实验题目下方,上交实验报告时只交word文档。 教学是根据特定目标培养人才的主要形式和手段。C程序设计实验教学一般分为如下三部分:布置实验内容、学生自主实验、教师剖析讲解, 这是教师“教”与学生“学”的有机结合, 学生在教师有目的、有计划的指导下, 积极、主动的掌握学科相关知识。我们往往将这样的教学过程界定为传统教学[1]。近年来, 伴随着各门各科课程改革的深入实施, 传统教学过程中许多教学理念已经不能完全适应时代的要求[2], 譬如以知识传授作为学生学习的主要途径, 在教学效果评价上重结果轻过程, 这种凡事以教师为中心的方法, 扼杀了学生的主观能动性, 学生成为知识的被动接受者, 不利于学生创造性思维及学习兴趣的培养, 因此有必要对传统的教学过程进行改革[3]。本文针对传统C语言程序设计教学过程中存在的问题, 将“有效教学理论”引入到C语言实验教学过程中去, 对教学方法及教学内容作出一系列的改革, 并进而形成一个完整的C程序设计实验教学体系。 2 有效教学理论的立足点 有效教学理论要求教师遵循教学活动的客观规律[4], 以促进学生的学习与发展为目的, 以尽可能少的时间、精力和物力取得尽可能多地教学效果, 从而实现特定的教学目标[5]。根据上述目标要求, 教学过程的设置应当考虑到如下几点内容。 (1) 设计出教者与学者均能安心的人际关系和学习环境, 营造出人性化的理解和相互信赖的班级气氛, 培养学生团队合作的精神, 团队中的同学之间彼此信任, 彼此依赖, 为团队而战, 不再是单打独斗; (2) 学习的内容、方法和评价方式均适于学生, 研究教学过程, 注重教法的选择和学法的指导。所选教学案例要符合学生的实际情况, 内容要涵盖理论课所有知识点, 对学生的作业要做正确的评价, 不能完全根据参考答案来, 对进步大的同学要给予鼓励; (3) 在活动性的学习过程中, 学生能够积极主动地参与。每个学生在锻炼的过程中能够充分发挥自己的想象力、创造力, 教师要给学生创造展示自我的空间, 使学生在练习的过程中真正发挥主体作用。同时, 根据每个学生的性格特点, 让其参与到团队实践中去, 扮演不同的角色, 从而提高学生的学习兴趣和解决问题的热情。 3 C语言实验课程中的有效教学设计 C语言程序设计是一门实践应用性较强的学科, 在日常的教学过程中需要不断强化实验环节, 让学生在操作实践过程中不断地发现、分析和解决新问题。为了实现上述目标, 教师在教学过程中必须要结合有效教学理论的要求, 努力改进教学方法。 3.1 上好第一堂实验课 教师在课前设计好一个用C语言开发的软件, 该软件应该包括C语言程序设计的主要知识点 (如一个简单的学生管理系统) 。在上第一次实验课的时候, 教师向学生展示该功能软件, 并简单介绍实现该软件所用到的程序设计知识点, 让学生充分理解到“通过学习这门课程可以实现这样的软件”。最后向学生详细介绍本学科的实验课程设置。这一举措将会激发学生浓厚的学习兴趣, 同时也将克服长久以来植根于学生心中“程序设计学为何用”的心里障碍。 3.2 选择合适的教材 教材的选择是教学改革的关键, 良好的教材能唤起学生的学习欲望、引导学习方法、巩固所学知识等。C语言程序设计是一门以培养学生程序设计基本方法和技能为目标, 以实践能力为重点的特色鲜明的课程。为此, 其教材内容需要能够反映本学科的基本原理、技术和方法在相关现实领域中的典型应用。经过多年的课程建设, 由本校王创伟教授所撰写的教材《程序设计基础———从问题到C语言程序》在教学内容、教学方法上作出新的改进, 以学生成绩管理系统的程序设计为主线, 以编程应用为驱动, 通过实例和问题引入内容, 重点讲解程序设计的思想和方法, 并穿插讲解相关的理论知识内容。本教材侧重培养学生从实际问题空间向程序设计空间转换的能力, 让学生领会到C语言知识是一种工具, 利用这个语言工具进行有效的“程序设计”才是本课程设置的核心理念、 3.3 采用“2+2”教学模式 传统的教学过程以“教师教”为主要方法, 学生鲜有机会主动参与到教学实践中去。为了充分激发学生的学习兴趣, 自2009年9月起, C语言程序设计课程全部教学环节被安排在实验室中进行, 每个教学阶段均采用“2+2”模式 (即2节理论+2节实验) 。前2节课主要是教师结合案例讲授相关的理论知识点, 后2节让学生编程实现相应的功能。由于C语言程序设计课程主要面向本专业一年级学生, 其专业基础相对比较薄弱, 对于程序设计的概念还没有十分深入的理解, 所以在理论知识讲解中, 教师要注意突出语言特色, 充分运用形象思维讲授知识点。教学中应该尽量用一些直观形象的比喻来解释一些抽象的概念。例如, 在讲解变量的时候, 可以将变量比喻成一个“房间”, 变量的值就相当于“房间”中的东西, 而指向某变量的指针就相当于房间的门牌号, 通过这些形象直观的比喻, 学生理解起来就比较容易了。在实验环节中要求学生利用所掌握的知识点分阶段的实现学生成绩管理系统, 对于部分与管理系统联系不是十分密切的知识点, 教师可以布置一些常用项目案例让学生来实现, 从而充分调动起他们的学习主动性与积极性。 3.4 加强实验环节管理, 注重学生团队合作能力培养 目前, 国内软件企业需要的计算机专业人才, 除具备熟练的专业素质外, 更重要的是拥有良好的沟通能力, 在传统教学过程中, 这一点被绝大多数教师所忽略。 实验环节是考查学生是否能够熟练运用C语言语法解决实际问题的一个重要途径。传统的实验过程以教师为主导, 一位教师辅导几十位学生, 教师为学生实验过程中出现的问题进行解答。这样的模式存在许多的弊端, 譬如由于课堂时间有限, 教师无法即时解答每个学生提出的问题, 这样会导致部分学生不能继续进行实验, 长此以往会让他们产生厌学的情绪, 并对程序设计这门课程彻底丧失信心。针对这样一些情况, 在实际的实验教学课程中, 采用分组进行的方法, 每4位同学组成一个小组, 对于程序设计过程中某位同学不能解决的问题, 先让其进行小组内讨论, 如果小组内无法解决, 再由教师为小组成员讲解。在此过程中, 还要求小组内成员做好必要的实验笔记, 对于实验过程中遇到的典型问题做相关的记录。这一举措既能及时解决问题, 提高实验效率, 又能培养学生之间的团队协作能力。 4 结束语 基于本校计算机专业C语言程序设计教学的实际情况, 立足于有效教学理论, 对C程序设计实验环节的教学方法进行了一系列的改革。实践表明, 上述改革措施对加深课程理解、培养学生兴趣和提高教学质量有着显著的效果。随着计算机专业基础课程群改革的深入开展, 基于能力和素质培养为基本目标的有效教学理论必将体现出其极大的优势, 作为高校教师的我们必将竭尽全力地为培养高素质的优秀人才而努力。 参考文献 [1]王希杰, 王瑞庆.C语言教学改革的几点建议[J].中国科技信息, 2006 (24) :213-214. [2]宋楚平, 李少芹.C语言教学改革的思考[J].职业教育研究, 2005 (2) :84-85. [3]李丽萍, 王冬梅C语言教学改革的探索与实践[J].辽宁工业大学学报, 2009 (58) :114-115. [4]余文森.论有效教学的三大理论基础[J].课程教材教法.2012 (32) :15-21. 关键词 C语言 软件编程 实验探讨 中图分类号:TP3 文献标识码:A 1 C语言的概述 在各种计算机编程语言中,C语言属于一门高级语言,它是一切计算机语言的基础,拥有高级语言和低级语言的特点,灵活方便,简洁紧凑;而且它的语法限制不严格,程序员在设计时程序书写自由。不仅能够编写系统软件,同时还可以编写应用软件,能够适应于多种操作系统,应用广泛,可移植性强。总之,C语言对于信息技术的发展具有十分重要的作用和价值。 2基于C语言的计算机软件编程实验研究 2.1C语言的编程技巧 (1)灵活运用指针 在C语言编程的时候,指针是一种特殊类型的变量,它能够帮助程序员有效的表达和解决程序设计过程中遇到的复杂问题,熟练掌握指针是必要的。指针具有三要素:指针名以及指针类型和值。在编程时,指针和一般变量名相同,但是在类型以及值上具有区别,另外,指针不仅能够被用于表示数组,还可以被作为函数的参数返回值。 (2)C 语言的特有函数 在C语言编程的时候,有时需要用到一些特有函数。函数都具有一定的功能,同时函数名也反映了该函数的功能。在进行函数定义时,程序员需要把函数的名字、返回值类型以及参数名等各项都进行定义。另外,因为库函数是由C 编译系统提供的,这些函数均是系统首先定义好的,在程序调用的时候,程序员只需利用“#include 指令”把与之相关的头文件包含到所用文件中即可。 (3)算法技巧 在程序设计的过程中,算法是程序的灵魂,因此,掌握一定的算法技巧是必不可少的。通常情况下,算法不仅可以用自然语言表示,有的时候也利用流程图表示。需要注意的是,利用流程图表示算法时,程序设计员必须熟练掌握常用的流程图符号。且“数学乃是计算机之母”,牢固的数学知识同样能够提升编程效率。 (4)位运算以及文件知识 相比其他计算机高级语言的运算方法,位运算作为C 语言的重要特色,具有独特性和唯一性。位运算是以二进制位为对象,然后结合相关程序要求进行各种运算。文件包含有数据文件以及程序文件,是计算机不可缺少的,程序设计员在进行编程时,需要把所写的程序存储的文件之中,这样可以便于程序员查找数据,提升查找效率。 2.2 C语言和汇编语言混合的程序设计案例分析 (1)混合的软件编程方法 随着信息技术的不断发展和应用,在软件开发过程中,大多时候需要使用两种语言混合编程,有效地提高了程序的开发效率。通常情况下,混合的软件编程方法有两种,具体如下: ①把汇编语句嵌入C语言程序中。例如,把asm汇编语句嵌入到C语言源程序中:/*把5送到ax寄存器*/当把一组汇编语句嵌入到C语言源程序中,则需要利用大括号把嵌入程序给括起来:在本次的实验之中,在进行程序嵌入时,有其固定的格式,需要在嵌入的各行代码之前加“asm”关键字,也可以直接在asm代码块中放入汇编语句。但是程序设计者在进行嵌入时,一定要注意满足以下条件:汇编语言指令代码中关键字asm必不可少,且要放在指令代码之前;嵌入汇编语言指令代码能够和正常C语言程序混合,但是C语言的分隔符“;”必不可少;嵌入汇编语言时C语言的注释分界符必不可少,分别是“/*”和“*/” 。 ②首先编写C语言程序以及汇编程序,然后独立编译目标代码模块,最终进行链接。 首先,在进行混合编程时,C语言程序能够调用汇编语言的各种子程序以及其定义的变量,同时,C语言编写的函数以及定义的变量等也可以被汇编语言调用。而且混合编程的过程中,一个任务往往是由若干个功能模块组成,且不同的功能模块均是利用合适的语言进行独立编程,且以函数的形式存在。因此,程序设计者要根据每一模块的特点选择相应的语言和语言编程系统进行独立编程,并形成目标文件,继而连接目标文件,形成完整的可执行文件。在混合编程的过程中,设计者需要注意五个问题:参数传递问题;寄存器的使用问题;存储模式;变量以及函数的调用问题;子程序的返回值问题。其中,关于参数传递问题,在进行C语言程序调用汇编程序时,必须遵从参数传递原则,利用堆栈把参数传递给汇编程序。例如,在C语言程序中含有函数:voidaa(char*p,inti),这个函数是利用汇编语言进行编写的,如果编译是在小内存模式下实施的,系统在进行调用时,则写成aa(&q, n);运行时程序首先把n压入堆栈,然后再把&q压入堆栈,当参数传递过来并被汇编语言的子程序取得时,BP寄存器便被用作基地址寄存器,实现对栈中所存数据进行存取操作。 (2)混合的软件编程实例分析 程序的主要功能是在五个数中寻找最小数,有主程序“min.c” 以及汇编子程序“qiumin.asm”这两个部分组成。其中主程序是利用C语言编写,汇编子程序是利用汇编语言编写,被主程序调用,主要于完成寻找最小数。程序代码如下: /*文件名为:min.c*/ /*声明qiumin为外部函数*/ 利用C语言和汇编语言混合的编程方法,能够实现应用程序局部满足高运行速度的要求,但是在具体的运用之中,程序设计者仍需要注意寄存器分配以及内存模式等因素对于程序的影响;且在运行时,因为程序设计语言之间存在相互调用的外部接口,故可以实现外部调用。 参考文献 1、掌握C语言中的变量、数组、函数、指针、结构体等主要知识点。 2、掌握C程序的结构化程序设计方法,能使用C语言开发简单的应用程序。 二、实验内容 编写一个学生信息排序程序。要求: 1、程序运行时可输入n个学生的信息和成绩(n预先定义)。 2、学生信息包括:学号、英文姓名、年龄;学生成绩包括:语文、数学、计算机。 3、给出一个排序选择列表,能够按照上述所列信息(学号、姓名、年龄、语文、数学、计算机)中的至少一个字段进行排序,并显示其结果。 1、使用函数方法定义各个模块。 三、步骤与过程 2、求圆环的面积。(函数的嵌套调用;定义求圆的面积和圆环面积实现)#include } float area_ring(float x,float y){ float c;c=fabs(area(x)-area(y));return(c);} float area(float r){ return(PI*r*r);} 3、设计求n!的函数(分别使用连乘和递归法)再调用函数求x!-y!+z!。递归 #include t*=i;return t;} void main(){ { unsigned int n;printf(“input a unsignded interger number:n”);scanf(“%d”,&n);printf(“%d!=%10ldn”,n,fac(n));} { 关键词:C++;程序设计;教学方法;教学改革 0引言 C++语言运用范围非常广,在软件设计、网络通讯、游戏娱乐等等领域都能涉及到,也是当前世界上使用最广的编程语言。但是行业的发展受到多方面局限,人才的缺失是行业发展最大的阻碍,许多高校都意识到这个问题,相继的开始《C++语言程序设计》课程,主要就是让计算机专业的人才能够多涉及这方面课程,提高学生的自主学习与独立思考能力,增加就业的几率。传统教学方式,存在教学目标不清晰以及教学方式古板的问题,很多学生对这门学科的重要程度认知不足,教学方式与内容的乏味让学生对此课程并无多大兴趣。本文是根据多年来的经验总结以及市场调查,从教学目标与内容多方面进行研究,以此追求有效的教学改革。 1教学中存在的普遍问题 1.1学生学习目标不明确 教学的主要目的是为了培养学生的兴趣以及软件编程能力,提高学生的独立思考、分析与解决问题的能力,提高就业的几率。以往的课程都是由不同教师来传授,每一个教师都只关注自己本科教学,并没有从全局效果分析,学生对自己的学习目标不明确,导致学习兴趣降低。没有目标的学生犹如行驶中迷失了方向的帆船,不知所措。当学生对自己的学习有了清晰的规划,就会不断朝着目标的方向努力前进。 C++涉及的概念都是较为复杂的,在学习过程中灵活多变,出错可能性非常大,可以说想要学好此课程是相对较难,所以很多学生都产生退却念头;同时C++不仅是纯对象语言,当中还涉及到程序设计语言,面对对象并不是单一的。这种特性导致了C++语言与C语言能够兼容存在。两种语言之间有时不需修改就能够使用,所以在刚开始学习时,学生觉得相对简单。[1]。然而,这两种语言也必然存在不能共通之处,学生要真正掌握两种不同的语言,就必须对其进行对比,找到其相同之处和不同点。 1.2教学重点偏向语法,课后延伸匮乏 在语言教学中侧重与语法[2]。在传统的教学当中,不管是老师教授还是教材讲解,都是先把概念推从出去,再理解规则,最后用案例讲解。概念知识相对来说不仅枯燥,要想记住也是较难的,在教学过程中,要引起学生兴趣非常难。虽然传统教学中有案例分析,但是案例分析都是各自孤立的,只是针对某一部分的知识,学生无法从中感受到实际运用价值。枯燥无味的文字不仅不能引起学生的学习兴趣,反而会让他们觉得反感。被动地接受理论知识只会让学生很快就忘记了教学内容,只有生动的教学方式才能激发起学生的兴趣。 教材课程中有课时限制,所以教学过程基本上都是从语法、规则、案例等等形式来落实。每一堂课讲解的时间都有限,再加上教师的课前准备不足,那么这堂课的实际效用就非常低。如果在课后没有进行延伸与巩固,那么学生要掌握更深层次的知识是不可能的。在这种情况下,学生掌握的知识只是皮毛,甚至可以说有些接收能力比较差的学习是掌握不了课堂知识。如果没有进行课后巩固,基本上这堂课的知识就是一闪而过了。对于老师传授的知识,学生不可能过目不忘,因此,只有不断对知识进行巩固和复习,才能让学生牢牢记住知识。 1.3教学方式无结合企业实际需要 学生在C++语言的学习中,通常都是局限在一部分知识中,并没有顾全大局的理念。传统的教学都是采用循序渐进的形式,每一节课都给学生灌输新概念、新规则,学生没办法从所有学习的知识中进行融合使用。[3]。就算是在教学中加入了大量的实验课程,也只是围绕某一个章节某一个知识进行实验安排。这种实践课程也只是一时兴趣,学生在学习一段时间后就会产生厌倦,学到的知识进而就无法使用到企业公中。单调的教学模式显然已经让学生失去了兴趣,这对于提升学生的思考能力和动手能力毫无帮助。每一个学生在毕业后都会步入社会,因此,了解社会环境和企业对于人才的要求对于学生来说尤为重要。如果教师一味地向学生传授课本知识,即便学生能够牢牢记住这些理论知识,也不知道如何将其应用到实际操作中。因此,在教学过程中,教师应该注重理论与实际的相互结合,把学生培养成为综合型的人才。 2教学改革策略 针对上述对C++语言教学存在问题的概述,本文从以下几个方面进行策略研究,在实际使用中也取得了不错的反馈。 2.1明确学习与教学目的 学习的动机是学生能够持续进行的基础,完成整个学习与巩固过程都需要学习动机来维持。现在大学生在学习过程中会考虑到今后就业方向,如果在课堂当中能够开展与今后就业相关的内容,那么学生会非常重视这次学习,效果自然就非常明显。对于不同的教学内容,学生往往会表现出不一样的兴趣程度,因此,老师首先要了解学生在学习过程中最为关注的问题,并且针对这些问题设计和安排教学内容。学生对于感兴趣的教学内容往往会表现出更强的积极性和主动学习性,学习效果也会有所提高。结束校园学习后的学生都会走向社会,他们对于未来的就业环境和企业的人才需求表现出更强的兴趣,因此,老师在教学过程中可以适当插入这部分的内容。 2.2教学内容要结合整体与具体两个方面 教材的编排几乎都是从概念、规则、举例这样的形式,但是知识的分散导致每一个章节的内容都联系不上,学生感受不到整体的编程效果。所以,在教学当中,应该注重整体到具体的方式,让学生能够先了解整个C++编程过程,然后再在每一个程序中融入教学内容,把教学具体到每一个知识点中,巩固学生的知识能力,学生在学习完所有知识后就已经完成整个设计。这种教学思路对程序类型的课程学习有极大作用。教学首先必须具备清晰的规划,才不会显得杂乱无章。教师应当确定一个大致的教学方向,然后再对教学内容展开详细的安排,在规划教学内容时,必须充分考虑不同学生对于教学任务的完成程度,从而对教学内容的难度进行适当的调整,尽可能地让更多的学生掌握教学内容。 2.3教学方法注重同中求异、异中求同 教学当中注重同中求异,异种求同的话,能够让学生抓住事物的本质,对事物的理解加深,有利于思维拓展。为了能够让学生的学习更加深入,可以用对比学习的方式,这样的教学效果会更加好。比如说,把c++语言与C语言进行对比教学,这样学生不仅能够学习到新内容,还能够巩固旧知识,得到双收益效果。其实两种语言在设计思路上有较大差异,一种是面对程序语言,把数据与数据捆绑起来,另一种是面对整个过程的语言设计,用分块的模式教学。教学内容的不同并不是意味着教学方法也截然不同,把相似的内容集中起来教学,有利于学生更好地把握知识,采用不同的方法对相同的内容进行教学,有助于老师找到教学中的平衡点,发现更合适的教学方法。 2.4校园学习与企业联合,为就业作准备 很多计算机相关专业的学生为了能够快速就业,在校园里就会选择去外面机构培训。当然培训并不意味就是能提高就业率,主要还是看学生的态度以及掌握情况。如果在高校的C++语言学习中,可以用校园与企业合作的方式来教学,在教学当中可以加入机构培训的方式;在每一次学完知识后就加入实践活动,对于今后的就业帮助极大。同时,提高学生的学习能力以及适应能力方面也有很大帮助。学校更加注重的是理论知识的传授,而企业更加注重的是实际的操作,企业提出人才要求,学校能够更加有针对性地为学生制定学习任务,从而让学生更好地掌握相关的专业技能,让自己离开校园后尽快适应到社会的工作中。 3结语 本文提出了《C++语言程序设计》课程的教学改革思路,通过教学方法、模式的改变,来激发学生的学习兴趣与能力培养,用校企联合的方式来为今后就业奠定基础,累积学生经验的同时还能提前模拟就业。有教学实验证明,这些教学改革方式是能够在一定程度上提高教学效果,并且对编程类型的课程来说都有极大的借鉴作用。传统的教学方式显然已经不能满足人们日益增长的需求,社会环境是不断进步的,竞争是越来越激烈的,为了使学生具备更强的社会竞争力,学校必须转变教学方法,一方面要让学生掌握基础的理论知识,另一方面需要注重学生的操作能力培养。总体来说,就是要理论知识与实践操作相互结合,培养全能型的学生,对他们的知识掌握以及今后的就业都有极大帮助。 参考文献: [1]杨庚.面向对象程序设计与C++语言[M].北京:人民邮电出版社,2012. [2]杨杰,陈雪兆.《C++程序设计》教学中存在的问题及改进建议[J].湖南科技学院学报,2013,11(26):190191. 【c语言程序设计实验二】推荐阅读: c语言程序设计实验11-19 c语言程序设计实验报告01-27 c语言设计程序11-11 c语言递归程序11-06 c语言程序设计解析02-17 C语言程序设计数组04-12 c语言程序设计笔记04-22 c语言源程序10-03 c语言程序设计实习报告程序02-22 c语言程序设计作业三06-24c语言程序设计实验二 篇5
c语言程序设计实验二 篇6
c语言程序设计实验二 篇7
c语言程序设计实验二 篇8
C语言实验报告《综合实验》 篇9
c语言实验报告 篇10
c语言程序设计实验二 篇11