----------学生信息管理系统-------

原创 2015年07月06日 21:43:59
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <algorithm>
#include <stdlib.h>
using namespace std;
struct student_message
{
    int student_num;
    char student_name[15];
    char student_sex[15];
    double sub_a,sub_b,sub_c,sub_d,sub_e;
    double sub_ave;
    double sub_sum;
    int mingci;
} data[100];
int ji=0,n,x,tmp=1;
void del(int m)
{
    for(int i=1; i<=n+ji-1; i++)
    {
        if(data[i].student_num==m)
        {
            for(int j=i; j<=n+ji-1; j++)
            {
                data[j]=data[j+1];
            }
            ji--;
            break;
        }
    }
    if(data[n+ji].student_num==m)
        ji--;
}
void xiugai(int m)
{
    for(int i=1; i<=n+ji; i++)
    {
        if(data[i].student_num==m)
        {
            char name[15],sex[15];
            double a,b,c,d,e;
            cout<<"名字"<<endl;
            cin>>name;
            strcpy(data[i].student_name,name);
            cout<<"性别"<<endl;
            cin>>sex;
            strcpy(data[i].student_sex,sex);
            cout<<"成绩"<<endl;
            cin>>a>>b>>c>>d>>e;
            data[i].sub_a=a;
            data[i].sub_b=b;
            data[i].sub_c=c;
            data[i].sub_d=d;
            data[i].sub_e=e;
            data[i].sub_sum=data[i].sub_a+data[i].sub_b+data[i].sub_c+data[i].sub_d+data[i].sub_e;
            data[i].sub_ave=data[i].sub_sum/5;
            break;
        }
    }
}
void showall()
{
    for(int i=1; i<=ji+n; i++)
    {
        cout<<data[i].student_num<<" "<<data[i].student_name<<" "<<data[i].student_sex<<" ";
        cout<<data[i].sub_a<<" "<<data[i].sub_b<<" "<<data[i].sub_c<<" "<<data[i].sub_d<<" "<<data[i].sub_e<<" ";
        cout<<data[i].sub_ave<<" "<<data[i].sub_sum<<" "<<data[i].mingci<<endl;
    }
}
void show(int m)
{
    for(int i=1; i<=n+ji; i++)
    {
        if(data[i].student_num==m)
        {
            cout<<data[i].student_num<<" "<<data[i].student_name<<" "<<data[i].student_sex<<" ";
            cout<<data[i].sub_a<<" "<<data[i].sub_b<<" "<<data[i].sub_c<<" "<<data[i].sub_d<<" "<<data[i].sub_e<<" ";
            cout<<data[i].sub_ave<<" "<<data[i].sub_sum<<" "<<data[i].mingci<<endl;
            break;
        }
    }
}
int cmp(const student_message &a,const student_message &b)
{
    return a.sub_ave>b.sub_ave;
}
void paimingci()
{
    for(int i=1; i<=n+ji; i++)
    {
        //cout<<"Aaaaaaaaaaaaaa"<<endl;
        data[i].mingci=i;
    }
}
void save(char *filename)
{
    FILE *fp=fopen(filename,"at");
    for(int i=tmp; i<=ji+n; i++)
    {
        fprintf(fp,"%d %s %s %.2lf %.2lf %.2lf %.2lf %.2lf %.2lf %.2lf %d\n",data[i].student_num,data[i].student_name,data[i].student_sex,data[i].sub_a,data[i].sub_b,data[i].sub_c,data[i].sub_d,data[i].sub_e,data[i].sub_ave,data[i].sub_sum,data[i].mingci);
    }
    fclose(fp);
    tmp=ji+n;
    return ;
}
void read(char *filename)
{
    char temp;
    FILE *fp;
    fp=fopen(filename,"r");
    while((temp=fgetc(fp))!=EOF)
    {
        cout<<temp;
    }
    fclose(fp);
    return;
}
void build()
{
    cout<<"请输入新建文件名称: ";
}
int main()
{
    cout<<"1、增加学生信息 "<<"  "<<"6、对学生信息进行排序 "<<endl;
    cout<<"2、修改学生信息 "<<"  "<<"7、保存学生信息至记录文件 "<<endl;
    cout<<"3、显示学生信息 "<<"  "<<"8、从记录文件读取学生信息 "<<endl;
    cout<<"4、查询学生信息 "<<"  "<<"9、新建学生信息文件 "<<endl;
    cout<<"5、删除学生信息 "<<"  "<<"0、运行结束 "<<endl;
    cin>>n;
    for(int i=1; i<=n; i++)
    {
        cin>>data[i].student_num>>data[i].student_name>>data[i].student_sex;
        cin>>data[i].sub_a>>data[i].sub_b>>data[i].sub_c>>data[i].sub_d>>data[i].sub_e;
        data[i].sub_sum=data[i].sub_a+data[i].sub_b+data[i].sub_c+data[i].sub_d+data[i].sub_e;
        data[i].sub_ave=data[i].sub_sum/5;
        paimingci();
    }
    int chs;
    cin>>chs;
    while(1)
    {
        switch(chs)
        {
        case 1:
            cout<<"输入学生信息"<<endl;
            ji++;
            cin>>data[n+ji].student_num>>data[ji+n].student_name>>data[ji+n].student_sex;
            cin>>data[ji+n].sub_a>>data[ji+n].sub_b>>data[ji+n].sub_c>>data[ji+n].sub_d>>data[ji+n].sub_e;
            data[ji+n].sub_sum=data[ji+n].sub_a+data[ji+n].sub_b+data[ji+n].sub_c+data[ji+n].sub_d+data[ji+n].sub_e;
            data[ji+n].sub_ave=data[ji+n].sub_sum/5;
            paimingci();
            break;
        case 2:
            cout<<"输入所要修改的学生学号"<<endl;
            cin>>x;
            xiugai(x);
            cout<<"修改完成"<<endl;
            break;
        case 3:
            showall();
            break;
        case 4:
            cout<<"输入所要显示的学生学号"<<endl;
            cin>>x;
            show(x);
            break;
        case 5:
            cout<<"输入所要删除的学生学号"<<endl;
            cin>>x;
            del(x);
            paimingci();
            break;
        case 6:
            sort(data+1,data+ji+n+1,cmp);
            paimingci();
            showall();
            break;
        case 7:
            save("学生信息管理系统.txt");
            break;
        case 8:
            read("学生信息管理系统.txt");
            break;
        case 9:
            build();
            break;
        case 0:
            return 0;
        default:
            cout<<"您输入的编号不在操作步骤里面,请重新选择谢谢"<<endl;
            break;
        }
        cin>>chs;
    }
    return 0;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

课程设计————学生信息管理系统

课程设计—————学生信息管理系统

学生信息管理系统--书签的使用

数据库在删除记录的时候,必须打开数据库右击点击执行按钮,最新的结果才会显示出来。 一个书签 唯一的标识一个记录。书签的作用是标识记录,使其可以随意的跳转到标识的记录。 如果不用书签直接删除记录会出...

用java开发学生信息管理系统(SIMS,一)

SIMS的开发需要java开发环境、数据库驱动、数据库。     一、数据库驱动     用java连接数据库得加载数据库驱动才行。SIMS是使用Mysql数据库的,所以要去官网把Mysql的数据...

《学生信息管理系统》知识点总结

写这个系统的代码的时候,有很多函数还有VB知识不懂,现在明白了些,整理下,打包下收获:          1.trim函数     好多个窗体的代码里都有用这个函数,一开始啥都不懂,哎,怎么我也...

学生信息管理系统

学生信息管理系统使用QT5创建界面,同时明文保存学生信息。 vs版本 Github源代码下载https://github.com/xuhang96/class-design/blo...

Android应用开发-学生信息管理系统

设计目的1、网上很少有关于SQLite简单综合项目的测试APP。 2、把自己所学的部分UI综合一下,希望能给新手一些帮助。涉及知识点1、包括SQLite的增删查找等功能。查找中加入了“模糊搜索”的功...

学生信息管理系统技术点总结

前几天把学生信息管理系统中所有的代码都看了一遍,

【学生信息管理系统】对象变量或者With块变量未设置

连上数据库的原因有很多,最常见的是下面的3种。 1.ODBC数据源没有配置好 2.模块出连接数据库的代码出错 3.SQL语句是否敲错。 以及笔者体验的解决办法。

【学生信息管理系统】Win7防火墙添加开放端口

博文【学生信息管理系统】无法启动T-SQL调试,未能连接到计算机……中,提到了添加端口到例外。例外这个名词,在XP系统中存在,Win7系统中没有了这个名词,但这个功能依然是存在的。 服务器上不同的协...

C语言小项目(学生信息管理系统)

/* (1)问题描述 学生信息包括:学号,姓名,年龄,性别,出生年月,地址,电话,E-mail等。试设计一学生信息管理系统,使之能提供以下功能:  1.系统以菜单方式工作  2.学...
  • sl1248
  • sl1248
  • 2016-04-06 09:07
  • 1414
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)