第一篇:c语言实践报告总结2篇
c语言实践报告总结2篇
一、实习时间:20xx年x月x日—20xx年x月x日
二、实习地点:第一微机室
三、实习目的:
1、熟悉我们自己所用的计算机的C语言开发环境,并且能够熟练掌握,达到错误能找到原因并且加以改正。
2、加深对课本理论知识的理解,进一步掌握书中重点、难点实例,锻炼自己的编写程序能力和实际应用能力。
3、上机调试程序的过程中,发现错误,解决错误,保证程序的正确运行,运行结果与给定结果完全相同。
4、学会用书中基本知识解决实际中的一些问题,将书本所学的内容与实际操作相结合,掌握把实际问题转变为C语言描述的算法的方法,明确思路。将自身的不足与缺陷改掉,养成良好编辑风格
5、培养我们的主观能动性、沟通、表达能力和团队合作意识,为我们以后的发展打下基础。
四、实习内容及方法:
在本次实习中,我们采用了由浅及深、由易到难的实习方法,而且也是按照书本的教学进程内容进行的,同时采取了实际应用与理论相结合的方法,在机房里面实习,一边理解,思考做题的思路与解法,另一边就可以马上进行上机实际操作。这对于我们加深对C语言的理解、操作以及动手能力都有了很大的帮助与提高。
实训的内容主要分为了七个版块:
第一版块:
1、Turbo C运行环境。
了解TC的基本环境,熟悉常用菜单项和快捷键:在这一小节中,需要熟练的掌握并应用Turbo C的运行环境,和基本配置。Turbo C是在计算机上广泛使用的一个C语言开发环境,它具有方便、直观、易用的界面和丰富的函数库。它把程序的编辑、编译、连接和运行等操作去不都集中在一个界面上进行,使用非常方便。并且Turbo C不需要特别安装,只需要将其拷贝到硬盘上就可以使用了。为了方便管理用户的程序文件和维Turbo 的运行环境,客户应在机子
上建立自己的工作目录,一边用来存放自己所需要开发的源程序文件。下面就是建立怎样自己文件夹,在空白区域内输入自己所建立的文件夹路径即可。
2、C程序的编辑、编译、连接和运行过程。
掌握C程序的运行步骤,初步了解C程序的特点。在Turbo C的运行中,快捷键使用非常方便,只需Ctrl+菜单栏中菜单名的首字母即可。
上面是一个程序编译与链接的截屏。第一个Compile to OBJ将源程序编译为OBJ文件,Make EXE file 编译连接一次进行,Link EXE file将OBJ文件连接为EXE文件。
3、环境的熟悉,自己按照软件并在软件中能够调试简单的C语言程序。
第二版块:
1、C语言数据类型:整型、实型、字符型。
C语言的函数类型非常丰富,除了这几类以外,还有实型、数组、指针、结构体等,在这一小节中,主要了解关于数据类型的定义、用法以及他们的存储类型,一边与以后灵活运用。
C语言中还有常量与变量之分,常量是在程序执行过程中其值不变的量。二且在C语言中常量不需要类型说明就可以直接使用,常量的类型是由常量的本身隐含决定的。
2、运算符及表达式。
在C语言中,预算符非常丰富运算灵活,常用的有以下几个:
(1)算术运算符:+、-、*、/、%(取余)及++(自增)、--(自减)。
(在这里需要注意的是:“/”运算符,在C语言中两边都是整数的话,运算结果只取整数部分;“%”他的两边都必须是整数才可以运行;“**、--”运用这个运算符时要注意“先用后加(减)、先加(减)后用”的问题)
(2)赋值运算符:=及复合赋值运算符(+=、-=、*=、/=、%=等)。
(在这里需要注意的是“=、==”的区别,要明确用法及所用的地方,“=”它的作用是赋值,“==”它的作用是判断相等)
(3)逗号运算符:,(对于逗号表达式索要注意的是要明确它所用的地方以及在使用时所要注意的细节)。
了解三种运算符的优先级,掌握三种运算符及相应表达式的应用(详见附录)。
第三版块:在这一节里,我们实习了C语言的三大结构:
1、顺序结构:
2、选择结构:if„„else,switch语句。
在这里许啊哟我们学习的很多,因为只要是程序,就脱离不了这个三大结构的范畴。在这个学习里我编写了
(1)、输入某年某月某日,判断这一天是这一年的第几天?。
(2)、给一个不多于5位的正整数,要求:
一、求它是几位数,二、逆序打印出各位数字。
(3)、某市不同车牌的出租车3公里的起步价和计费分别为:夏利7元,3公里以外,元/公里;富康8元,3公里以外,元/公里;桑塔纳9元,3公里以外,元/公里。编程:从键盘输入乘车的车型及行车公里数,输出应付工资。
源程序减附录;
经过这几个程序的练习,让我聊股的掌握了选择语句的用法以及精髓,同是这个用法和技巧已经深深的可在了我的脑海里,还有同过这些个程序的编写,让我对以前有的丝丝而非的地放完全通透理解,获益匪浅。
循环结构:while、do-while、for
在循环这一节里,我们主要做了以下程序:
(1)、求200-300之间所有素数,每5个换行。
(2)、猜数字游戏。规则为:输入一个0-10之间的数字,有5次猜测机会。如果输入0-4之间的数字,提示“太小了”;如果输入5-7之间的数字,提示“接近了”;如果输入9-15之间的数字,提示“太大了”;如果输入8,提示“correct!”;如果次数超过5次,提示“没有机会了,退出!”。
(3)、打印输出如下图形:(“◇”菱形)
(4)、有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
提示:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去掉不满足条件的排列。
(5)、打印输出九九乘法表。
我以前就对循环这一节里的内容就理解的比较好,现在做这些题很顺利的就做下去了,但在做的同是也会出现以写小的问题,但这个让我也更深一步的理解了循环语句的用法、思路以及其中的精华。
总的对这一节来说,使自己更神一步的理解了选择、过程中需要注意的一些细节问题。
第四版块:
1、一、二维数组的定义、引用及初始化。初始化:
一维数组:初始化赋值的一般形式为: static 式]={值,值„„值};其中static表示是静态存储类型,态存储数组和外部存储数组才可作初始化赋值二维数组:
a.可以只对部分元素赋初值,未赋初值的元素自动取b.如对全部元素赋初值,则第一维的长度可以不给出。
2、一、二维数组的应用。
在一维数组的应用中,要与循环嵌套使用,用,但是在这里,嵌套还要是循环的嵌套,因为只有这样使用才可以使程序更加简洁、简便。就像第五题:有一个班4个学生,(1)求每一门课程的平均分;(2)求每一个学生的平均分;
思路:定义一个二维数组,用二重循环输入这个数组,然后进行相加,在求平均直,最后在用二重循环进行输出。
循环的用法以及在使用类型说明符 数组名={“C Language”}char st;st={“C Language”};而只能对字符数组的各元素逐个赋值。
3、指针数组及指向指针的指针
指针数组的说明与使用一个数组的元素值为指针则是指针数组。是一组有序的指针的集合。指针数组的所有元素都必须是具有相同存储类型和指向相同数据类型的指针变量。
指针数组说明的一般形式为: 类型说明符在指针这一小节,主要是用指针实现:输入数对换,把最大的数与最后一个数对换。写3个函数:输入个数。
在这里进行函数的调用,一个输入函数,一个操作函数,一个输出函数。
i赋予它。
而字符’作为串的
而对字符可以写为: char *ps;不能写为:
指针数组*数组名
10个整数,将其中最小的数与第一个
10个数;进行处理;输出10
用于存放字符串的首地址。在这里用数组实现了输入。
在这里用指针实现了将最小的数与第一个数对换,把最大的数与最后一个数对换。
在最后进行输出。第七版块:
实训七属于一个综合类型的题目,他要求的比较高,必须在自己王权理解通透了课本知识以后才有可能理解这道题,并且进行修改完善。主要这道题本身是在VC环境下运行的,将其移植到Turbo C环境下运行,这其中牵扯到一些语法不同,在Turbo C中不可以运行,要进行慢慢调试。经过不懈的努力、修改,终于将其成功的在Turbo C环境下可以正常运行了。(详见附录)
五、结论 收获
我的收获:在本次实习中,我学到了很多实际有用的东西,而且基本上都是在课本上学不到的,并且也在实习中梳理了自己对C语言这门课程所学的所有内容,让自己对C这门课程有了更进一步的认识,有了一个良好的基础,为自己的以后打下了坚实基础。从开头到现在,所有的内容实习完了,上机实验是学习程序设计语言必不可少的实践环节,在 C语言灵活、简洁中,更需要通过编程的实践来真正掌握它。
历时4天的《C语言程序设计》已经结束了,在这几天编程的过程中感触颇多,实训编程的同时暴露出了许多我自身存在的问题,同时也对自身有了很大的提高。
首先,对我以前做题做事非常马虎的毛病有了很大的改进,通过在这几天编程的过程中的锻炼,我现在做题比以前仔细多了,会小心翼翼地去看每一个地方,会仔细地检查程序的每一个字母、标点,以及每个可能出错的地方,更会特别仔细,生怕自己一不小心搞错了,而导致整个程序都无法运行。
其次,在编程的过程当中弥补了我许多知识上的缺陷,弄清楚了我不懂的地方和似是而非的地方,使我及时补上了欠缺,为自己以后的人生道路打下了良好基础,同时也让我对每一件事都有了一个好的心态去对待它,更让自己在编写程序的过程中每时每刻都处于充足的状态。
再次,通过几天综合实训编程使我的知识形成了一个完整的框架结构,而不再是零散的知识个体,使我在使用时更加的方便,更加灵活,以前有好多题目要写十行八行的,还有些地方弄得不是太懂,现在只需要五六行就可以搞定,而且还对于思路特别清晰、明确。
第四,在实习结束后,我对做完的习题检查比再是一切的走马观花,而是仔细核对、认真检查,和以前相比明显改善了好多,以前自己对于检查程序总是没有耐心,不好好检查,有问题总是找老师,相对于实习之后来说,有了很大的改善,自己不但可以坐下来耐心检查,还能够自己将程序调试成功,这对于现在的我来说是一个明显的进步。
第五,通过实习改变了我做题时心烦气燥的习惯,现在做题可以平和静气的完成。
第六,通过实习我的自制能力更强了,基本完全可以控制自己,避免外界的干扰,安心地完成自己的工作。
第七,在学习过程中,由于天气炎热,心里烦躁,同时也是每天都盯着频幕看,脑袋都看大了,但是我却一直坚持了下来,这对于我来说,也是一个非常好的习惯。这同时也是我的一个收获。
第八,实训过程中,充分发挥团队协作精神,共同进步,帮助同学顺利完成实训课程,有困难一起解决,同时也使我在他们身上学到了很多东西。
总之,通过实习使我自身的知识体系得到巩固、提高以及使团队工作的能力得到锻炼。
不足
我的不足:
首先,我的第一个,同时也是一个最大的缺点,自己对于理论知识掌握的还不是很通透,理解的不够彻底,对于一些问题似似而非,给自己编写程序的过程中带来了很大的麻烦。
其次,我不能够精心的去完成每一个程序,对于每个程序而言,都是马马虎虎,只要运行结果是对的,那就可以了。虽然我自己也知道这样是不好的,但是自己就是不愿意去改,在经过实习之后虽然有所改善,但在我看来,改进的不是很大。
第三,自己做题时还有些马虎,一些小的细节在编写程序过程中不注意,只有在编译连接是才可以发现、对其进行修改,对于一些小程序还不能实现一次就可以完成编译连接。
第四,做题时自己不能心平气和的去做。
第五,自己的子宅里不够强,不能持之以恒的坐在自己的座位上编写程序,歇一会就要起来转转。
六、致谢
在此,我仅代表我自己,对老师您致以崇高的敬意和深深的感谢,没有您,就没有我那么多的收获,您不辞辛苦,在这炎热天气里,放弃您的休息时间来为我们辅导,在辅导过程中,您更是尽心尽力,从来没有少过一节课,更没有过迟到早退,对我们是全程陪同,在我们实习中随时出现问题,随时解决。只要发现问题,您从来没有说是不管过,从来没有烦躁过,对我们提出的问题,也是耐心解决,一边不懂,接着再讲一边,脸庞流下的汗水,您却从来没有在意过。对我们泥更是不计报酬的为我们服务,让我们有一个好的学习环境,不用为自己遇到问题而烦恼,在这里我想对您说一声:老师,您辛苦了!请接受您的学子的深深谢意与感激。
在这里,也对学校表示由衷的谢意,感谢学校为我们提供了良好的实习环境,让我们在这炎热的天气里,能够舒爽的坐在教室里实习,而不用操心任何问题,在这里,对我们学校表示谢意。
1、只有频繁用到或对运算速度要求很高的变量才放到data区内,如for循环中的计数值。
2、其他不频繁调用到和对运算速度要求不高的变量都放到xdata区。
3、常量放到code区,如字库、修正系数。
4、逻辑标志变量可以定义到bdata中。
在51系列芯片中有16个字节位寻址区bdata,其中可以定义8*16=128个逻辑变量。这样可以大大降低内存占用空间。定义方法是: bdata bit LedState;但位类型不能用在数组和结构体中。
5、data区内最好放局部变量。
因为局部变量的空间是可以覆盖的(某个函数的局部变量空间在退出该函数是就释放,由别的函数的局部变量覆盖),可以提高内存利用率。当然静态局部变量除外,其内存使用方式与全局变量相同;
6、确保程序中没有未调用的函数。
在Keil C里遇到未调用函数,编译器就将其认为可能是中断函数。函数里用的局部变量的空间是不释放,也就是同全局变量一样处理。这一点Keil做得很愚蠢,但也没办法。
7、如果想节省data空间就必须用large模式。
将未定义内存位置的变量全放到xdata区。当然最好对所有变量都要指定内存类型。
8、使用指针时,要指定指针指向的内存类型。
在C51中未定义指向内存类型的通用指针占用3个字节;而指定指向data区的指针只占1个字节;指定指向xdata区的指针占2个字节。如指针p是指向data区,则应定义为: char data *p。还可指定指针本身的存放内存类型,如:char data * xdata p。其含义是指针p指向data区变量,而其本身存放在xdata区。
以前没搞过C51,大学时代跟单片机老师的时候也是捣鼓下汇编,现在重新搞单片机,因为手头资料不多,找到一些C51的程序,发现里面有这些关键字,不甚明了,没办法只好找了下,发现如下描述:
从数据存储类型来说,8051系列有片内、片外程序存储器,片内、片外数据存储器,片内程序存储器还分直接寻址区和间接寻址类型,分别对应code、data、xdata、idata以及根据51系列特点而设定的pdata类型,使用不同的存储器,将使程序执行效率不同,在编写C51程序时,最好指定变量的存储类型,这样将有利于提高程序执行效率(此问题将在后面专门讲述)。与ANSI-C稍有不同,它只分SAMLL、COMPACT、LARGE模式,各种不同的模式对应不同的实际硬件系统,也将有不同的编译结果。
9、在51系列中data,idata,xdata,pdata的区别
data:固定指前面0x00-0x7f的128个RAM,可以用acc直接读写的,速度最快,生成的代码也最小。
idata:固定指前面0x00-0xff的256个RAM,其中前128和data的128完全相同,只是因为访问的方式不同。idata是用类似C中的指针方式访问的。汇编中的语句为:mox ACC,@Rx.(不重要的补充:c中idata做指针式的访问效果很好)
xdata:外部扩展RAM,一般指外部0x0000-0xffff空间,用DPTR访问。
pdata:外部扩展RAM的低256个字节,地址出现在A0-A7的上时读写,用movx ACC,@Rx读写。这个比较特殊,而且C51好象有对此BUG,建议少用。但也有他的优点,具体用法属于中级问题,这里不提。
第二篇:C语言实践报告(范文)
实
验
报
告
二级学院:信息与工程学院
系别:计算机科学与技术系
专业:信息管理与信息系统
课程名称:高级语言程序设计
班级:姓名:
实验名称:
电话订餐信息处理 实验目的:
题目要求:
一个小饭馆的生意非常红火,要想用餐必须提前一天打电话预订,假设我们是饭馆负责接受
电话预订的服务员,我们需要做些什么呢?首先,需要准备一张大小适当的白纸,等待顾客的电话。李红最先打进了电话,她预约第2天中午12点用餐,用餐人数5人,服务员在纸上做了如下记录:“李红 12点 5人”;接着,刘娜、汪涵、孙杰和赵君分别来了电话,服务员根据他们的要求做了记录,此时纸上记录的内容是: 李红 12点 5人
刘娜 11点 2人
汪涵 11点20分 3人
孙杰 10点30分 5人
赵君 13点20分 6人
孙杰随后又来电话,将用餐时间推后一个小时,那么记录的内容也应该做相应的修改。刘娜来用餐以后,可以将其信息从纸上划去
编写程序处理电话订餐的情况
实验步骤:
首先建立结构体类型,然后函数声明,编写主函数,定义函数,调用函数。完成后,对程序进行调试,确定所编写的程序是否能够运行。
实验内容:
#include =p&&flag==1)printf(所查询的编号不存在);} void change(int p){ inti,number,flag=1;printf(请输入要修改的编号);scanf(%d,&number);for(i=0;i =p&&flag==1)printf(所查询的编号不存在);} void dele(int *p){ inti,j,number,flag=1;printf(请输入要删除的编号);scanf(%d,&number);for(i=0;i<*p&&flag;i++)if(guestlink[i].num==number){for(j=i;j<*p-1;j++)guestlink[j]=guestlink[j+1];flag=0;(*p)--;} if(i>=*p&&flag==1)printf(输入的编号不存在);} void show(int p){ inti;printf(编号 姓名 用餐时间 人数n);for(i=0;i 中南大学 本科生课程设计(实践)报告 (c语言)题 目 指导教师 学 院 专业班级 学生学号 学生姓名 全国各省会城市天气情况统计 计算机基础教学实验中心 2007年 9 月 10 日 目 录 1.1 课程设计内容概述:„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„.1 1.1.1实践背景知识:„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„.1 1.1.2实践内容:„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„1 1.1.3实践目的及意义:„„„„„„„„„„„„„„„„„„„„„„„„„„„„.„2 1.2设计方案及实现过程:„„„„„„„„„„„„„„„„„„„„„„„„„„„„„..2 1.2.1总体设计思路:„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„.2 1.2.2程序设计流程图(主函数):„„„„„„„„„„„„„„„„„„„„„„„3 1.2.3操作步骤及设计成果:„„„„„„„„„„„„„„„„„„„„„„„„„„3 2.1方法技巧及所遇到的问题:„„„„„„„„„„„„„„„„„„„„„„„„„„...5(转载于:c语言实践报告)2.1.1实践方法的归纳总结:„„„„„„„„„„„„„„„„„„„„„„„„„„5 2.1.2问题及解决办法:„„„„„„„„„„„„„„„„„„„„„„„„„„„„„6 2.2实践的心得与体会:„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„6 1.1课程设计内容概述: 1.1.1 实践背景知识: 计算机技术的发展和广泛应用,正深刻地改变着现有的社会生产方式和生活方式,成为信息社会的重要支柱。信息化社会对人才的培养提出了更高的要求和标准。掌握和了解计算机技术并具有应用计算机的能力是适应信息化社会的基础。c语言是近年来在国内外得到迅速推广应用的一种计算机语言。其功能丰富,表达能力强,使用灵活方便,应用面广,目标程序效率高,可移植性好,既具有高级语言的优点,又具有低级语言的许多特点。因此,c语言特别适合于编写系统软件。 现在,c语言已不仅为计算机专业工作者所使用,而且为广大计算机爱好者所青睐,许多人已经用它编写应用软件。如今,学习c语言已成为众多计算机应用人员和青年学生的迫切要求。 1.1.2实践内容: 上网查询各省会城市某日最高、最低气温和湿度,将数据(城市名称、最高气温、最低气温、湿度)以统一格式保存在一个纯文本文件a.txt中。编程实现: a.从文件a.txt中读取数据,计算全国省会当日的最高气温、湿度的平均值,统计最高气温高于平均值的城市数; b.按湿度升序排序,将排序后的数据存入文件b.txt中; c.计算各城市温差,计算自己所在省的省会城市温差在各省会城市中的排名; d.统计最高气温在10℃以下、10℃∽20℃、20℃∽30℃、30℃以上的城市数,并绘制分布饼图和折线图。1.要求: a.利用子程序,分模块实现; b.所有数据采用文件形式保存; c.数据的组织可采用数组,也可用结构体数组。1.1.3实践目的及意义: 通过对书本知识的自学和理解,掌握用c语言编写实用程序和设计自定义用户界面的基本方法,培养利用程序设计技术进行计算机与专业知识的交叉应用,增强综合解决实际问题的能力,掌握多模块结构的程序设计与调试方法以及程序模块间的数据传递方法,建立提出问题、分析问题、解决问题的思维方式,提高自身计算机水平,促进灵活运用所学知识解决问题能力的提高。 1.2设计方案及实现过程: 1.2.1总体设计思路: 1.将上网查询的数据保存在纯文本文档里,所编写的程序包括一个主函数和四个子函数,主函数主要是定义由文件中各类数据组成的结构体和供运行者选择的分支结构。2.第一个自定义函数功能为:调用特定的库函数从文件中读取数据,此处应注意已保存文本的格式和函数中定义的数据类型,再采用循环结构将最高温度和湿度值累加求平均值,最高气温高于平均值的城市数目也可通过循环结构计算出来。3.第二个自定义函数功能为:将文件中各个城市的湿度值读出来,采用选择排序或者冒泡排序法将所有数值从小到大排列,再调用fprintf函数,把排列好的数据存入指定名称的文本文档中。4.第三个自定义函数功能为:利用循环结构把各城市最高温与最低温相减,将所得差值定义为一个数组,并显示在屏幕上,然后从第一个城市开始,和长沙市的温差比较,将大于长沙市的城市数目累加,即得出本市的具体排名。5.第四个自定义函数功能为:先将各城市的最高气温除十以方便计算,再采用switch语句,通过循环结构读出各温度段的城市数目并累加,把所得结果用饼状图和折线图显示在屏幕上。1.2.2程序设计流程图(主函数): 1.2.3操作步骤及设计成果: 1、定义文件名、文件指针、结构体数组和需要用到的自定义函数,为方便编程过程中的修改,将城市数目定义为宏。#include 2、编写主函数,利用输出函数输出一些中文提示语句以方便运行时选择。为使运行时界面清晰,还可以用几行*******和--------符号隔开。main()篇三:c语言实习报告 设计报告 一,实验目的: 通过上机实习,熟练掌握循环语句、选择语句、指针以及结构体的运用技巧。在实习中通过实际操作,编写程序,发现问题,最后解决问题,提升对c语言实用性的理解,在实践中巩固各知识点。c语言是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点,上机实习可以帮助我们更好地理解这种结构式的中级语言以及其各式各样的数据类型和高效率的运算程序,为我们进一步学习c++打下坚实基础。 同时,在实习过程中,通过互相发现问题,共同解决问题,不仅锻炼了我们的合作能力,而 且也让我们发现了一些自己的个人误区以及其他人容易犯的错误,从而在今后的学习中更加谨慎,达到事半功倍的效果;通过询问老师,也让我们养成了不耻下问的好习惯,这将很有利于以后的学习。 闲乐-一个人闲。不如大家一块儿乐/retype/zoom/9861aabdfd0a79563c1e72ad?pn=2&x=0&y=0&raww=312&rawh=443&o=jpg_6_0_______&type=pic&aimh=443&md5sum=5742db4fcffa47783d15ae929b606fc2&sign=8d2e99c900&zoom=&png=276-8578&jpg=0-25354“ target=”_blank">点此查看 <通过冒泡法对数组进行排序> <测试时由于循环语句循环次数的错误导致部分数据没有排序,修改for语言中的条件即可调试成功> 2,程序: #include for(i=0;i<9;i++) for(j=0;j<9-i;j++) if(a[j] a[10]=b;else {for(i=0;i<10;i++) {if(a[i] {temp1=a[i];a[i]=b;for(j=i+1;j<11;j++){temp2=a[j];a[j]=temp1;temp1=temp2;}break;} } } printf(11个学生成绩数组:n); for(i=0;i<11;i++)printf(%5d,a[i]);printf(n);for(i=0;i<5;i++) { temp3=a[i];a[i]=a[10-i];a[10-i]=temp3;} printf(排好序的成绩单进行反序存放为:n);for(i=0;i<11;i++) printf(%5d,a[i]);printf(n);return 0;} 3,运行结果: //输入11个学生成绩 //排好序的成绩单进行反序存放 //输出反序存放后的学生成绩数组 2,根据条件进行学生成绩排名 1 sort1 篇四:c语言实践报告 c语言大型作业实践报告 目录 一.题目„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„..3 二.设计思路流程图„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„.3 三.程序运行实时截图„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„6 四.程序源代码„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„.13 五.程序说明„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„...36 六.程序编写时遇到的问题及解决办法„„„„„„„„„„„„„„„„„„„„„„„37 七.体会„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„38 一.题目:选修课程管理系统 要求:假定有n门选修课,每门课有课程编号、名称、课程性质、总学时、授课学时、实验或上机学时、学分、开课学期等信息。学生可按要求(如总学分不能少于20学分)选课。? 课程信息维护,如录入、修改、删除等,课程信息用文件保存。? 课程信息浏览—输出。? 学生选课功能。? 查询功能包括:按学分、课程性质、学生等查询。? 统计功能。统计各门课程的选修人数。 ? 本系统要有通用性、界面美观、操作方便。要考虑系统安全。 具体算法流程设计思路(流程图): 篇五:c语言实训报告 《c语言程序设计》实训报告 课题名称: 通讯录管理系统 专 业: 计算机信息管理 班 级: 09信管(1)班 学 号: 姓 名: 指导教师: 2010 年 7 月 1 日 目 录 课程设计目的??? 1 2 课程设计题目??? 1 3 课程设计报告内容? 1 4 结论??? 10 5 结束语?? 10 6 参考书目? 10 7 程序运行? 10 8 附录:(源程序清单)12 一、课程设计题目 《通讯录管理系统》 二、实训目的(1)掌握结构化程序设计的基本方法,基本掌握面向对象程序设计的基本思路和方法。(2)掌握c的基本概念和基础知识。 (3)通过训练能够读懂较为复杂的c语言源程序并具备基本c语言程序设计的能力。(4)熟练掌握各种常用类的定义,继承,文件的应用,为更好的理解面向对象打下更好的基础。 (5)通过实训,培养自己编写、调试、分析大型应用程序的能力。 (6)掌握面向对象的基本原理,提高学生综合程序设计的能力。 (7)培养自己独立解决问题,查找资料的能力。同学之间相互帮助,相互交流,相互合作的团队精神。 (8)培养自己良好的学习兴趣,独立的编程风格。 (9)通过实训检查自己学习上的不足,达到熟练掌握c语言的基本知识和技能。 三、课程设计报告内容 3.1功能要求 该系统运行在dos环境下,人机界面为命令行文本界面。完成的任务是对若干人的通信录信息进行管理,且数据保存到文件中。 实现的主要功能是: ? 添加:增加一个或几个人的通信录信息。? 删除:删除已输入的通信录信息。? 查询:根据输入的姓名查找通信录信息。? 修改:根据输入的姓名修改通信录信息。? 显示:输出所有通信录信息。3.2 设计环境 所使用的语言采用标准c,开发工具选用在windows环境下的c-free、win-tc或者visual c++ 6.0。 3.3 数据结构 本系统是对通信录的信息进行管理,通信录记录的信息采用c的结构体数据类型描述,定义如下: struct ren /*定义个人资料结构体类型*/ { char name[10];/*姓名*/ int age;/*年龄*/ char tel[12];/*电话号码*/ char city[20];/*城市 */ char units[30];/*所在单位*/ char note[20];/*备注*/ };3.4实现方法及主要算法分析(1)主界面的设计:主界面采用文本菜单的形式,各功能调用通过菜单进行选择。采用循环处理,以便执行完某项处理后,仍可选择其他项处理。在循环内先显示提示信息,然后读取用户输入,使用switch语句对用户的输入进行判断,分别调用相应的模块,当某模块结束后再次回到文本菜单,直到用户选择结束程序菜单,才退出循环,从而退出系统。(2)外部文件的类型:文件采用的二进制的文件,对文件的读写采用顺序文件的方式,并使用fread和fwrite等函数对文件进行操作。 (3)清屏函数:一般由上一级菜单屏幕进入下一级菜单屏幕或由下一级菜单屏幕返回上一级菜单屏幕都需要清除屏幕原来显示的内容。同时在调用程序的过程中,记录需要清屏的位置,然后修改代码,加入clrscr()函数清屏。 (4)提示信息:一般的输入与输出需有相应的提示信息,以增加用户的交互性,增加输出的可读性,以帮助用户使用程序。 (5)设置颜色:textbackground()、textcolor()函数设置背景和前景颜色(6)光标定位:gotoxy(列,行);光标定位 3.5模块设计 根据功能要求,本系统为五大主要模块,具体模块如表所示。 实 验 报 告 二级学院:信息与工程学院 系别:计算机科学与技术系 专业:信息管理与信息系统 课程名称:高级语言程序设计 班级:姓名: 实验名称: 电话订餐信息处理 实验目的: 题目要求: 一个小饭馆的生意非常红火,要想用餐必须提前一天打电话预订,假设我们是饭馆负责接受电话预订的服务员,我们需要做些什么呢?首先,需要准备一张大小适当的白纸,等待顾客的电话。李红最先打进了电话,她预约第2天中午12点用餐,用餐人数5人,服务员在纸上做了如下记录:“李红 12点 5人”;接着,刘娜、汪涵、孙杰和赵君分别来了电话,服务员根据他们的要求做了记录,此时纸上记录的内容是: 李红 12点 5人 刘娜 11点 2人 汪涵 11点20分 3人 孙杰 10点30分 5人 赵君 13点20分 6人 孙杰随后又来电话,将用餐时间推后一个小时,那么记录的内容也应该做相应的修改。刘娜来用餐以后,可以将其信息从纸上划去 编写程序处理电话订餐的情况 实验步骤: 首先建立结构体类型,然后函数声明,编写主函数,定义函数,调用函数。完成后,对程序进行调试,确定所编写的程序是否能够运行。 实验内容: #include void insert(int *p);void inquire(int);void change(int);void dele(int *p);void show(int); void main(){ inti;int count=0;do {0 printf(“1.......插入n”);printf(“2.......查询n”);printf(“3.......修改n”);printf(“4.......删除n”);printf(“5.......显示n”);printf(“6.......退出n”);scanf(“%d”,&i);switch(i){ case 1: insert(&count);break;case 2: inquire(count);break;case 3: change(count);break;case 4: dele(&count);break;case 5: show(count);break;case 6:break;default:printf(“输入错误!”);break;} }while(i!=6);} void insert(int *p){ inti,number;if(*p==max){ printf(“用餐已满n”);return;} printf(“请输入编号:”);scanf(“%d”,&number);for(i=0;i<*p;i++) if(guestlink[i].num==number) { printf(“已有相同的编号”);return;} guestlink[i].num=number; printf(“请输入姓名:”);scanf(“%s”,guestlink[i].name); printf(“请输入人数:”);scanf(“%d”,&guestlink[i].sum);printf(“请输入用餐时间:”);scanf(“%s”,guestlink[i].time);(*p)++;} void inquire(int p){ inti,number,flag=1;printf(“请输入要查询的编号”);scanf(“%d”,&number);for(i=0;i if(guestlink[i].num==number){ printf(“姓名:%s”,guestlink[i].name);printf(“用餐时间:%s”,guestlink[i].time);printf(“人数:%dn”,guestlink[i].sum);flag=0;} if(i>=p&&flag==1)printf(“所查询的编号不存在”); } void change(int p){ inti,number,flag=1;printf(“请输入要修改的编号”);scanf(“%d”,&number);for(i=0;i scanf(“%s”,guestlink[i].name); printf(“请输入用餐时间:”);scanf(“%s”,guestlink[i].time);printf(“请输入人数:”); scanf(“%d”,&guestlink[i].sum);flag=0;} if(i>=p&&flag==1)printf(“所查询的编号不存在”);} void dele(int *p){ inti,j,number,flag=1;printf(“请输入要删除的编号”);scanf(“%d”,&number);for(i=0;i<*p&&flag;i++)if(guestlink[i].num==number){for(j=i;j<*p-1;j++) guestlink[j]=guestlink[j+1];flag=0; (*p)--; } if(i>=*p&&flag==1)printf(“输入的编号不存在”);} void show(int p){ inti;printf(“编号 姓名 用餐时间 人数n ”);for(i=0;i 实验结果: 实验体会: 通过这次实践让我觉得用C语言在生活中的应用占有很大的比重,这次编程,让我体会到了学习C语言的乐趣,以及运用c语言给人们带来的方便。作为一名初学者,我了解到了计算机语言的神秘性和逻辑性,将算法与数据结构的充分结合,体现了程序的内涵,也同时展现了C语言的深度。也是因为这次实践的过程,加深了我对c语言的兴趣,也意识到学习c语言是需要耐心和细心的。只有透彻的学习,才能有熟练的运用。 英语语言实践(3)总结 姓名:李月超 班级:英09A-1 学号:11904020102 第一次听说并且参加了这种形式的暑期实践活动,感觉新鲜,充满了好奇。按部就班的一点点的融入了这次活动。实践活动分为三个部分:社会实践,口译实践,笔译练习和竞赛。 首先要参加的是社会实践,要求我们自己去找工作单位实习。我找到了一家旅行社的工作。工作内容就是帮助客人办签证,填写一些申请表格,翻译一些基本的材料,比如身份证,户口本,结婚证,房产证,营业执照等等。刚刚接触这份工作的时候感觉很复杂,申请的步骤太多,又必须要求每一步都不能出错,刚开始的几天我几乎都想过放弃这份工作,可是最后我还是坚持了下来。慢慢的我熟悉了每一个步骤,并且能独立完成任务。我很开心,我做到了。这短暂而又充实的实习,是我人生的一段重要的经历,也是一个重要步骤,对将来走上工作岗位有着很大帮助。 实习结束后就是同声传译了,之前我们也上同传课,学习一些基本的方法,为以后的翻译工作做准备。口译要懂得区别于笔译的翻译方法,需要灵活处理一些难句,还要积累一些固定词语的翻译方法。我不知道自己以后会不会做翻译,但是我会在每一次上课的过程中积累一些经验,多学多练习,掌握一些基本的语句的翻译。这次同声传译的课程,会让有些人退却,但是也会让很多人去勇敢挑战。我相信,不管怎样,我们都会收获不一样的经历。 最后一项是笔译的翻译,要求我们自己找文章,自己翻译。一直觉得翻译真的好难,尤其是中国的一些古诗和文言文。但是我们以前上课也学到了一些方法,所以这次就感觉没有那么难。我按照自己学到的方法先翻译了一遍,然后又重新细致的修改了一下,力求语言精炼、准确和美丽。然后对照翻译家的翻译,再重新进行修改和润色,学习他们的翻译技巧和语言运用的方式。这次翻译练习让我知道,平时要多积累一些语句的翻译方法,翻译时要简练并且翻译出重点。我想,经过多次的练习之后,会逐步掌握一些方法和技巧,也会有很大的进步,我会继续坚持练习的,相信我一定能够有所收获。 实践活动结束了,这两个月所学到的经验和知识会是我一生中一笔宝贵的财富,对我的帮助也将享用一生! 语言实践总结 学院: 班级: 学号: 姓名: 紧张的考试已经结束,我们迎来了最后一个学期的语言实习,口译实践。本次实践的目的是考核我校大四英语专业学生是否具有运用口译基本技能的能力,也旨在提高同学们的听、说、读、写、译的各项能力,与以往的实习相比,我想不仅是我个人班里的每位同学都会收获颇丰。 口译对我们来说一直都是比较薄弱的环节,每次上实践课我都是提心吊胆的,生怕自己翻译不好,有时候甚至想放弃不译了,但我知道越是逃避就越是学不好,所以每次我都强迫自己尽自己最大努力,虽然每次都不尽如人意,听一遍只能记住只言片语甚至只是重点单词,刚开始我很沮丧,但慢慢的我便不那么排斥口译,翻译的好坏并没有多大关系,重要的是在翻译的过程中学到的克服困难的能力和享受解决困难的过程。对一个英语专业的学生来说口译是最高殿堂,即使现在还未具备一个口译员的能力,但每天进步一点点就抄梦想近了一点点,这次的口译实践活动正好为我们提供了这样一个平台。在老师的精心布置之下,我们开始了进步之旅。 口译能力与个人的听力与速记能力密切相关,所以我们的首要任务就是改进这些缺点,弥补能力的不足。为了提高自己的听力能力,在实习期间我每天都坚持听VOA新闻,刚开始我并不能完全领会新闻播报的内容,更别提速记了,但慢慢的,一遍听不懂就听第二遍,听力不在数量而在质量,尽管有生词有长句,但到第三遍的时候我已经能够写下关键词,第四遍能够简单复述新闻的内容,这就是进步。虽然在专业方面我不算最优秀的,但凡事都有办法弥补。 关于速记,还记得在口译课上老师教过我们要找到适合自己的速记方法,尽量用笔画少的符号代替复杂的汉字和英文单词。一句话要另起一行,避免与前一句句意混淆。 如:people > pl before > b4 example > e.g.等 听理论大家都能明白的八九不离十,但真到上战场自己做翻译的时候就顾不上实用理论了,大多时候只能手忙脚乱,能多记就多记,事后甚至都看不懂自己记的是什么意思,在我看来这就是口译失败最主要的原因。大家私下交流的时候都说,能听懂什么意思,可是句子太长记不下来导致对翻译的结果不满意,我想这就需要我们接受专业口译员的训练了,毕竟英语专业与同传专业在授课内容方面不甚一样。 通过这次的口译实习,使我对口译工作有了一次比较全面的感性认识,也能进一步吸收理解课堂上的知识,使理论在实际的生产中得到了运用。译者的服务对象是发言人和观众,自己既是听众又是讲话者,是一项高难度、高要求的工作。虽然精通两国语言的人也可以做些简单的口译工作,但是他们却无法担任正式的口译任务,记得老师曾说过,真正的口译员可以完完整整的不遗漏任何信息把发言人要表达的意思传递给大家,而兼职的口译员则只能大概传达,两者看似做了同样的工作,但内涵和能力却相差甚远。要成为一个优秀的口译译员,不仅必须有扎实的两种语言功底,了解两种语言背后的文化,更需要有跨文化的驾驭能力。 同时,在实习的过程中,我也深深感到知识积累的重要性。由于平时对各方面的知识了解掌握的还不够,在遇到专业词汇时缺乏专业术语的语内翻译,同时不知如何以口语化的方式表达译语。所以以后在准备不熟悉的领域时,一定要做到面面俱到,尤其在生词方面,反应要快。平时也可以多练习一些汉语的语内翻译,将专业词汇转化成生活词汇。 语言学习就是一个语言输入和语言输出的过程,但从输入到输出需要付出很多努力,对我来说口译还有很长很长一段路要走,我也做好了准备,也知道自己有很大的提升空间。最后,作为本次口译实践的成果考核,老师让我们录了11年到13年英语口语专业八级的音频,在录制的过程中我遇到了很多困难,首先由于训练的时间尚短,不能完全掌握速记的要领,导致遗漏了一些有用信息,第二,词汇掌握的不足,遇到生词不会译,甚至听到熟悉的单词却因为掌握的不牢固想不起来释义而耽误时间,第三,录制的技术问题导致音频质量不高,尽管不知道录制的结果能不能让老师满意,但是我很享受录制的过程。同时,也非常感谢这次实践让我更清楚自己的弱点,对自身能力有了一个全新的认识,我会努力学习专业知识,不断努力加紧吸收更多课外的知识,做一个专业能力强,同时各个方面都了解一些的复合型人才,一个适应社会不断加剧竞争的人才,一个最大化实现自身价值的人才,总得说来这次实践意义非凡。第三篇:c语言实践报告(范文模版)
第四篇:英语语言实践总结
第五篇:英语专业语言实践总结