ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:97.96KB ,
资源ID:17240818      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17240818.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言程序设计综合实习分析报告文档格式.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言程序设计综合实习分析报告文档格式.docx

1、 for(i=0;inum,&grade);voidprintout(structstudent*p) printf(第%-2d个学生的成绩为:%dn,i+1,p-voidarrow(int*p1,int*p2,int*px,int*py)intt,m;t=*px;*px=*py;*py=t; m=*p1;*p1=*p2;*p2=m;voidplace(structstudentstu)inti,j;for(i=1;i+) for(j=0;j10-i;j+)if(stuj.gradegradem; num=0; for(q=0;qgradema) a=(p+q)- num=q; returnn

2、um;inthanshu_average(structstudent*p)inti,m,index; for(m=0;maverage=0; for(i=0;3; p-average=p-average+p-gradei; p-average*3;a=p-average; if(p-average a=p-index=m;else index=0; returnindex;voidhanshu_place(structstudentstu)structstudentt; for(j=i; if(stuj+1.averagestui.average) t=stuj+1;stuj+1=stui;s

3、tui=t;voidmain() structstudentstu10,*ptr; inti,j,index,m,num; floataverage; ptr=stu;请输入第%d个学生的学号、姓名及三科成绩: scanf(%ld%sstui.number,stui.name); for(j=0; scanf(%fstui.gradej);printf(m+) num=hanshu_best(ptr,m);学号%ld姓名:%-10s最高分%n,stunum.number,stunum.name,stunum.gradem); index=hanshu_average(ptr);n三门课平均分最

4、高的学生信息是:%-10s平均分%n,stuindex.number,stuindex.name,stuindex.average);n10个学生由高分到低分排名为:numbernameMathChineseEnglishaveragen hanshu_place(ptr);%-10ld%-10s%,stui.number,stui.name); for(j=0; printf(%,stui.gradej);%n,stui.average);主要考察的是结构体指针的运用,比较难的地方也就是如何将指针指向结构体并返回我们所要的数值先定义一个结构体数组,再定义一个结构体指针,令指针指向数组的首地址

5、,在自定义函数中通过指针的运算实现数组的运算,并返回相应的值在输出我们所需要的数据时候可以通过一些小技巧使程序看起来更好看。掌握结构体指针的技巧可以解决很多问题,使自己的程序具有解决多个复杂问题的能力,以后多练习此类的程序设计问题,使自己更加熟练课题三:学生成绩文件管理1掌握文件指针的概念和运用2掌握文件的相关操作:打开、读、写、关闭3掌握文件的定位操作2从键盘输入10个学生的以上内容,存入文件,关闭文件3打开文件,将数据读出,查看是否正确写入,关闭文件。4打开文件文件,读出数据,将10个学生按照平均分数从高到低进行排序,分别将结果输出到屏幕上和另一文件中。5在实习报告中画出程序流程图,说明程

6、序设计的算法,附主要程序段及运行结果(屏幕截图)。6在实习报告中说明知识点。7在实习报告中说明程序设计过程中的难点、解决办法及编程小结或体会。首先创建一个可读可写的新文件,键入十个学生的信息并储存在文件中,关闭程序;打开文件,读出文件中的信息并输出,检查有无错漏,并按照平均分通过选择排序法对学生由高到低排序,关闭程序;将排好序的信息输出并存储在新的可写文件中 longnum; intgrade3;FILE*fp,*fpp;structstudentstu10,t; floataverage100; inti=0,j; if(fp=fopen(,w+)=NULL)该文件打开失败! exit(0)

7、;第%-2d个学生的学号、姓名及三门课成绩:stui.num,stui.name); fprintf(fp,%ld%-5s,stui.num,stui.name); scanf(%d fprintf(fp, if(fclose(fp)该文件无法正常关闭!r+第%d个学生的学号、姓名及三门课成绩: fscanf(fp, fscanf(fp, if(fclose(fp)if(fp=fopen( fscanf(fp, fscanf(fp, for(j=0; averagei=averagei+stui.gradej; averagei=averagei*3; if(averagej+1average

8、i) if(fpp=fopen(n由高到低排序为: fprintf(fpp, fprintf(fpp, fprintf(fpp,主要考察对于文件信息的存储以及读取文件内的信息,难点在于如何将信息存储起来以及如何从文件中读取有效信息并显示在调式框中首先定义一个指针指向文件,然后创建或是打开一个的文件,注意文件的类型和打开方式,如果是写入信息则用fprintf,如果是读取信息则是fscanf,注意写入和读取的书写格式,前面许注明指向该文件的指针通过文件的学习,以后调试程序后还可以将信息永久的保存起来随时使用或更改,不需要使用一次就输入一次,方便又省时间,课题四:链表的创建与使用1掌握单向链表的概念

9、2掌握单向链表的创建、查找、删除方法1创建一个单向链表,存放10个学生的学号,姓名,并输出这种10个学生的信息。2在链表中查找指定学号的学生,输出其姓名。3在链表中删除指定学号的学生,然后输出其余学生的信息。4在实习报告中画出程序流程图,说明程序设计的算法,附主要程序段及运行结果(屏幕截图)。5在实习报告中说明知识点。6在实习报告中说明程序设计过程中的难点、解决办法及编程小结或体会。用指针处理单向链表,定义一个头指针,尾指针,通过尾指针的移动实现数据信息的存储与读取;删除结点时,应该先将要删除结点前后的结点连上,然后再将其删除,保证链表不会“断”。#definelensizeof(struct

10、student)structstudent*next;voidsearch(structstudent*head)longnumber; structstudent*p; p=head;请输入要查找的学生学号:%ldnumber); do if(p-num=number)%-15sn,p-name);p=p-next;while(p!=NULL);voidcdelete(structstudent*q)structstudent*p1,*p2;longcount;请输入你要删除的学生学号:count); p1=q; while(count!=p1-num&p1-next!=NULL) p2=p

11、1;p1=p1- if(count=p1-num) if(p1=q) q=p1- else p2-next=p1-delete:%ldn,p1-num);structstudent*head,*tail,*p,*p1,*p2,*q;intn=0,i; longnumber,NUM;请输入%d个学生的信息:,N);p=tail=(structstudent*)malloc(len); head=NULL;num,p- while(p-num!=0) n+=1; if(n=1) head=p; tail-next=p; tail=p; p=(structstudent*)malloc(len); tail-next=NULL;n这10个学生的信息为:p=head; if(head! do printf(%-15ld%-15snsearch(head);q=head; cdelete(q);,q-num,q-q=q-while(q!主要考察利用指针制作单向链表,难点在于各个结点的链接以及对于链表的输出,删除结点时如何不让链表断开定义一个头指针和一个尾指针,通过尾指针的移动实现结点的链接,删除结点时先将要删除结点两端的结点链接上,再删除。制作单向链表是对指针的充分运用,可以节省内存,但是要熟练掌握还是有

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1