好文档 - 专业文书写作范文服务资料分享网站

大数据结构基础 学生成绩管理系统 c语言

天下 分享 时间: 加入收藏 我要投稿 点赞

7 总结 在本次课程设计期间,我遇到了一些难点,开始的时候,代码中有许多的错误,特别是有一些调试方面的错误让我束手无策,随后的编程中又遇到了一些未知错误,只能一句一句去编译调试,遇到一些算法上的难题,就得去翻阅其它资料,书本看了一遍又一遍,算法推演了一遍又一遍,但付出总有收获的,经过几天的坚持不懈,程序编写成功,然后经过不断地优化排版,最终程序完美出炉,也达到了我心目中的目标。 通过这段时间的课程设计,不仅使我对线性表的链式储存有了更深的认识和理解,也使我更加明白线性表的链式储存在信息技术中的重要性和地位。许多的错误让我明白了一个道理---毅力和信心对成功是非常重要的。同时,对于编程者而言,思路清晰是相当重要的。在适当的时候和同学一起交流探讨是一个十分好的学习机会。请教老师也很重要,因为毕竟我们是新手,对于某些问题很难弄清楚。而且,某些错误对于我们来说有时候想半天都弄不来,但老师几下下就搞好了,这样就更加有效地节约了时间。同时,这次课程设计还让我学会了如何系统、正规的做一份课程设计报告,明白了做事情只有认真,才能真正做得更好! 8 参考文献 [1] 王舜燕/李民主编. C编程方法学.—武汉:武汉理工大学出版社,2013.9. [2] 严蔚敏/吴伟民. 数据结构.—北京:清华大学出版社,2007. [3] (美)Dawn Griffiths 著/程亦超 译. 嗨翻C语言.—北京:人民邮电出版社,2013.9 [4] http://c.biancheng.net/cpp/html/162.html [5] 赵端阳/左伍衡编著. 算法分析与设计.—北京:清华大学出版社,2012.3 9附录 16 代码 #include #include #include #include #include #define STUDENT 2 typedef struct student //建立学生类 { char num[20]; //学号 char name[20]; //姓名 int math; //数分 int English; //英语 int Data; //数据结构 struct student *next; //指针 }student; student *head=NULL; //头指针 int length; //链表的长度 void create() //建立链表,学生信息建立函数 { student *p1,*p2; length=0; int numb; //存储用户输入的学生个数 int number=0; //存储已输入的学生个数 p1=(student *)malloc(sizeof(student));//建立头结点 p1->num; if(head==NULL) head=p1; //头结点地址赋于头指针 printf(\请先输入学生的个数:\保存要输入的学生个数,用于后面循环输入信息 scanf(\ Sleep(666); system(\清屏 printf(\输入学号、姓名、数分、英语、数据结构:\\n\ while(numbernum==0) { printf(\信息输入成功!\\n\ break; 17 } length++; //链表的长度 p1->next=p2; p2->next=NULL; //结点相继后移 p1=p1->next; number++; //记录已输入的学生个数 } printf(\信息输入成功!\\n\返回成功 system(\ system(\ return; } void display() //显示函数,显示用户输入的学生信息 { student *p=head->next; printf(\所有的学生信息如下:\\n\ printf(\ printf(\学号 姓名 数分 英语 数据结构 \\n\ while(p!=NULL) { printf(\a); p=p->next; } printf(\ system(\ system(\ return; } void search1() //按学号查找 { char xh[20]; //保存用户输入的学号,用于后续比较查找 student *p=head->next; printf(\请输入学号\ scanf(\ while(p!=NULL) { if(strcmp(p->num,xh)==0) //查找成功,显示查找信息 { printf(\ printf(\学号 姓名 数分 英语 数据结构 \\n\ 18 printf(\a); printf(\ return; } p=p->next; } if(p==NULL) //链表遍历完成,返回查找信息 printf(\查无此人\\n\ system(\ system(\} void search2() //按学号查找 { char mz[20]; //保存用户输入的名字,用于后续比较查找 student *p=head->next; printf(\请输入名字\ scanf(\ while(p!=NULL) { if(strcmp(p->name,mz)==0) //查找成功,显示查找信息 { printf(\ printf(\学号 姓名 数分 英语 数据结构 \\n\ printf(\a); printf(\ return; } p=p->next; } if(p==NULL) //链表遍历完成,返回查找信息 printf(\查无此人\\n\ system(\ system(\} void insert() //尾插法插入学生信息 { int i; student *p,*q; p=head; printf(\请输入你要插入的学生的学号、姓名、数分、英语、数据结构:\\n\ q=(student *)malloc(sizeof(student)); //建立新的结点 19 scanf(\ while(p!=NULL) { if(strcmp(p->num,q->num)==0) //判断链表中是否已有该学号 { printf(\该学号已经存在,无法插入!\\n\ system(\ system(\ return; } //若链表中已有该学号,则返回 p=p->next;} p=head; for(i=0;inext; q->next=p->next; p->next=q; length++; //插入后链表长度增加 printf(\插入成功!\\n\返回成功 system(\ system(\ return; } void Delete() //按输入的学号删除信息 { char b[20]; //用于保存用户输入的要删除学生的学号,用于比较 student *p,*q; q=head,p=head->next; printf(\请输入要删除的学生的学号:\\n\ while(p!=NULL) { if(strcmp(p->num,b)==0) //判断相同则删除 { q->next=p->next; //删除指定结点 free(p); //结点释放 length--; printf(\删除成功!\\n\ return; //删除成功后返回 } p=p->next; //指针后移 q=q->next; } if(p==NULL) //遍历完成,未找到信息 { printf(\找不到要删除的学号!\\n\ //return; 20

大数据结构基础 学生成绩管理系统 c语言

7总结在本次课程设计期间,我遇到了一些难点,开始的时候,代码中有许多的错误,特别是有一些调试方面的错误让我束手无策,随后的编程中又遇到了一些未知错误,只能一句一句去编译调试,遇到一些算法上的难题,就得去翻阅其它资料,书本看了一遍又一遍,算法推演了一遍又一遍,但付出总有收获的,经过几天的坚持不懈,程序编写成功,然后经过不断地优化排版,最终程序完美出炉,也达到了我心目中的目标。通过这段
推荐度:
点击下载文档文档为doc格式
9lsxg688y94ncj33s2bw8iiwn479cv018dp
领取福利

微信扫码领取福利

微信扫码分享