精华内容
下载资源
问答
  • 学生信息管理系统Python实现 实现以下功能: 录入学生成绩信息 查找学生成绩信息 删除学生成绩信息 修改学生成绩信息 学生成绩排序(按某科成绩或平均成绩) 学生数量 显示所有学生成绩信息 退出系统
  • JAVA学生信息管理系统实验报告.doc
  • power build学生综合管理系统实验报告,含源代码,图片说明
  • 本文为大家分享了python实现学生管理系统的具体代码,供大家参考,具体内容如下 1.0版本学生管理系统 ''' 1.添加学员 2.修改学员 3.查询学员 4.删除学员 0.退出程序 ''' student_list=[] while True: print('...
  • 学生成绩管理系统,功能分为: (1)添加功能:程序能够添加不同学生的记录,提供选择界面供用户选择所要添加的类别,要求学号要唯一,如果添加了重复学号的记录时,则提示数据添加重复并取消添加。 (2)查询功能:...
  • 此资源对应于我博客上发布的学生信息管理系统JAVA代码,我一共传了代码、MySQL数据库资源和完整的实验报告,三份可以下载下来就可以当一次很优秀的课程设计作业。
  • 软件工程实验报告_学生成绩管理系统
  • 根据系统分析阶段得到的数据流图,采用软件设计的概念和原理,以上一次参照的学生信息管理信息系统为实例,给出学生信息管理系统功能结构图
  • javawweb学生成绩管理系统实验报告,首先我做的系统是学生成绩管理系统使用jsp+javabean+servlet的传统的MVC开发模式,使用mysql数据库来存储数据。其中Jsp实现视图端,Javabean是模型端,Servlet是控制端。Servlet...
  • 软件工程_学生成绩信息管理系统实验报告.pdf
  • 学生管理系统实验报告 学 期 2018-2019 课程名称 Java 程序设计实验 实验目的 掌握JDK的安装与环境变量的配置熟练使用 EclipseWindowBulider 插件 navicat 和 MySql 熟练掌握 Java 基础语法与程序结构了解面向对象的...
  • C语言课程设计报告源码下载方式关注微信公众号 跨时代的jay回复 学生成绩管理系统为大家提供一些帮助!获取链接后复制到浏览器即可下载课题题目: 学生信息管理系统班 级: 信卓11801姓 名: 聂健班级序号: 09同组...

    C语言课程设计报告

    源码下载方式

    关注微信公众号 跨时代的jay

    回复 学生成绩管理系统

    为大家提供一些帮助!

    获取链接后复制到浏览器即可下载

    课题题目: 学生信息管理系统

    班 级: 信卓11801

    姓 名: 聂健

    班级序号: 09

    同组成员: 无

    完成时间: 2019 年 12 月 11 日

    目录

    一.题目

    二.设计目的

    三.总体设计

    四.详细设计

    五.调试与测试:

    六.课程设计心得及体会

    七.程序清单

    一.题目:学生信息管理系统

    要求:从文件中读取原始数据,并将修改后的数据保存在一个新的文件当中。

    功能:浏览所有学生的所有信息

    用姓名和学号查询学生的信息

    用姓名和学号修改学生的信息

    用姓名和学号删除学生

    统计各个课程分数段的人数

    统计总分和各个课程的最高分、最低分以及对应的姓名

    二.设计目的

    如今学校的学生越来越多,成绩管理的工作量越来越大,手工管理成绩的弊端也越来越明显。随着科学技术的不断提高,计算机科学日渐成熟,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学生档案信息进行管理,具有手工管理所无法比拟的优点。所以我想借本次课程设计之际,设计一个简易的学生成绩管理系统。

    掌握: 1.掌握动态创建链表,并实现对数据的删除,检索,修改。增强工程化意识,提高c语言实践能力。

    三.总体设计

    (1)程序源文件分为:

    1.student.h 包含所有的头文件以及定义

    2.function.cpp 实现各个函数的功能

    3.main.cpp 主函数

    4.data.txt 学生原始数据

    (2)主函数实现菜单的选择:使用swicth语句实现菜单的选择

    1.浏览学生信息

    2.查询学生信息

    3.修改学生信息

    4.删除学生信息

    5.各科成绩

    6.最高分最低分以及对应的姓名

    (3)函数包括:

    1.struct student * create() //用动态链表建立基础的学生信息库 从文件中将学生信息读取出来

    2.void sort(struct student *head) //排序

    3.void locatename(struct student *head) //通过姓名查询信息

    4.void locatenum(struct student *head) //通过学号查询信息

    5.struct student * delname(struct student *head) //通过姓名删除学生信息

    6.struct student * delnum(struct student *head) //通过学号删除学生信息

    7.void changename(struct student *head) //通过姓名去修改学生数据

    8.void changenum(struct student *head) //通过学号去修改学生数据

    9.void filein(struct student *head) //保存到文件中

    10.void print(struct student *head) //打印所有学生信息

    11.void ABCD(struct student *head) //统计各分段的人数

    12.void max(struct student * head) //总分以及各个课程的最高分,最低分以及对应的姓名

    对于创建链表和删除学生这两个函数需要返回head

    创建链表时返回head:

    其他函数中都传入了一个参数head

    那么都可以访问到链表中的所有数据

    删除学生返回head:

    当删除第一个学生时,即把头给删了

    这时需要换头 head = delname(head); head= delnum(head);

    其它函数使用void类型即可

    四.详细设计

    使用结构体链表实现上述要求,在头文件中定义结构体,分为数据域和指针域。首先创建一个动态链表,将文件中的原始数据保存在链表中,指针域将链表链接起来。

    实现整个系统:菜单调用函数

    <0> filein(head); //将修改后的信息保存在新的文件中 data11.txt

    <1> print(head); //打印所有学生的所有信息 实现菜单1的功能

    <2> locatename(head) //通过姓名查询单个学生的所有信息 实现菜单2的姓名查询功能

    locatenum(head) //通过学号查询单个学生的所有信息 实现菜单2的学号查询功能

    <3> changename(head); //通过姓名修改学生的信息 实现菜单3的姓名查询功能

    changenum(head); //通过学号修改学生的功能 实现菜单3的学号查询功能

    <4> head= delname(head); //通过姓名删除学生数据 实现菜单4的姓名删除功能

    head= delnum(head); //通过学号删除学生数据 实现菜单4的学号删除功能

    //如果删除的是头 这时头换了 p = head; head = p->next;

    <5> ABCD(head); //统计各个分数段的人数 并将运行结果写进一个新的文件 abcd.txt

    <6> max(head); //输出总分和各个课程的最高分和最低分的相关信息

    各个函数的实现过程:

    1.动态创建链表

    //动态创建链表的过程struct student *p,*q,*head;

    p = q = (struct student *)malloc(sizeof(struct student));//开辟空间head = p;

    while(p!=NULL)

    {

    q = (struct student *)malloc(sizeof(struct student));

    p->next = q;

    p = q;

    }

    p->next = NULL;return head;//在while中将数据域加入即可

    核心部分即为:链表连接过程使用while循环,使用feof判断有没有到达文件的最后一行。

    创建链表流程图

    对于从文件中读取数据,核心部分是不变的。但是需要注意的是,由于文件中第一行是字符串,所以需要使用fgets读取第一行数据。从第二行开始将数据依次保存在里链表中。

    从文件中将数据赋值给变量,使用fscanf。

    读取完毕后,fclose关闭文件。

    2.排序

    为什么要将排序单独写成一个函数?

    当老师问我这个问题时,我是这样回答的。因为在后面的功能中有删除以及修改学生的数据,我只要调用一下函数,即可实现排序的实时更新。

    使用擂台法进行排序。

    3.查询信息通过姓名

    通过学号

    姓名匹配需要调用一个函数 strcmp(A,B);

    当两字符串完全相同时,函数返回0。

    当为整形时,只许判断 if(A == B)即可。

    (查询学生信息流程图)

    4.修改学生信息

    对于修改学生数据,与查询是差不多的流程。当匹配到了学生后,重新赋值就可以了。

    scanf("%f",&p->s1);

    scanf("%f",&p->s2);

    scanf("%f",&p->s3);

    此时,重新调用一下排序函数,sort(head);即可实现数据的实时更新。

    5.删除学生

    struct student *p , *q;

    p = head;

    while( p不匹配 && p->next!=NULL)

    {

    q = p;

    p = p->next;

    }//一旦匹配,跳出whileif(匹配)

    {

    if( p == head ) //如果是头匹配 {

    head = p->next;//换头,此过程就把头也删了 }

    else

    {

    q->next = p->next;

    }

    }if(不匹配)

    {

    NONE

    }

    return head;//当删除了头时,把新的头返回

    删除学生流程图

    6.输出所有学生的所有数据

    print(head);

    将链表中的头找到,即可找到访问所有人的所有数据

    p = head;

    while(p)

    {

    printf( "%ld\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%3d\n",p->num,p->name , p->s1 , p->s2 , p->s3 , p->sum , p->rank );

    p = p->next;

    7.统计各分数段的人数

    统计各个等级的人数流程图

    遍历链表,对数据域进行判断

    设置12个变量,初始化为1

    将90-100设为等级A,将80-89设置为B,将60-79设置为C将<60设置为D。

    每次判断,在相应的位置就+1,最终算出人数,以一个表格的形式展现,并定义文件指针,将结果写进一个新的文件当中。统计总分和各科的最高分,最低分,以及相应的姓名

    使用擂台法进行比较

    while(p!=NULL)

    {

    if(p->sum > summax->sum)

    {

    summax = p;

    }

    p = p->next;

    }

    总分与各科的方法是一样的

    当找到了这个节点,就可以找到对应的姓名。

    五.调试与测试

    在这个过程中出现了许许多多的问题,在不断的调试中,将bug不断地修复。开始有删除头删不掉的情况,打印的时候排名有问题,最终形成了第三个版本的此系统。

    一般情况下我是首先去测试一下代码,看看所有的功能是否都能正常使用。如果出现逻辑上的问题,会debug寻找错误的原因,并去解决bug。一个常见的方法就是合理的使用printf。

    比如之前我就遇到了一个问题。

    当时在if语句中是这么写的,if(answer == 1),运行就出问题。我要查询的是姓名查询,但是按了1后没有反应。然而说明在哪里出现了问题。于是我用printf测试。

    到底有没有进入到locatename(head)这个函数。

    再次运行时,没有出现???,于是判定是在if语句中出现问题,根本没有进入。最后排查得出,由于定义char类型 ,必须使用字符,用‘1’表示。

    系统测试:

    功能1:打印所有学生的所有信息

    功能2:用学号和姓名查询学生的信息

    功能3:修改学生的成绩:完成总分和排名的实时更新

    功能4:删除学生

    我们回到功能1,测试一下曹操有没有被删掉

    可以看到,曹操已经被删除。

    功能5:各科成绩分析

    由于删掉一人,因此总人数29人。

    功能6:总分以及各个课程的最高分最低分以及对应的姓名。

    再来测试一下:假如我修改了张三的成绩为3个100

    再来看看6的功能

    测试成功!

    六.课程设计心得与体会

    通过此次课程设计,使我更加扎实的掌握了有关链表和结构体方面的知识,在设计过程中,中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因。所在,也暴露出了前期我在这方面的知识欠缺和经验不足。实践出真知,通过亲自动手制作,使我们掌握的知识不再是纸上谈兵。这次课程设计终于顺利完成了,在设计中遇到了很多问题,最后在老师的指导下,终于游逆而解。在今后社会的发展和学习实践过程中,一定要不懈努力,不能遇到问题就想到要退缩,一定要不厌其烦的发现问题所在,然后一一进行解决,只有这样,才能成功的做成想做的事,才能在今后的道路上劈荆斩棘,而不是知难而退,那样永远不可能收课程设计诚然是一门专业课,给我很多专业知识以及专业技能上的提升,同时又是一门讲道课,一门辩思课,给了我许多道,给了我很多思,给了我莫大的空间。同时,设计让我感触很深。使我对抽象的理论有了具体的认识。通过这次课程设计,我对建立一个工程有了一个新的认识,首先是想清楚这个系统的流程,将框架搭建起来后,再起写一些细节方面的东西,千万不能稀里糊涂的写,到最后没有用处,白白浪费时间。

    我认为此次课设不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。同时也希望今后能够多花时间去思考,去动手写一些代码。

    七.程序清单

    student.h

    /*头文件*/

    #include#include#include#include#include#include

    /*结构体*/

    struct student

    {

    long num;

    char name[100];

    float s1;

    float s2;

    float s3;

    float sum;

    int rank;

    struct student *next;

    };

    /*函数声明*/

    struct student * create();

    struct student * delname(struct student *head);

    struct student * delnum(struct student *head);

    void sort(struct student *head);

    struct student * changename(struct student *head);

    struct student * changenum(struct student *head);

    void filein(struct student *head);

    void locatename(struct student *head);

    void locatenum(struct student *head);

    void print(struct student *head);

    void ABCD(struct student *head);

    void max(struct student *head);

    function.cpp

    #include"student.h"/*函数*/

    struct student * create() //建立基础的学生信息库 从文件中将学生信息读取出来{

    char title[100];

    FILE *fp;

    struct student *head, *p , *q;

    p = q = (struct student *)malloc(LEN);

    if( ( fp = fopen("data00.txt","r") ) == NULL )

    {

    printf( "can't open file\n" );

    exit(1);

    }

    fgets( title, 100, fp );

    head = p;

    fscanf( fp , "%ld%s%f%f%f\n",&q->num, p->name, &p->s1,&p->s2,&p->s3 );

    p->sum = p->s1 + p->s2 + p->s3;

    while(!feof(fp))

    {

    q = (struct student *)malloc(LEN);

    fscanf( fp,"%ld%s%f%f%f%\n", &q->num,q->name, &q->s1,&q->s2,&q->s3 );

    q->sum = q->s1 + q->s2 + q->s3;

    p->next = q;

    p = q;

    }

    p->next = NULL;

    fclose(fp);

    return head;

    }

    void sort(struct student *head) //排序{

    struct student *p , *q ;

    p = head;

    while( p ) //擂台法进行排序 {

    p->sum = p->s1 + p->s2 + p->s3;

    p->rank = 1;

    q = head;

    while(q!=p)

    {

    if((q->sum) > (p->sum))

    {

    p->rank +=1;

    }

    else if((q->sum)< (p->sum))

    {

    q->rank +=1;

    }

    q = q->next;

    }

    p = p->next;

    }

    }

    void locatename(struct student *head) //查询信息{

    struct student *p , *q;

    char name[20];

    printf("\n请输入要查询学生的姓名:");

    scanf("%s",name);

    p = head;

    q = p->next;

    if(strcmp(name,p->name)==0)

    {

    printf("\n学号\t姓名\t课程1\t课程2\t课程3\t总分\t排名\n");

    printf( "%ld\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%3d\n" ,p->num,p->name, p->s1, p->s2, p->s3 , p->sum ,p->rank );

    }

    else

    {

    while(q && (strcmp(q->name,name)!=0))

    {

    q = q->next;

    }

    if(q)

    {

    printf("查询的信息为:\n");

    printf("学号\t姓名\t课程1\t课程2\t课程3\t总分\t排名\n");

    printf( "%ld\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%3d\n" ,q->num,q->name, q->s1, q->s2, q->s3 , q->sum ,q->rank );

    }

    else

    {

    printf("没有%s学生\n",name);

    }

    }

    }

    void locatenum(struct student *head) //查询信息{

    struct student *p , *q;

    long num;

    printf("\n请输入要查询学生的学号:");

    scanf("%d",&num);

    fflush(stdin);

    p = head;

    q = p->next;

    if( p->num == num )

    {

    printf("\n学号\t姓名\t课程1\t课程2\t课程3\t总分\t排名\n");

    printf( "%ld\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%3d\n" ,p->num,p->name, p->s1, p->s2, p->s3 , p->sum ,p->rank );

    }

    else

    {

    while(q && q->num != num )

    {

    q = q->next;

    }

    if(q)

    {

    printf("查询的信息为:\n");

    printf("学号\t姓名\t课程1\t课程2\t课程3\t总分\t排名\n");

    printf( "%ld\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%3d\n" ,q->num,q->name, q->s1, q->s2, q->s3 , q->sum ,q->rank );

    }

    else

    {

    printf("没有该学生,请重新输入\n");

    }

    }

    }

    struct student * delname(struct student *head) //通过姓名删除学生信息{

    char name[20];

    struct student *p , *q;

    printf("请输如你想要删除的姓名\n");

    scanf("%s",name);

    if( head==NULL )

    {

    printf("\nlist null!\n");

    return head;

    }

    p = head;

    while( strcmp(p->name,name)!=0 && p->next!=NULL)

    {

    q = p ;

    p = p->next;

    } //直到找到为止 if(strcmp(p->name,name)==0 ) //姓名匹配 {

    if( p == head ) //如果这个学生是第一个学生的话 {

    head = p->next;

    printf("你删除的学生信息为:\n");

    printf("学号\t姓名\t课程1\t课程2\t课程3\t总分\t排名\n");

    printf( "%ld\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%3d\n" , p->num,p->name, p->s1, p->s2, p->s3 ,p->sum, p->rank );

    printf("学生%s删除成功\n",name);

    }//头head要换 不然找不到了 else

    {

    q->next=p->next;

    printf("你删除的学生信息为:\n");

    printf("学号\t姓名\t课程1\t课程2\t课程3\t总分\t排名\n");

    printf( "%ld\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%3d\n" ,p->num, p->name, p->s1, p->s2, p->s3 ,p->sum, p->rank );

    printf("学生%s删除成功\n",name);

    }

    }

    if(strcmp(p->name,name)!=0 )

    {

    printf("没有%s学生\n",name);

    }

    return head;

    }

    struct student * delnum(struct student *head) //通过学号删除学生信息{

    long num;

    struct student *p , *q;

    printf("请输如你想要删除的学号\n");

    scanf("%ld",&num);

    fflush(stdin);

    if( head==NULL )

    {

    printf("\nlist null!\n");

    return head;

    }

    p = head;

    while( p->num != num && p->next!=NULL)

    {

    q = p ;

    p = p->next;

    } //直到找到为止 if(p->num == num ) //姓名匹配 {

    if( p == head ) //如果这个学生是第一个学生的话 {

    head = p->next;

    printf("你删除的学生信息为:\n");

    printf("学号\t姓名\t课程1\t课程2\t课程3\t总分\t排名\n");

    printf( "%ld\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%3d\n" , p->num,p->name, p->s1, p->s2, p->s3 ,p->sum, p->rank );

    printf("学号为%ld的学生删除成功\n",num);

    }//头head要换 不然找不到了 else

    {

    q->next=p->next;

    printf("你删除的学生信息为:\n");

    printf("学号\t姓名\t课程1\t课程2\t课程3\t总分\t排名\n");

    printf( "%ld\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%3d\n" ,p->num, p->name, p->s1, p->s2, p->s3 ,p->sum, p->rank );

    printf("学号为%ld的学生删除成功\n",num);

    }

    }

    if(p->num != num )

    {

    printf("没有该学生,请重新输入\n");

    }

    return head;

    }

    struct student * changename(struct student *head) //通过姓名去修改学生数据{

    struct student *p ,*q;

    char name[20];

    printf("请输入你想修改的姓名\n");

    scanf("%s",name);

    fflush(stdin);

    p = head;

    while( strcmp(p->name,name)!=0 && p->next!=NULL)

    {

    q = p ;

    p = p->next;

    } //直到找到为止 if(strcmp(p->name,name)==0)

    {

    printf("学生%s存在\n",p->name);

    printf("你要修改的学生信息为:\n");

    printf("学号\t姓名\t课程1\t课程2\t课程3\t总分\t排名\n");

    printf( "%ld\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%3d\n" ,p->num, p->name, p->s1, p->s2, p->s3 ,p->sum, p->rank );

    printf("请修改课程1的成绩:\n");

    scanf("%f",&p->s1);

    printf("请修改课程2的成绩:\n");

    scanf("%f",&p->s2);

    printf("请修改课程3的成绩:\n");

    scanf("%f",&p->s3);

    p->sum = p->s1 + p->s2 + p->s3;

    sort(head);

    printf("成绩已经完成更新\n");

    printf("更新后的学生信息为:\n");

    printf("学号\t姓名\t课程1\t课程2\t课程3\t总分\t排名\n");

    printf( "%ld\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%3d\n" ,p->num, p->name, p->s1, p->s2, p->s3 ,p->sum,p->rank );

    }

    else

    {

    printf("没有%s学生\n",name);

    }

    return head;

    }

    struct student * changenum(struct student *head) //通过学号去修改学生数据{

    struct student *p ,*q;

    long num;

    printf("请输入你想修改的学号\n");

    scanf( "%ld",&num );

    fflush(stdin);

    p = head;

    while( p->num != num && p->next!=NULL)

    {

    q = p ;

    p = p->next;

    } //直到找到为止 if( p->num == num )

    {

    printf("学号为%ld的学生存在\n",p->num);

    printf("你要修改的学生信息为:\n");

    printf("学号\t姓名\t课程1\t课程2\t课程3\t总分\t排名\n");

    printf( "%ld\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%3d\n" ,p->num, p->name, p->s1, p->s2, p->s3 ,p->sum, p->rank );

    printf("请修改课程1的成绩:\n");

    scanf("%f",&p->s1);

    printf("请修改课程2的成绩:\n");

    scanf("%f",&p->s2);

    printf("请修改课程3的成绩:\n");

    scanf("%f",&p->s3);

    p->sum = p->s1 + p->s2 + p->s3;

    sort(head);

    printf("成绩已经完成更新\n");

    printf("更新后的学生信息为:\n");

    printf("学号\t姓名\t课程1\t课程2\t课程3\t总分\t排名\n");

    printf( "%ld\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%3d\n" ,p->num, p->name, p->s1, p->s2, p->s3 ,p->sum,p->rank );

    }

    else if( p->num == num )

    {

    printf("学号为%ld的学生存在\n",p->num);

    printf("请修改课程1的成绩:\n");

    scanf("%f",&p->s1);

    printf("请修改课程2的成绩:\n");

    scanf("%f",&p->s2);

    printf("请修改课程3的成绩:\n");

    scanf("%f",&p->s3);

    printf("成绩已经完成更新\n");

    p->sum = p->s1 + p->s2 + p->s3;

    }

    else

    {

    printf("\n没有该学生,请重新输入\n");

    }

    return head;

    }

    void filein(struct student *head)//保存到文件中{

    char title[50];

    FILE *fp;

    struct student *p;

    if((fp=fopen("data11.txt","w"))==NULL)//打开文件 {

    printf("can't open.\n");

    exit(-1);

    }

    p = head;

    fprintf(fp,"学号\t姓名\t课程1\t课程2\t课程3\t总分\t排名\t\n");

    while(p)

    {

    p->sum = p->s1 + p->s2 + p->s3;

    fprintf(fp , "%ld\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%2d\n",p->num,p->name, p->s1, p->s2, p->s3 , p->sum , p->rank );

    p = p->next;

    }

    fclose(fp);

    }

    //输出学生信息 此函数已经完成 void print(struct student *head)

    {

    struct student *p;

    p = head;

    while(p)

    {

    printf( "%ld\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%3d\n",p->num,p->name , p->s1 , p->s2 , p->s3 , p->sum , p->rank );

    p = p->next;

    }

    }

    void ABCD(struct student *head)

    {

    int n1 = 0;

    int n2 = 0;

    int n3 = 0;

    int n4 = 0;

    int n5 = 0;

    int n6 = 0;

    int n7 = 0;

    int n8 = 0;

    int n9 = 0;

    int n10 = 0;

    int n11 = 0;

    int n12 = 0;

    //统计分数段的人数 struct student *p;

    FILE *fp;

    p = head;

    printf("A等级为90--100\nB等级为80--89\nC等级为60--80\nD等级为<60\n");

    while(p!=NULL)

    {

    if( p->s1 >= 90 )

    {

    n1 ++;

    }

    if( (p->s1 >= 80 ) && ( p->s1 < 90 ) )

    {

    n2 ++;

    }

    if( (p->s1 >= 60 ) && ( p->s1 < 80 ) )

    {

    n3 ++;

    }

    if( p->s1 < 60 )

    {

    n4 ++;

    }

    if( p->s2 >= 90 )

    {

    n5 ++;

    }

    if( (p->s2 >= 80 ) && ( p->s2 < 90 ) )

    {

    n6 ++;

    }

    if( (p->s2 >= 60 ) && ( p->s2 < 80 ) )

    {

    n7 ++;

    }

    if( p->s2 < 60 )

    {

    n8 ++;

    }

    if( p->s3 >= 90 )

    {

    n9 ++;

    }

    if( (p->s3 >= 80 ) && ( p->s3 < 90 ) )

    {

    n10 ++;

    }

    if( (p->s3 >= 60 ) && ( p->s3 < 80 ) )

    {

    n11 ++;

    }

    if( p->s3 < 60 )

    {

    n12 ++;

    }

    p = p->next;

    }

    printf("\n成绩分析已经生成表格\n");

    printf("\n等级\tA\tB\tC\tD\t总数\n课程1\t%d\t%d\t%d\t%d\t%3d\n",n1,n2,n3,n4,n1+n2+n3+n4);

    printf("课程2\t%d\t%d\t%d\t%d\t%3d\n",n5,n6,n7,n8,n5+n6+n7+n8);

    printf("课程3\t%d\t%d\t%d\t%d\t%3d\n",n9,n10,n11,n12,n9+n10+n11+n12);

    printf("总数\t%d\t%d\t%d\t%d\t%3d\n",n1+n5+n9,n2+n6+n10,n3+n7+n11,n4+n8+n12,n1+n2+n3+n4+n5+n6+n7+n8+n9+n10+n11+n12);

    if((fp=fopen("abcd.txt","w"))==NULL)//打开文件 {

    printf("can't open.\n");

    exit(-1);

    }

    fprintf(fp,"成绩分析已经生成表格\n");

    fprintf(fp,"A等级为90--100\nB等级为80--89\nC等级为60--80\nD等级为<60\n");

    fprintf(fp,"\n等级\tA\tB\tC\tD\t总数\n课程1\t%d\t%d\t%d\t%d\t%3d\n",n1,n2,n3,n4,n1+n2+n3+n4);

    fprintf(fp,"课程2\t%d\t%d\t%d\t%d\t%3d\n",n5,n6,n7,n8,n5+n6+n7+n8);

    fprintf(fp,"课程3\t%d\t%d\t%d\t%d\t%3d\n",n9,n10,n11,n12,n9+n10+n11+n12);

    fprintf(fp,"总数\t%d\t%d\t%d\t%d\t%3d\n",n1+n5+n9,n2+n6+n10,n3+n7+n11,n4+n8+n12,n1+n2+n3+n4+n5+n6+n7+n8+n9+n10+n11+n12);

    fclose(fp);

    }

    void max(struct student * head)

    {

    struct student *p,*p1,*p2,*p3,*p4,*p5,*p6,*p7,*summax,*summin,*s1max,*s2max,*s3max,*s1min,*s2min,*s3min;

    FILE *fp;

    p = head;

    p1 = head;

    p2 = head;

    p3 = head;

    p4 = head;

    p5 = head;

    p6 = head;

    p7 = head;

    summax = p;

    s1max = p1;

    s2max = p2;

    s3max = p3;

    summin = p4;

    s1min = p5;

    s2min = p6;

    s3min = p7;

    summax->sum = summax->s1+summax->s2+summax->s3;

    summin->sum = summin->s1+summin->s2+summin->s3;

    while(p!=NULL)

    {

    if(p->sum > summax->sum)

    {

    summax = p;

    }

    p = p->next;

    }

    while(p1!=NULL)

    {

    if(p1->sum > s1max->sum)

    {

    s1max = p1;

    }

    p1 = p1->next;

    }

    while(p2!=NULL)

    {

    if(p2->sum > s2max->sum)

    {

    s2max = p2;

    }

    p2 = p2->next;

    }

    while(p3!=NULL)

    {

    if(p3->sum > s3max->sum)

    {

    s3max = p3;

    }

    p3 = p3->next;

    }

    while(p4!=NULL)

    {

    if(p4->sum < summin->sum)

    {

    summin = p4;

    }

    p4 = p4->next;

    }

    while(p5!=NULL)

    {

    if(p5->s1 < s1min->s1)

    {

    s1min = p5;

    }

    p5= p5->next;

    }

    while(p6!=NULL)

    {

    if(p6->s2 < s2min->s2)

    {

    s2min = p6;

    }

    p6 = p6->next;

    }

    while(p7!=NULL)

    {

    if(p7->s2 < s3min->s3)

    {

    s3min = p7;

    }

    p7 = p7->next;

    }

    printf("\t总分\t\t课程1\t\t\t课程2\t\t\t课程3\n");

    printf("最高分\t%.2f(%s)\t%.2f(%s)\t\t%.2f(%s)\t\t%.2f(%s)\n",summax->sum,summax->name,s1max->s1,s1max->name,s2max->s2,s2max->name,s3max->s3,s3max->name);

    printf("最低分\t%.2f(%s)\t%.2f(%s)\t\t%.2f(%s)\t\t%.2f(%s)\n",summin->sum,summin->name,s1min->s1,s1min->name,s2min->s2,s2min->name,s3min->s3,s3min->name);

    if((fp=fopen("max.txt","w"))==NULL)//打开文件 {

    printf("can't open.\n");

    exit(-1);

    }

    fprintf(fp,"\t\t总分\t\t\t课程1\t\t\t课程2\t\t\t课程3\n");

    fprintf(fp,"最高分\t%.2f(%s)\t%.2f(%s)\t%.2f(%s)\t%.2f(%s)\n",summax->sum,summax->name,s1max->s1,s1max->name,s2max->s2,s2max->name,s3max->s3,s3max->name);

    fprintf(fp,"最低分\t%.2f(%s)\t%.2f(%s)\t%.2f(%s)\t%.2f(%s)\n",summin->sum,summin->name,s1min->s1,s1min->name,s2min->s2,s2min->name,s3min->s3,s3min->name);

    fclose(fp);

    }

    main.cpp

    #include"student.h"#define _CRT_SECURE_NO_WARNINGSint main()

    {

    char answer;

    int choice;

    struct student *head ;

    head = create();

    sort(head);

    printf("\t\t\t学生成绩管理系统\n");

    printf("\n\t************STUDENT-SCORE-SYSTEM 5.0***************\n");

    printf("\n\t************powered by 信卓11801聂健***************\n");

    printf("\n\t\t\t按任意键登录系统\n");

    getchar();

    system("cls");

    do

    {

    printf("欢迎你,管理员!\n");

    printf("|---------------------------------------|\n");

    printf("|\t请输入选项编号(0-6):\t\t|");

    printf("\n|---------------------------------------|\n");

    printf("|\t1--浏览学生信息:\t\t|\n");

    printf("|\t2--查询学生信息:\t\t|\n");

    printf("|\t3--修改学生信息:\t\t|\n");

    printf("|\t4--删除学生信息:\t\t|\n");

    printf("|\t5--各科成绩:\t\t\t|\n");

    printf("|\t6--最高分:\t\t\t|\n");

    printf("|\t0--退出系统:\t\t\t|\n");

    printf("|---------------------------------------|\n");

    printf("请输入选项");

    scanf("%d",&choice);

    fflush(stdin);

    switch(choice)

    {

    case 0:

    {

    printf("********退出系统*********\n");

    filein(head);//将修改后的成绩保存在data11.txt中printf("修改的数据已经保存在data11.txt中\n");

    printf("欢迎下次使用\n");

    exit(0);

    break;

    }

    case 1:

    {

    system("cls");

    printf("*************学生成绩一览表********************\n");

    printf("学号\t姓名\t课程1\t课程2\t课程3\t总分\t排名\n");

    print(head); //打印所有人的信息printf("\n按任意键继续回到菜单\n");

    getch();

    system("cls");

    break;

    }

    case 2:

    {

    while(1)

    {

    printf("请选择查询方式\n");

    printf("1.姓名\n2.学号\n");

    scanf("%s",&answer);

    if( answer == '1' )

    {

    locatename(head);//查询信息}

    if(answer == '2' )

    {

    locatenum(head);

    }

    if(answer != '1' && answer!= '2')

    {

    printf("输入错误\n");

    }

    printf("1.按任意键回车后继续查询\n0.退出\n");

    scanf("%s",&answer);

    fflush(stdin);

    if(answer == '0' )

    {

    break;

    }

    }

    printf("\n按任意键回到菜单");

    getch();

    system("cls");

    break;

    }

    case 3:

    {

    while(1)

    {

    printf("请选择修改成绩的方式\n");

    printf("1.姓名\n2.学号\n");

    scanf("%s",&answer);

    if(answer == '1')

    {

    changename(head);

    sort(head); //修改成绩后重新排序}

    if(answer == '2')

    {

    changenum(head);

    sort(head); //修改成绩后重新排序}

    if(answer != '1' && answer!= '2')

    {

    printf("输入错误\n");

    }

    printf("是否继续\n");

    printf("1.按任意键回车后继续修改\n0.退出\n");

    scanf("%s",&answer);

    if(answer=='0')

    {

    break;

    }

    }

    printf("\n按任意键回到菜单\n");

    getch();

    system("cls");

    break;

    }

    case 4:

    {

    while(1)

    {

    printf("请选择删除学生的方式\n");

    printf("1.姓名\n2.学号\n");

    scanf("%s",&answer);

    if(answer=='1')

    {

    head= delname(head); //删除头时头要换sort(head); //删除学生后重新排序}

    if(answer=='2')

    {

    head= delnum(head); //删除头时头要换sort(head); //删除学生后重新排序}

    if(answer != '1' && answer!= '2')

    {

    printf("输入错误\n");

    }

    printf("是否继续\n");

    printf("1.继续删除\n0.退出\n");

    scanf("%s",&answer);

    if(answer=='0')

    {

    break;

    }

    }

    printf("\n按任意键继续执行你想要的操作");

    getch();

    system("cls");

    break;

    }

    case 5:

    {

    ABCD(head);//计算人数printf("\n按任意键继续执行你想要的操作");

    getch();

    system("cls");

    break;

    }

    case 6:

    {

    max(head);

    printf("\n按任意键继续执行你想要的操作");

    getch();

    system("cls");

    break;

    }

    default:

    {

    printf("********没有这个选项*********\n按任意键重新输入\n");

    getch();

    break;

    }

    }

    }while(1);

    return 0;

    }

    学生原始数据没有展现出来,需要的私我哦

    展开全文
  • 学生管理信息系统设计报告,很好用哦,可以作为参考
  • 移通学院 C 语言程序设计报告设计名称学生成绩管理系统 专业 指导老师 班级 姓名 学号 座号 时间 1 一实验目的 1.在编辑应用程序过程中逐步加深对C 语言编程的理解 2.加强实践的能力动手能力同时进一步对所学的...
  • 数据库课程设计报告,有需求分析,数据字典,结构设计和必要的数据流图~~~
  • 学生成绩管理系统主要实现了 1、 登录验证账号信息 2、 学生注册、教师注册 3、 添加学生成绩信息 4、 修改学生成绩信息 5、 查询学生成绩信息 6、 删除学生成绩信息 7、 文件导入学生成绩信息 8、 学生账号管理 9、...
  • 实验内容:程序一:学生信息管理系统编写程序,实现学生信息的管理(包括学生信息的建立、增加、删除、修改、查找),要求:小组分工情况小组分工情况统计表班级信息工程学院 计算机科学与技术专业 2012级 软件工程...

    实 验 四:结构体

    实验目的:

    1.更加灵活的使用数组作为函数参数;

    2.初步掌握开发一个小型实用系统的基本方法;

    3.初步掌握书写程序设计开发文档的能力。

    实验内容:

    程序一:学生信息管理系统

    编写程序,实现学生信息的管理(包括学生信息的建立、增加、删除、修改、查找),要求:

    小组分工情况

    小组分工情况统计表

    班级

    信息工程学院 计算机科学与技术专业 2012级 软件工程(方向) 班 组

    名称

    学生成绩管理系统

    项目组长

    (本次项目小组组长)

    组员

    组员学号

    工作简介

    一 需求分析

    I设计一个学生成绩管理系统至少具有以下功能:

    (1)菜单功能:采用文本菜单界面。

    (2)学生信息的建立。

    (3)学生信息的增加。

    (4)学生信息的删除。

    (5)学生信息的修改。

    (6)学生信息的查找。

    II数据库结构

    struct student

    { char num[10];

    char name[10];

    char xibie[10];

    char sex;

    int age;

    }st[30];

    二 总体设计

    框架结构图(系统的功能结构图)

    学生成绩管理系统

    学生成绩管理系统

    输入

    增加

    …….

    退出

    程序流程图: (visio)

    退出结束

    退出

    结束

    开始

    输出菜单

    根据菜单输入n的值选择程序

    输入

    增加

    删除

    修改

    查找

    三、详细设计

    (流程图!!!)

    四、程序源代码(参考答案)

    1.用结构体数组完成

    2.用结构体指针完成

    1. #include "stdio.h"

    #include "string.h"

    typedef struct node

    { char num[10];

    char name[10];

    char xibie[10];

    char sex;

    int age;

    }st;

    int n;

    st *creslink()

    {

    int i;

    st s[10];

    printf("请输入要录入的人数:");

    scanf("%d",&n);

    for (i=0;i<=n-1;i++)

    { printf("请输入第%d名学生的学号,姓名,系别,年龄,性别:",i+1);

    scanf("%s%s%s%d%c",s[i].num,s[i].name,s[i].xibie,&s[i].age,&s[i].sex);

    }

    return s;

    }

    int getlen(st s[])

    {

    return n;

    }

    insert(st s[],char num[],char name[],char xibie[],int age,char sex)

    { strcpy(s[n].num,num);

    strcpy(s[n].name,name);

    strcpy(s[n].xibie,xibie);

    s[n].age=age;

    s[n].sex=sex;

    n++;

    }

    delete(st s[],char num[])

    {int i,j;

    for(i=0;i

    if(strcmp(s[i].num,num)==0)break;

    for(j=i+1;j

    s[j-1]=s[j];

    n--;

    }

    void list(st s[])

    { int i;

    printf("学号\t姓名\t系别\t年龄\t性别\n");

    for(i=0;i

    printf("%s\t%s\t%s\t%d\t%c\n",s[i].num,s[i].name,s[i].xibie,s[i].age,s[i].sex);

    }

    void main()

    {

    int k,f,age;

    char num[10],name[10],xibie[10],sex;

    st *s;

    while(1)

    {

    printf("\n\n\t\t\t学生信息管理系统\n");

    printf("\t\t*************************************\n");

    printf("\t\t\t1.录入学生信息\n");

    printf("\t\t\t2.插入新学生信息\n");

    printf("\t\t\t3.删除学生信息\n");

    printf("\t\t\t4.输出学生信息\n");

    printf("\t\t\t5.输出学生总数\n");

    printf("\t\t\t6.退出\n");

    printf("\t\t*************************************\n");

    printf("请选择:"

    展开全文
  • 3)学生成绩管理系统  需要处理的基础数据 学生基本信息:如班级、学号、姓名、性别、年龄等。 学生选修课程的基本信息:课程编号、课程名称、学分、考试成绩、平时成绩、综合成绩(考试成绩*0.7+平时成绩*0.3...
  • 软件工程课程实验报告 系统名称 _ 学生信息管理系统_ 学 院 _ 计算机学院信息_ _ 学生信息管理系统设计文档 1.可行性研究 1.1技术可行性 已经有人开发过并且我们也都使用过相类似系统对 其一般性的软件和操作环境...
  • 学生信息管理系统课程设计报告.docx

    千次阅读 2020-12-17 07:01:16
    1、目的:为规范订单/合同管理,使订单/合同执行有序进行,特制定本流程。2、适用范围适用于业务部门、集团各分公司所有订单/合同执行的全过程。3、职责3.1分公司各部门3.1.1业务部门(1)负责接收订单/合同,与客户...

    1

    、目

    为规范订单

    /

    合同管理,使订单

    /

    合同执行有序进行,特制定本流程。

    2

    、适用范围

    适用于业务部门、集团各分公司所有订单

    /

    合同执行的全过程。

    3

    、职责

    3.1

    分公司各部门

    3.1.1

    业务部门

    (

    1

    )负责接收订单

    /

    合同,与客户进行沟通,提供客户所有要求信息。

    (

    2

    )负责组织相关部门进行订单

    /

    合同评审。

    (

    3

    )负责编制“报价联系单”、“大货采购单

    /

    购销合同”。

    3.1.2

    技术部门

    (

    1

    )负责编制“报价单”,“工程更改通知单”。

    (

    2

    )负责产品技术、工艺可行性评审及价格评审。

    3.1.3

    生产部门

    (

    1

    )负责产品生产保证可行性评审。

    (

    2

    )负责按照订单的各项要求安排生产。

    3.1.4

    品质部门

    (

    1

    )负责产品的质量保证可行性评审。

    (

    2

    )负责按照订单的各项要求及检验规范安排产品检验。

    3.2

    服务管理委员会

    3.2.1

    采购部

    (

    1

    )负责原材料、外购件资源配套能力、价格的评审。

    (

    2

    )负责每天对钢材等主要原材料价格进行通报,做出“主要原材料价格趋势图”,并

    通过电子邮件知会各分公司总经理、总裁及董事长,作为各分公司总经理决策参考。

    3.2.2

    财务部

    (

    1

    )负责产品报价单销售毛利率、销售费用率、销售利润率的评审。

    (

    2

    )负责对汇率、出口退税等影响产品报价因素进行及时通报,每月出具汇率、出口关

    税报表,作为各分公司总经理决策参考。当汇率、出口退税出现变动时,第一时间通知

    各分公司总经理。

    3.2.3

    品质监督部

    (1)

    负责产品质量保证可行性评审;负责订单

    /

    合同的备案管理。

    (2)

    负责监督和检查各分公司在生产之前完成检验规范、检验标准的制定。

    3.2.4

    总裁负责订单

    /

    合同的审批。

    展开全文
  • 课程设计 学生成绩管理系统 实验报告 PHP Apache mysql
  • 学生信息管理系统包含实验报告,描述了设计思路,以及操作过程。
  • XX大学 二一二二一三年第二学期 xxxxxxx学院 面向对象C++语言课程设计汇报 课程名称 面向对象C++语言课程...3 1.1 系统需求分析 3 1.2系统功效分析 3 1.3系统性能分析 4 二总体结构设计 5 2.1系统结构设计 5 2.2系统
  • C语言 学生成绩管理系统实验报告 利用C语言编写的学生成绩管理系统
  • C语言学生信息管理系统设计实验报告 中南民族大学中南民族大学 软件课程设计报告软件课程设计报告 电信电信 学院学院 1010 级级光信光信专业专业 题目题目学生信息管理系统学生信息管理系统 姓名姓名 张宇(组长)张宇...

    41528d3028836879cd698677c3999917.gifC语言学生信息管理系统设计实验报告

    中南民族大学中南民族大学 软件课程设计报告软件课程设计报告 电信电信 学院学院 1010 级级光信光信专业专业 题目题目学生信息管理系统学生信息管理系统 姓名姓名 张宇(组长)张宇(组长) 钱程钱程 刘永亮刘永亮 马玉帅马玉帅 岳映强岳映强 章成章成 陈耀明陈耀明 徐川鹤徐川鹤 学号学号 1007406810074068 1007406910074069 1007407010074070 1007407110074071 1007407210074072 1007407310074073 1007406710074067 1007406010074060 指导教师指导教师谢茂涛谢茂涛 2011 年年06 月月11 日日 2 1.1.引言引言 本课程设计的目的就是要通过一次集中的强化训练,使学生能及时巩固已学 的知识,补充未学的但又必要的内容。进行课程设计目的在于加深对程序设计基 础中基础理论和基本知识的理解,促进理论与实践的结合,进一步提高程序设计 的能力。具体目的如下: 1.使学生更深入地理解和掌握该课程中的有关基本概念,程序设计思想和 方法。 2.培养学生综合运用所学知识独立完成课题的能力。 3.培养学生勇于探索、严谨推理、实事求是、有错必改,用实践来检验理 论,全方位考虑问题等科学技术人员应具有的素质。 4.提高学生对工作认真负责、一丝不苟,对同学团结友爱,协作攻关的基 本素质。 5.培养学生从资料文献、科学实验中获得知识的能力,提高学生从别人经 验中找到解决问题的新途径的悟性,初步培养工程意识和创新能力。 6.对学生掌握知识的深度、运用理论去处理问题的能力、实验能力、课程 设计能力、书面及口头表达能力进行考核。 2.2.设计题目及要求设计题目及要求 【1】设计题目 :学生信息管理系统 【2】要求 实现如下功能: (1)建立学生信息的结构体 (2)学生信息的初始化(可以从文件获取) (3)学生信息的添加、修改、删除、查找 (4)学生信息的输出 (5)对学生信息按学号、姓名查找 (6)将学生信息保存为文件 综合应用数组、指针、结构体、文件等,对该设计题目进行设计和实现。课 程设计完成后,提交课程设计报告。 3.3.设计算法分析设计算法分析 3.1 模块调用层次图 【1】变量描述 定义形式/名称含义/作用 数组char name[20]定义姓名数组 结构体struct student work[500]声明一个结构数组 全局变量int =0;float ave,sum; FILE *fp; 全局变量标记当前 录入学生个数 文件work_list.txt保存学生信息 3 函数baicun()、type_in()、 del()、change()、add ()、scan()search() 保存 录入 删除 修改 查找 插入 显示学生信息、查 找 4.4.设计平台设计平台 有 Visual C 语言编写,语言简单、紧凑,使用方便、灵活。运算符丰富,数据 类型丰富,具有结构化的控制语句,语法限制不太严格,程序设计自由度大。C 语言允许直接访问物理地址,能进行行位操作,能实现汇编语言的大部功能。生 产目标代码质量高,程序执行效率高,用 C 语言编写的程序可移植性好。 5.5.设计思想设计思想 采用了系统模块化:(1)自顶向下;(2)逐步细化;(3)模块化设计;(4) 结构化编码。用这种方法便于验证算法的正确性,在向下展开之前应仔细检查本 层设计是否正确,只有上一层正确才能向下细化。本程序分为六大模块:浏览模 块、增加模块、录入模块、修改模块、查询模块、退出。其中录入模块包括录入、 导出、保存。查询模块包括学号查询和姓名查询。浏览函数由岳映强完成,增添 模块由马玉帅完成,录入模块由章成完成,修改模块由陈耀明和徐川鹤完成,查 询模块由刘永亮完成,退出模块由钱程完成。 6.6.设计框图设计框图 Main 函数 信 息 的 浏 览 信 息 的 增 加 信 息 的 录 入 信 息 的 修 改 信 息 的 查 询 退 出 系 统 按 学 号 查 询 按 姓 名 查 询 信 息 保 存 信 息 录 入 信 息 导 出 7.各模块功能简介各模块功能简介 信息浏览模块:用导入函数调入信息,用 for 循环依次输出学生信息。 4 信息的增添模块:先确定增添人数,用 for 循环输入指针数组数据,调用保存函 数进行保存。 信息的录入模块:确定人数,for 循环依次输入信息,调用保存函数保存。 信息的修改模块:用 if(strcmp(work[i].name,name)==0) 先找出要修改的学生信息,用 switch 确定修改那一项,输入修改的数据进行保 存。 信息的查询模块:用 if(strcmp(work[i].name,name)==0)查找学生姓名,用 if(num1==work[i].num)对学号查找。 退出:用 goto 语句指向固定行。 8.主要函数流程图主要函数流程图 修改函数 开始 输入姓名 用 strcmp 查找 是否找到 输入选项 修 改 姓 名 修 改 学 号 修 改 年 龄 修 改 性 别 修 改 地 址 修 改 电 话 修 改 生 日 修 改 邮 箱 是否继续 Case1-8 N N Y Y 结束 5 查询函数 开始 输入查询姓名 用 strcmp 比较 是否找到 输出信息 结束 Y N 增加函数 开始 输入人数 输入信息 调用保存函数 是否继续 结束 Y N 删除函数 6 开始 输入姓名 用 strcmp 比较 是否找到 输出信 是否删除 指针前移 结束 是否继续 Y N Y N N Y 9.9.程序调试及分析程序调试及分析 经调试大部分功能以实现,只有学号查询出错,可能原因:指针指向出错,调用 后带回空指针。电话的数据类型不能输出全部电话位数,因为定义的长整型最大 位数小于电话位数。 1010、结束语、结束语 7 通过本次实验对 C 语言有了初步了解,但如果想要进一步了解,还应加强练习, 组员之间的配合在设计过程中是很重要的。 参考资料:参考资料:C 程序设计C 语言程序基础

    展开全文
  • 信息提示系统细致完善,对于用户可能发生的错误操作,给予错误信息提示 学生:选择、查询、注销课程、修改个人信息、成绩查询 ,教师:成绩录入、查看所授课程、人员名单、修改个人信息 ,管理员:学生、教师、课程...
  • 实训报告 实训名称 学生成绩管理系统 系部 专业班级 学生姓名 学 号 指导教师 完成日期 南京铁道职业技术学院 目 ? ? ? ? ? ? ? ? ? ? ? 装 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?...
  • 有详细实验报告 系统说明: 1) 用户管理:用于对用户的注册,登录,修改密码,修改资料等功能 2) 学生信息管理:用于对学生信息的增、删、改、查等功能 3) 教师成绩管理:用于对教师信息的增、删、改、查等功能 4) ...
  • Java实验报告-学生个人简历管理系统.doc
  • 软件工程 学生管理系统 实验报告 有用例图 顺序图 流程图 协作图。很完整的一份软件工程思想的实验报告。 1 设计任务与目的 1 1.1 项目计划 1 2 需求分析 1 2.1用例图 3 2.1.1 学生用例图 3 2.1.2 教师用例图 3 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 12,901
精华内容 5,160
关键字:

学生管理系统设计实验报告