第一范文网 - 专业文章范例文档资料分享平台

C语言学生成绩管理系统课程设计报告 - 图文 

来源:用户分享 时间:2025/8/26 0:50:10 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

.

ll=(Node*)malloc(sizeof(Node)); /*用于创建新的节点*/ if(!ll) {

printf(\分配存失败 \如没有申请到,打印提示信息*/ return ; /*返回主界面*/ }

ll->next=NULL; system(\

Disp(l); /*显示排序前的所有学生记录*/ p=l->next;

while(p) /*p!=NULL*/ {

s=(Node*)malloc(sizeof(Node)); /*新建节点用于保存从原链表中取出的节点信息*/

if(!s) /*s==NULL*/ {

printf(\分配存失败 \如没有申请到,打印提示信息*/ return ; /*返回主界面*/ }

s->data=p->data; /*填数据域*/ s->next=NULL; /*指针域为空*/

.

.

rr=ll;

/*rr链表于存储插入单个节点后保持排序的链表,ll是这个链表的头指针,每次从头开始查找插入位置*/

while(rr->next!=NULL && rr->next->data.total>=p->data.total) {rr=rr->next;} /*指针移至总分比p所指的节点的总分小的节点位置*/ if(rr->next==NULL)/*若新链表ll中的所有节点的总分值都比p->data.total大时,就将p所指节点加入链表尾部*/ rr->next=s;

else /*否则将该节点插入至第一个总分字段比它小的节点的前面*/ {

s->next=rr->next; rr->next=s; }

p=p->next; /*原链表中的指针下移一个节点*/ }

l->next=ll->next; /*ll中存储是的已排序的链表的头指针*/

p=l->next; /*已排好序的头指针赋给p,准备填写名次*/ while(p!=NULL) /*当p不为空时,进行下列操作*/ {

i++; /*结点序号*/

.

.

p->data.mingci=i; /*将名次赋值*/ p=p->next; /*指针后移*/ } Disp(l); saveflag=1;

printf(\ =====>排序完成!\\n\ }

/*数据存盘,若用户没有专门进行此操作且对数据有修改,在退出系统时,示用户存盘*/ void Save(Link l) { FILE* fp; Node *p; int count=0;

fp=fopen(\以只写方式打开二进制文件*/ if(fp==NULL) /*打开文件失败*/ {

printf(\打开文件错误!\\n\ getchar();

.

会提 .

return ; }

p=l->next; while(p) {

if(fwrite(p,sizeof(Node),1,fp)==1)/*每次写一条记录或一个节点信息至文件*/ {

p=p->next; count++; } else { break; } }

if(count>0) {

getchar();

printf(\保存文件完成,保存的记录总数是:%d\\n\ getchar(); saveflag=0;

.

.

} else

{system(\

printf(\当前链表是空的,没有学生记录保存!\\n\ getchar(); }

fclose(fp); /*关闭此文件*/ }

void main() {

Link l; /*定义链表*/ FILE *fp; /*文件指针*/

int select; /*保存选择结果变量*/ char ch; /*保存(y,Y,n,N)*/

int count=0; /*保存文件中的记录条数(或结点个数)*/ Node *p,*r; /*定义记录指针变量*/

l=(Node*)malloc(sizeof(Node)); if(!l)

.

C语言学生成绩管理系统课程设计报告 - 图文 .doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c2940b98f5v0h1ll01eyq0a6ri16osu014gv_10.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top