![[理学]C语言程序设计实训论文.doc_第1页](http://file.renrendoc.com/FileRoot1/2019-1/10/06172fb6-bcda-4773-ab41-9ec784780a82/06172fb6-bcda-4773-ab41-9ec784780a821.gif)
![[理学]C语言程序设计实训论文.doc_第2页](http://file.renrendoc.com/FileRoot1/2019-1/10/06172fb6-bcda-4773-ab41-9ec784780a82/06172fb6-bcda-4773-ab41-9ec784780a822.gif)
![[理学]C语言程序设计实训论文.doc_第3页](http://file.renrendoc.com/FileRoot1/2019-1/10/06172fb6-bcda-4773-ab41-9ec784780a82/06172fb6-bcda-4773-ab41-9ec784780a823.gif)
![[理学]C语言程序设计实训论文.doc_第4页](http://file.renrendoc.com/FileRoot1/2019-1/10/06172fb6-bcda-4773-ab41-9ec784780a82/06172fb6-bcda-4773-ab41-9ec784780a824.gif)
![[理学]C语言程序设计实训论文.doc_第5页](http://file.renrendoc.com/FileRoot1/2019-1/10/06172fb6-bcda-4773-ab41-9ec784780a82/06172fb6-bcda-4773-ab41-9ec784780a825.gif)
已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C语言课程设计-学生管理系统说明书学 号: * 班 级: * 姓 名: * C语言实训学生管理系统论文在实训即将结束之际,我想向曾经给我帮助和支持的人们表示衷心的感谢。首先要感谢我的老师-*,他在学习和工作方面给了我大量的指导,并为我们提供了良好的学习环境,让我学到了知识,掌握了C语言的方法,也获得了实践锻炼的机会。他严谨的治学态度、对我们的严格要求以及为人处世的坦荡将使我终身受益。经过这学期的学习,对C语言这门课程,也大致有些了解,我觉得要学好着门课,最主要的是:多动脑,勤思考;多看书,深探究。把自己不懂的知识认认真真探讨,琢磨,争取弄懂,不留疑问。我们学C语言才是对C语言的初步了解和认识,现代社会,计算机科学技术飞速发展,硕果累累,C语言是基础的基础,只要先把C语言学好,才能更快更好的学好其他语言,我学C语言有那种“让我喜欢让我忧”的感觉,欢喜的是,C语言功能非常强大、应用广泛,一旦掌握了后,你就可以理直气壮地对他人说“我是电脑高手!”,而且以后若是再自学其他语言就显得轻而易举了。忧虑的是,C语言犹如“少林武功”一般博大精深,有点难学。不过C语言只要你能理清思路,掌握它的精髓,那么学C语言是一件非常容易且又其乐无穷的事。我了解的一些基本知识一C语言的背景就个人感触,无论学习哪门语言首先应该了解一下自己所学语言的背景,也可以说它的发展史。C语言属于高级程序语言的一种,它的前身是“ALGOL”。其创始人是布朗W卡尼汉和丹尼斯M利奇。C语言问世时是带有很大的局限性,因为它只能用于UNIX系统上。然而随着科学技术的进步,计算机工业的发展,C语言逐渐脱离UNIX。1987年美国标准化协会制定了C语言的国际标准,简称“ANSI C”,从此以后它便成为一种广泛使用的程序语言。C语言的优点很多,主要的有如下四点:1兼备高级语言与低级语言的优点,属于一种中间语言。2它是一种结构化程序设计语言,非常适合结构化程序设计。3有较丰富的数据类型、运算符以及函数供以选用。4直接与内存打交道,使修改、编辑其他程序与文档变得轻松,简单。二两大语系二种不同的学习方法其实高级程序语言分为两大语系。例如:C,C(C语言的扩展),QBASIC,VB(BASIC的可视化),JAVAs cript,Js cript ,VBs cript,JAVA,ASP,FOXPRO,PERL等等。一路是以C语言为主的程序语言,例如:JAVAs cript,JAVA等,这类语言在函数的调用,程序语句的书写,循环的控制都极为相似。另一路是以BASIC为首的程序语言,例如:FOXPRO,VBs cript等,此类语言同样具有相似的函数调用,程序语句书写以及循环控制,但与C语言是不同的。因此,那么在学习C语言前最好是先洗洗脑,千万不要把学习BASIC的方法以及思路用在C身上。一输入输出C语言的输入输出是非常严格的,或许在其他程序语言中我们可以不关心这个问题,但在C语言中,我们必须要彻底了解它1二维浮点数数组的输入二维浮点数数组的输入(即:通过键盘给二维浮点数数组赋值)在很多专业书中都没有详细讲过这个问题。在给二维浮点数数组赋值时一定要先声明一个变量,接着把数值赋予这个变量,最后把变量数值赋予二维浮点数数组赋值。2注意输出格式中“”后的字符C语言的输出说复杂不复杂,因为常用的都很简单。可说不复杂也未必,记得同学说过 “如果C语言要考得很难的话,根本不用考什么指针,只要专考输出格式,我想百分之九十九的学生都不及格。”当时我们无不认同。从这则事例中可以看出C语言的输出格式之复杂程度。因此大家在学习它时千万要学会辨别输出格式中“”后的字符,每个字符都有其意义,也都有其作用二优先级说到优先级,有很多同学都不是很了解或说很模糊,也就是 C程序在运行时也象排队坐车一样,首先照顾那些优先级高的运算符,在一个C语言表达式中,给出好多运算符,这时候要进行运算就必须考虑运算符的优先级,只能说是在大多数情况下,有些运算符的优先级有其自己的特点,因此这点要注意。例如条件表达式:条件?结果1:结果2,这种表达式很多同学都知道,它的作用与IFELSE条件判断语句很雷同,它运算时的优先级就不是按照C语言的规则来完成的。所以说对于优先级,一定灵活掌握,不要死记硬背。 三指针就个人认为,C语言中的指针是最有特色的,当然也是最难学的。指针说穿了,其实是变量的一种表现形式,只不过这种变量记载的不是数值而是地址。就像一个人可以用姓名来表示自己,也可以用身份证号码来表示自己一样。在这一学期的学习中,曾经询问过很多网友学习指针的方法。就我个人而言,学习指针最好是先学些计算机硬件工作的原理,例如:直接寻址,间接寻址等,只有了解了这些内容以后,你再学指针就比较容易理会,毕竟C语言是一门介于机器语言与高级语言中间的语言,没有一些硬件工作知识是很难领悟它的真谛的。然而事事并非绝对,如果你没有这些知识也不要紧,只要清楚知道,我总结的以下二点再加上多练习便可:1指针是地址变量:它的值有两种:其一是地址,其二是内容。不同的表达方式可以取不同的值,这有点像一个家庭地址在不同的场合标识的人物也不同。例如:父母亲在他们的单位所登记的家庭地址就代表他们自己,而你在学校中登记的同样的家庭地址就代表你自己。2指针是可以运算的,它的运算法则与变量是一致的。另外,在编写一个程序时,除非万不得已,一般不要使用指针变量。因为指针是比较复杂的,用不好就“死机”。所以建议同学对于指针只要能看懂就行,待熟练掌握之后就可以大展身手了。四函数虽说很多程序语言都有函数这一内容,但我觉得C语言的函数是最有魅力的。如果你能完全掌握C语言的函数,那么学习C就不成问题了(C是一门建立在C语言上,但又不同于C语言的高级程序语言,它增添了很多函数。)。学习函数的方法是比较简单的,只有两个字“牢记”,即:牢记函数的功能,牢记函数的用途以及如何输入输出。有些同学认为,程序语言中的函数没有多大用处,其实这并不正确,函数从本质上讲是一段通用程序,用它可以帮助我们节约很多编程的时间,一个聪明的编程者在编写程序前往往总是先找自己所编写的程序中有多少是可以用函数来代替的。用C语言中的strcmp()函数只要一句话,而自己编写的话30句话都摆不平,可想而知函数是多么实用呀!因此,要真正学好C语言,还得下苦功!我写学生管理系统实训论文主要是因为进入大学的学生日益增多,事务繁琐,难于管理。为此,编此程序为了管理学生的日常事务下面是宏定义:#include stdio.h /*I/O函数*/#include stdlib.h /*其它说明*/#include string.h /*字符串函数*/#include conio.h /*屏幕操作函数*/#include mem.h /*内存操作函数*/#include ctype.h /*字符操作函数*/#include alloc.h /*动态地址分配函数*/这里定义了一结构体变量:成员有:mingci,xuehao,scorce,struct scoreint mingci;定义一个整型变量mingcichar xuehao8;定义一个8个存储单元的字符型数组名为xuehaochar mingzi20;定义一个20个存储单元的字符型数组名为mingcifloat score6;定义一个6个存储单元的单精度型数组名为scorcedata,info1000;1000个学生的信息int i,j,k=0; 定义i,j,k循环变量:char temp20,ch;定义一个20个存储单元的数组名为temp和一字符变量定义文件指针变量:FILE *fp,*fp1;文件存储下面是程序:void shuru()if(fp=fopen(s_score.txt,ab+)=NULL)成绩为空文件无法打开 printf(cannot open this file.n); getch();exit(0);for(i=0;i=1000;i+)循环输入学号,名字,各科成绩语文,数学,英语,物理,化学 printf(nPlease shuru xuehao:); gets(data.xuehao); printf(Please shuru mingzi:); gets(data.mingzi); printf(Please shuru yuwen score:); gets(temp);data.score0=atof(temp); printf(Please shuru shuxue score:); gets(temp);data.score1=atof(temp); printf(Please input yingyu score:); gets(temp);data.score2=atof(temp); printf(Please shuru wuli score:); gets(temp);data.score3=atof(temp); printf(Please shur huaxue score:); gets(temp);data.score4=atof(temp); data.score5=data.score0+data.score1+data.score2+data.score3+data.score4;求学生的各科总成绩 fwrite(&data,sizeof(data),1,fp);存入到文件当中 printf(another?y/n);输入一个成绩后提示还有吗? ch=getch(); if(ch=n|ch=N)判断如果你输入的是n或 N就退出 break; fclose(fp);void xianshi()float s;定义一个单精度型变量sint n;定义一个整型变量n if(fp=fopen(s_score.txt,rb+)=NULL)如果某科成绩为空文件无法打 printf(Cannot reading this file.n); exit(0); for(i=0;i=1000;i+)for循环下面打括号里的语句 if(fread(&infoi,sizeof(infoi),1,fp)!=1)判断 break; printf(nxuehao mingzi yuwen shuxue yingyu wuli huauxue zhongfenn);依次输出学号 名字 语文 数学 英语 物理 化学 总分 for(j=0,k=1;jshuru 2xiugai * n); printf(* 3shanchu 4chazhao * n); printf(* 5xianshi 6exit * n); printf(* * n); printf(* - * n); printf( Please input which you want(1-6):); ch=getch(); switch(ch) case 1:shuru();break; case 2:xiugai(); break; case 3:shanchu(); break; case 4:chazhao(); break; case 5:xianshi(); break; case 6:exit(0); default: continue; 实训成果通过这次实训我基本掌握了TC集成环境的使用方法。认真编写实训总结,描述实训操作和心得体会,总结在这次实训中的知识收获,作出自我评价。熟练掌握并应用TC程序设计的各个知识点。掌握结构体和指针的联合使用,认真编写了实训日志和实训体会。并通过各种途径查找所需资料,拓宽视野,培养自学能力。实训心得在短短两周的实习期间使我获取了不少新知识也巩固了许多老知识。实训编程的同时暴露出了许多我自身存在的问题,同时也对自身有了很大的提高,我体会到了老师和同学们的热心帮助,无论面对学习中多大的困难,同学们都会帮助我,老师也会帮助我,大家就像兄弟姐妹一样。 首先,在计算机机房里同学们积极的对C语言进行巩固与实习,老师热心的讲解同学们提出的问题和实习过程中应该注意的事项。然后我不会的地方就去问学习比较好一些的同学,或者去问老师,老师和同学们总是那么的热心,只要我还不明白,不论问多少次
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论