《2022年程序设计实验心得 .pdf》由会员分享,可在线阅读,更多相关《2022年程序设计实验心得 .pdf(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、编程的心得体会作业要求:考试总分排序。(1) 从文件( .txt)读入你班10 个学生的有关信息:学号(int ),姓名(字符数组),三门课成绩(int数组)。要求用结构体数组存放学生信息。(2) 求各个学生的总成绩。(3)按总分成绩从高到低的顺序将学生的各信息(学号、姓名、三门课成绩、总成绩)输出到另一文件(.txt)中保存。开始以读方式打开chengji.txt 文件从 chengji.txt 文件中读取10 个学生的有关信息求各个个学生的总成绩i=0 j=i+1 i10 j10 sti.totalstj.total y n y n 名师资料总结 - - -精品资料欢迎下载 - - - -
2、 - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 5 页 - - - - - - - - - t=sti sti=stj stj=t 关闭 chengji.txt 文件以读方式打开chengjic.txt 文件i=0 i=9 输出一个学生的成绩关闭 chengjic.txt 文件结束y n 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 5 页 - - - - - - - - - 作业目的:主要考察我们对结
3、构体的认识,数组的掌握,文件操作的掌握。本程序涉及定义一个结构体,字符数组,int数组,冒泡法排序,文本文件的读入,创建,输出。#include #include struct student int id; char name20; int score3; int total; st10,t; /结构体变量的定义 main() FILE *fp; int i=0,j; fp=fopen(“ d:chengji.txt”, ”r ”);/文本文件的打开 if(fp=NULL) printf(“ file open error!n”); exit(0); else printf(“file op
4、en ok!n”); /文本文件是否正确打开的判断 while(!feof(fp) fscanf(fp,”%d %s %d %d %d”,&sti.id,sti.name,&sti.score0,&sti.score1,&sti.score2); sti.total=sti.score0+sti.score1+sti.score2; i+; /从文本文件读取10 个学生的成绩并计算总成绩 for(i=0;i10;i+) for(j=i+1;j10;j+) if(sti.totalstj.total) t=sti; sti=stj; stj=t; /冒泡法排序10 个学生的成绩名师资料总结 -
5、- -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 5 页 - - - - - - - - - fclose(fp); /关闭文本文件 fp=fopen(“ d:chengjic.txt”, ” w”); if(fp=NULL) printf(“ file open error!n”); exit(0); else printf(“file open ok!n”); /打开输入的文本文件 fprintf(fp,”学号姓名成绩 1 成绩 2 成绩 3 总成绩 n”); for(i=0;i=9;i
6、+) fprintf(fp,”%-6d %-8s %-4d %-4d %-4d %-4dn”,sti.id,sti.name,sti.score0,sti.score1,sti.score2,sti.total); /数据输出 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 5 页 - - - - - - - - - 不同之处:我认为我的程序与一般的程序没有太多想法不同的地方。若要说的话就是在读取数据时,在打开文本文件时,先判断文本文件能否正确打开。同时算出学生的总成绩,
7、没有另外用一个循环来算总成绩。输出信息到文本文件时,用了一个表头,下方的数据设置与表头对齐。改进之处 : 还需改进之处就是文本文件的打开位置与文件名能由用户来决定。排序方法还可以继续改进,现在的冒泡法需要很繁琐的运行,若数据较多时,运算时间就会很长。可以用一些高级的排序方法,来减短时间。心得体会:在编程的时候还犯了一些错误。比方说字符数组与整型数组在赋值时,老是在字符数组与整型数组前,哪个该加地址符搞混淆。有时候在行尾,忘记加分号。在写文件操作时,有时会忘记一些指令。一些指令会打错。有时会忘记数组是从0 开始的。编程并不需要去死记硬背一些指令,而是去理解。学习一年的编程,会发现C 语言还是有规
8、律可循的,一些指令在理解的基础上去编,会发现很简单。我感觉编程是一个需要耐心的工作,你在编程的过程会遇到各种各样的困难,如果你没有耐心,你就很容易打退堂鼓,那你做不好编程这件事。你要有耐心,知道有错误后,就得从头到尾反复地看,去发现错误。所以编程是一个培养一个人耐心的过程。编程也是一个让人变得更严谨的过程,使人的思维更加缜密。因为你必须毫无差错地发一个指令,计算机才会去执行。你必须一步一步,稳打稳扎地去做,不得有半点马虎,也不能偷工减料。编程也会激发人的思维,使人的思维更加活跃。你必须自己想算法去做,久而久之,会发现很有创造性。有人会说,编程是一个枯燥乏味的过程,但我不完全赞同,编程的过程是一个创造的过程,当你编完后,再运行成功了,你会感觉非常的快乐,特别有成就感。经过一年的学习,我发现学习C语言,让我学会和懂得了很多。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 5 页 - - - - - - - - -