2019-06-25 学生成绩管理系统(期末课设)

#include//标准输入输出函数库 
#include//标准函数库 
#include//字符串函数库 
#include//屏幕操作函数库
typedef struct node//定义学生信息的结构体 
{
    char num[41];//学号 
    char name[41];//姓名 
    char sex[4];//性别 
    int score[3] ;//数学 英语 计算机 
    float aver; //平均成绩 
    float sum; //总成绩 
}student;
student stu[101]; 
int stuSize;//定义一个全局变量 
void Menu();//操作主界面 
void Input();//声明输入函数 
void Save();//声明保存函数 
void order();//声明排序函数 
void Analysis();//声明统计函数 
void selet();//声明查询函数 
void delet();//声明删除函数 
void insert();//声明添加函数 
void print();//声明输出函数 
void Update();//声明更新函数 
void amend();//声明修改函数 
void see();//声明查看文件 
int openl();//声明打开文件 
void welcome();//声明个人信息 
int main()
{
    system("color 3E"); //设计文本颜色
    printf("\n\n\n\n\n\n\n\n\n\n\n\t\t\t\t========== 欢迎进入学生成绩管理系统!!!==========\n\n");
    printf("\n\n\t\t\t\t   =============  按任意键继续!!!============\n\n\n");
    getch(); 
    Menu();
    return 0;
}
void Menu()//主菜单 
{
    system("cls");
    printf("\n\t\t\t\t\t=========== 学生成绩管理系统 ===========\n\n");
    printf("\t\t\t\t\t----------------------------------------\n\n");
    printf("\t\t\t\t\t==========   1    输入记录   ===========\n\n");
    printf("\t\t\t\t\t==========   2    查询记录   ===========\n\n");
    printf("\t\t\t\t\t==========   3    更新记录   ===========\n\n");
    printf("\t\t\t\t\t==========   4    统计记录   ===========\n\n");
    printf("\t\t\t\t\t==========   5    输出记录   ===========\n\n");
    printf("\t\t\t\t\t==========   6    个人信息   ===========\n\n");
    printf("\t\t\t\t\t==========   7    打开文件   ===========\n\n");
    printf("\t\t\t\t\t==========   0    退出系统   ===========\n\n");
    printf("\t\t\t\t\t----------------------------------------\n\n");
    printf("\t\t\t\t\t请输入你的选择-->>");
    int a;
    scanf("%d",&a);
    switch (a)
    {
        case 0:return;//退出系统 
        case 1:Input();break;//输入 
        case 2:selet();break;//查询 
        case 3:Update();break;//更新 
        case 4:Analysis();break;//统计 
        case 5:print();break;//输出 
        case 6:welcome();break;//个人信息 
        case 7:see();break; //打开文件 
        default:printf("信息输入有误!请检查后重新输入\n");
        getch();
    }
    
}
void Update()//更新 
{
    system("cls");
    printf("\n\t\t\t\t\t======== 更新记录 =========\n\n");
    printf("\t\t\t\t\t---------------------------\n\n");
    printf("\t\t\t\t\t=======1  添加学生 ========\n\n");
    printf("\t\t\t\t\t=======2  删除学生 ========\n\n");
    printf("\t\t\t\t\t=======3  修改学生 ========\n\n");
    printf("\t\t\t\t\t=======4  成绩排序 ========\n\n");
    printf("\t\t\t\t\t=======0    退出   ========\n\n");
    printf("\t\t\t\t\t---------------------------\n\n");
    printf("\t\t\t\t\t请输入你的选择-->\n");
    int a;
    scanf("%d",&a);
    switch (a)
    {
        case 0:Menu();//返回主菜单 
        case 1:insert();break;//添加 
        case 2:delet();break;//删除 
        case 3:amend();break;//修改 
        case 4:order();break;//排序 
        default:printf("信息输入有误!请检查后重新输入\n");
        getch();
        Menu(); 
    }
}
 void amend()//修改 
 {
    int i;
    char a;
    char name[20];  
    system("CLS");
    printf("\t\t\t输入学生名字:\n");
    scanf("%s",&name);  
    system("CLS");
    printf("\t学号\t姓名\t性别\t数学\t英语\t计算机\t平均成绩\t总成绩\n");
    for(i=0;istu[i].score[k]) mi[k]=stu[i].score[k];
            sum[k]+=stu[i].score[k];
            if(stu[i].score[k]<60)
                    cnt[k][0]++;
            else if(stu[i].score[k]<69)
                    cnt[k][1]++;
            else if(stu[i].score[k]<79)
                    cnt[k][2]++;
            else if(stu[i].score[k]<89)
                    cnt[k][3]++;
            else if(stu[i].score[k]<=100)
                    cnt[k][4]++;        
        }
    }

    printf("\t数学\t最高分 :%d\t最低分 :%d\t不及格人数:%d\t60-69分人数: %d\n\n\t\t70-79分人数: %d\t80-89分人数: %d\t90分以上人数: %d\n\n\n",ma[0],mi[0],cnt[0][0],cnt[0][1],cnt[0][2],cnt[0][3],cnt[0][4]);
    printf("\t英语\t最高分 ;%d\t最低分 :%d\t不及格人数:%d\t60-69分人数: %d\n\n\t\t70-79分人数: %d\t80-89分人数: %d\t90分以上人数: %d\n\n\n",ma[1],mi[1],cnt[1][0],cnt[1][1],cnt[1][2],cnt[1][3],cnt[1][4]);
    printf("\t计算机\t最高分 :%d\t最低分 :%d\t不及格人数:%d\t60-69分人数: %d\n\n\t\t70-79分人数: %d\t80-89分人数: %d\t90分以上人数: %d\n\n\n\n",ma[2],mi[2],cnt[2][0],cnt[2][1],cnt[2][2],cnt[2][3],cnt[2][4]);
    printf("\t按任意键返回菜单!!!");
    getch();
    Menu();;
    
}
void selet()//查询 
{   
    system("cls");
    printf("\t\t\t\t\t1     姓名查询 \n\t\t\t\t\t2     学号查询 \n\t\t\t\t\t  ");
    printf("请选择要查询的方式-->\n");
    int ch,i;
    scanf("%d",&ch);
    if(ch==1){
        int i=0;
        printf("请输出姓名:\n");
        char name[41];
        scanf("%s",name);
        for(i=0;istu[i+1].sum)
            {
                temp=stu[i+1];stu[i+1]=stu[i];stu[i]=temp;//引用变量temp交换数值 使总分按小到大排出 
            }
        
         } 
    }
        printf("\t学号\t姓名\t性别\t英语\t数学\t语文\t平均成绩\t总成绩\n");
        for(i=0;i

你可能感兴趣的:(2019-06-25 学生成绩管理系统(期末课设))