C语言实训报告-学生成绩管理系统(3)

2019-04-02 21:38

1052400101 周谒真 C语言实训报告 电子信息科学与技术一班

if(strcmp(q->studentNumber,p->studentNumber)<0) {

strcpy(exchange.studentNumber,q->studentNumber); strcpy(exchange.studentName,q->studentName); strcpy(q->studentNumber,p->studentNumber); strcpy(q->studentName,p->studentName);

strcpy(p->studentNumber,exchange.studentNumber); strcpy(p->studentName,exchange.studentName); exchange.mark1=q->mark1; exchange.mark2=q->mark2; exchange.mark3=q->mark3; q->mark1=p->mark1; q->mark2=p->mark2; q->mark3=p->mark3;

p->mark1=exchange.mark1; p->mark2=exchange.mark2; p->mark3=exchange.mark3; }

q=q->next; }

r=r->next; }

OutputInformation(); }

/************************************* 函数功能:输出信息

*************************************/ void OutputInformation() {

STUDENT *p;

p=headLink->next;//使p指向headLink->next if(p==NULL)//如果p指向空地址说明没有学生信息 {

printf(\现在没有学生信息,请先输入学生信息\\n\\n\ }

printf(\学号\\t姓名\\t英语\\t数学\\t计算机\\t总成绩\\t平均成绩 \\n \\n\

while(p)//当p指向地址存在则调用DesplayOneNode()函数进行输出操作 {

DesplayOneNode(p);

p=p->next;//指向下一名学生

}

}

/*************************************

11

1052400101 周谒真 C语言实训报告 电子信息科学与技术一班

函数功能:计算平均分的菜单

*************************************/ void CompositorMenu() {

printf(\输入学生的学号统计该生的总分及平均分\\n\\n\ printf(\输入课程求该门课程的总平均分\\n\\n\ int c;

scanf(\ if(c==1) {

CompositorBystudentNumber();//调用CompositorBystudentNumber()函数 }

else if(c==2) {

CompositorBystudentClass();//调用CompositorBystudentClass()函数 } }

/************************************* 函数功能:根据用户输入的科目计算平均分 *************************************/ void CompositorBystudentClass() {

float k=0; STUDENT *q;

q=headLink->next;

if(q==NULL)//如果p指向空地址说明没有学生信息 {

printf(\现在还没有学生信息,请先输入学生信息\\n\ }

int i;

float s=0;

printf(\请输入课程求该门课程的总平均分\\n\ printf(\英语\\n\ printf(\数学\\n\ printf(\计算机\\n\ scanf(\ if(i==1) {

while(q)//把第一门课的所有人的成绩相加除以总人数,下面以此类推 {

k=k+q->mark1; q=q->next;

12

1052400101 周谒真 C语言实训报告 电子信息科学与技术一班

s++; }

printf(\英语平均分:%f\ }

else if(i==2) {

k=0; s=0;

while(q) {

k=k+q->mark2; q=q->next; s++; }

printf(\数学平均分:%f\ }

else if(i==3) {

k=0; s=0;

while(q) {

k=k+q->mark3; q=q->next; s++; }

printf(\计算机平均分:%f\ } }

void Exit() {

printf(\欢迎使用本系统,按任意键退出。。。\ getch(); exit(0); }

7.测试结果

报错

先录入三个学生的信息

13

1052400101 周谒真 C语言实训报告 电子信息科学与技术一班

按学号排序并输出

按学号查询某学生信息

删除某学生信息

输出删除后的学生信息

调用统计功能,获得班级单科平均分

14

1052400101 周谒真 C语言实训报告 电子信息科学与技术一班

完成信息管理,选择6退出系统

测试结果显示程序各部分功能均得以完整实现,输入提示清晰,操作简单出错也有完整的提示(未录入学生信息),程序运行可按需重复使用,程序健壮性强

8. 课程设计中存在的问题

界面设计过于简单,不够美观,人性化。该程序只执行简单的录入,查找,删除,统计功能,并未对操作人员身份进行区分,存在一定安全问题。

9. 在设计实践过程中的自我感受]

这次程序设计加深了我对课堂讲授内容的理解,课堂上讲授的许多关于c语言的语法规则,听起来十分枯燥无味,也不容易记住,然而程序设计的过程有要求使用c语言这个工具解决实际问题,必须要掌握。通过程序的编写,让我对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c语言的语法规定。对于一些内容自己认为在课堂上听懂了,但编程中会发现原来理解的偏差,这是由于大部分学生是初次接触程序设计,缺乏程序设计的实践所致。

学习c语言不能停留在学习它的语法规则,而是利用学到的知识编写c语言程序,解决实际问题。即把c语言作为工具,描述解决实际问题的步骤,由计算机帮助我们解题。只有通过上机编程才能检验自己是否掌握c语言、自己编写的程序是否能够正确地解题。

通过上机编程来验证自己编制的程序是否正确,恐怕是大多数同学在完成老师作业时的心态。但是在程序设计领域里这是一定要克服的传统的、错误的想法。因为在这种思想支配下,可能你会想办法去\掩盖\程序中的错误,而不是尽可能

15


C语言实训报告-学生成绩管理系统(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2015南昌教师招聘笔试成绩查询入口

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: