高级语言程序设计报告学生信息管理程序.doc

上传人:仙人指路1688 文档编号:2386216 上传时间:2023-02-17 格式:DOC 页数:13 大小:107KB
返回 下载 相关 举报
高级语言程序设计报告学生信息管理程序.doc_第1页
第1页 / 共13页
高级语言程序设计报告学生信息管理程序.doc_第2页
第2页 / 共13页
高级语言程序设计报告学生信息管理程序.doc_第3页
第3页 / 共13页
高级语言程序设计报告学生信息管理程序.doc_第4页
第4页 / 共13页
高级语言程序设计报告学生信息管理程序.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《高级语言程序设计报告学生信息管理程序.doc》由会员分享,可在线阅读,更多相关《高级语言程序设计报告学生信息管理程序.doc(13页珍藏版)》请在三一办公上搜索。

1、高级语言程序设计课程设计报告学生信息管理程序 目 录 1. 程序目标及功能P22. 程序功能模块组成及流程图P23. 程序主要数据结构及函数列表P34. 程序代码及运行结果P45. 总结与体会P101. 程序目标及功能 程序目标:管理班级电话簿 程序功能:程序实现了班级电话簿的创建,而且电话簿的内容显示出来;还可以通过输入学生的姓名,使用电话簿查询该学生的电话号码;此外,电话簿能通过追加结点来追加学生电话号码,扩充了班级电话簿的内容;使用程序结束可以退出程序。程序主要使用函数来实现动态链表的建立,动态链表的输出功能。初次使用本程序时,首先进入程序主界面,然后输入功能号码,通过功能号程序能进入用

2、户要选择的功能模块,最终能顺利的实现以上所有的功能。2.程序功能模块组成及流程图程序功能模块组成表:程序功能模块组成1创建班级电话簿2显示电话簿内容 3添加电话簿内容4查询电话号码 5退出程序程序流程图:2.程序主要数据结构及函数列表程序主要数据结构:Int l选择程序的功能号Int y学生人数或结点的个数Struct student h要查询的姓名变量Struct student*head链表中的头指针函数列表:Void printf_lyh1功能模块选择Void print_lyh2输出电话簿内容Void printf_lyh3退出程序Struct student*create_lyh创建

3、电话簿Void plus_lyh追加学生号码Void search_lyh查询学生号码Void main主函数4.程序代码及运行结果#include#include#include#include#define LYH sizeof(struct student)/*定义结构体的大小*/struct student/*声明结构体*/char name10;char tel20;struct student*next;void print_lyh1()/*进入功能模块选择的函数*/ printf( 请选择功能: n); printf( n); printf( | 1.创建班级电话簿 |n); p

4、rintf( | 2.显示电话簿内容 |n); printf( | 3.添加电话簿内容 |n); printf( | 4.查询电话号码 |n); printf( | 5.退出程序 |n); printf( n); printf( 你要选择的功能是:);struct student*create_lyh(int n)int i;struct student *temp,*p,*head;head=temp=p=(struct student*)malloc(LYH);printf( 请输入班级学生的姓名和号码:n);printf( );scanf(%s%s,p-name,p-tel);for(i

5、=1;iname,p-tel);temp-next=p;temp=p;p-next=NULL;return head;void print_lyh2(struct student *head)struct student *p;p=head;while(p!=NULL)printf( %s %sn,p-name,p-tel);p=p-next;void plus_lyh(struct student *head)struct student*p,*temp;p=head;while(p-next!=NULL)p=p-next;temp=p;p=(struct student*)malloc(L

6、YH); printf( 请输入班级学生的姓名和号码:n);printf( );scanf(%s%s,p-name,p-tel);temp-next=p;p-next=NULL;void search_lyh(struct student*head,struct student h )struct student*p;p=head;while(p!=NULL)if(!strcmp(p-name,h.name)printf( %s %sn,p-name,p-tel);p=p-next;void print_lyh3()printf(n 谢谢使用本程序 n);printf( -n);printf(

7、 | |n);printf( | Good Bye! |n);printf( | |n);printf( -n);printf( );void main() printf( 班级电话簿管理程序);printf(nn);printf( No:20100507104 Name:陆艳华 Class:10网单n);printf(n);print_lyh1();int l,y;struct student*head;struct student h;scanf(%d,&l);if(l=1)printf(n 请输入要创建的人数:);scanf(%d,&l);printf(n);head=create_ly

8、h(l); printf(n);print_lyh1();scanf(%d,&l);if(l=2)print_lyh2(head);printf(n);print_lyh1(); scanf(%d,&l);if(l=3) plus_lyh(head); y+;printf(n); print_lyh1();scanf(%d,&l);if(l=4)printf( 请输入学生的姓名:);scanf(%s,&h.name);search_lyh(head,h); printf(n);print_lyh1();scanf(%d,&l);if(l=5)print_lyh3(); 运行结果为:功能1运行结

9、果:功能2运行结果:功能3运行结果:功能4运行结果:功能5运行结果:5.总结与体会 本次C语言课程设计使我受益匪浅,经过这几天的程序设计,我不仅重新温习了C语言的内容,而且还掌握了更多的C语言编译技巧。例如,在创建动态链表时,由于要创建很多的结点,为了确保下一个结点的地址放到前一结点的成员next中,可以多定义一个临时指针变量temp,再使用循环开辟更多的结点;在追加结点时,先通过循环,然后在链表的结尾开辟一个新单元即新结点;在保存文件时也可以使用指针向磁盘写入一个二进制文件。除此之外,在这次的课程设计中,虽然我遇到了许多的问题,但是凭借着老师和同学们的帮助,我一次又一次成功的解决了难题,最终完成了本次的C语言课程设计,在此我要深深的感谢你们!指导教师签字: 年 月 日

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号