IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 数据结构/C++实习:作业完成情况管理程序 -> 正文阅读

[C++知识库]数据结构/C++实习:作业完成情况管理程序

源码(含数据),实习论文,实习计划书,实习汇报PPT:下载链接

https://download.csdn.net/download/weixin_43042683/21354783

任务内容

题目内容:作业完成情况管理程序

具体要求:假设某门课程一学期要留10次作业,每次老师要进行批改,给出分数后还要进行登记。学期期末要根据每次作业的成绩计算出最终的平时成绩(满分100)。

该程序应该具有下列功能:

(1) 通过键盘输入某位学生某次作业的分数;

(2) 给定学号,显示某位学生作业完成情况;

(3) 给定某个班级的班号,显示该班所有学生的作业完成情况;

(4) 给定某位学生的学号,修改该学生的作业完成信息;

(5) 给定某位学生的学号,删除该学生的信息;

(6) 提供一些统计各类信息的功能。

程序设计框图

程序设计流程图

?进入系统可进行的操作,可以在系统中输入学生的各项信息和成绩,也可以从文件中直接导入(文件中保存的信息应该依次是姓名、学号、班级号、连续十次的成绩,各个信息用空格隔开)。

详细设计说明

Mian()主函数包括:(实习论文更详细)

Printf_help();//显示主菜单

input(st,qt);//?通过键盘输入某位学生某次作业的分数

readfile(st,fp);//?从文件导入学生信息

sno_search(st);//?给定学号,显示某位学生作业完成情况

cno_search(st);//?给定某个班级的班号,显示该班所有学生的作业完成情况

sno_change(st);//?给定某位学生的学号,修改该学生的作业完成信息

sno_delete(st);//?给定某位学生的学号,删除该学生的信息

statistics_result(st);//?显示各类统计信息

system("CLS");//清屏

creat_files(st,fp);//?导出文件

程序使用说明

步骤一:首次运行之后会出现一个主菜单:

?步骤二:然后可以根据不同的数字字符的输入,进行不同的操作。每一步操作也有下一步相应的文字提示。

在主菜单中选择‘1’后,就是进行键盘输入某位学生某次作业的分数的操作:

?

?在主菜单中选择‘2’后,进行文件导入学生信息操作:

?在主菜单中选择‘3’,就是对给定学生学号进行该学生作业完成情况的一个查询工作:

在主菜单中选择‘4’,可通过班级号,对该班学生的作业完成情况进行查询:

在主菜单中选择‘5’,可修改给定学号的学生作业完成信息:?

?

?在主菜单中选择‘6’,可删除给定学号的学生作业完成信息:

?

?在主菜单中选择‘7’,可显示各类统计信息:

?在副菜单下选择‘1’,可以按学号查看学生平时成绩:

?在副菜单下选择‘2’,可以按班级查看学生平时成绩:

?

?在副菜单下选择‘3’,输出降序的平时成绩的排列:

?在主菜单中选择‘8’,执行清屏功能;

步骤三:

在主菜单中选择‘9’,导出文件:

?在主菜单中选择‘0’,退出系统:

?参考代码

#include <stdio.h>
#include <stdlib.h>
#include <io.h>
#include <ctype.h>
#include <string.h>
#include <conio.h>
#include <sys/stat.h>
#include <iostream>
using namespace std;
typedef struct student
{
    char name[10];
    int sno;
    int cno;
    float score[10];
    struct student *next;
} stu,*stupt;
stupt st=NULL;//学生信息的头指针
stupt qt=NULL;//学生信息的尾指针
FILE* fp;//文件指针
//清空缓冲区函数
void clear(void)
{
    char ch;
    do
    {
        ch=getchar();
    }
    while(ch!='\n');
}
//主菜单
void Printf_help()
{
    cout<<" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ "<<endl;
    cout<<" |*尊敬的用户请您选择操作:                                *|"<<endl;
    cout<<" |* 1.通过键盘输入某位学生某次作业的分数                   *|"<<endl;
    cout<<" |* 2.从文件导入学生信息                                   *|"<<endl;
    cout<<" |* 3.给定学号,显示某位学生作业完成情况                   *|"<<endl;
    cout<<" |* 4.给定某个班级的班号,显示该班所有学生的作业完成情况   *|"<<endl;
    cout<<" |* 5.给定学生的学号,修改该学生的作业完成信息             *|"<<endl;
    cout<<" |* 6.给定学生的学号,删除该学生的信息                     *|"<<endl;
    cout<<" |* 7.显示各类统计信息                                     *|"<<endl;
    cout<<" |* 8.清屏                                                 *|"<<endl;
    cout<<" |* 9.导出至文件                                           *|"<<endl;
    cout<<" |* 0.退出系统                                             *|"<<endl;
    cout<<" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ "<<endl;
    cout<<" 请选择:";
}
//输入成绩
stupt inpu(stupt p)
{
    int n;
    int m=0;
    int flag;
    while(m<10)//成绩初始化为0
    {
        p->score[m]=0;
        m++;
    }
    cout<<"请您输入姓名:";
    cin>>p->name;
    clear();
    cout<<"请您输入学号(如:2017013030):";
    cin>>p->sno;
    clear();
    cout<<"请您输入班级号(如:1701):";
    cin>>p->cno;
    clear();
    do
    {
        cout<<"请您输入第几次作业(1~10):";
        cin>>n;
        clear();
        cout<<"请您输入该次作业成绩(0~100):";
        cin>>p->score[n-1];
        clear();//清空缓冲区
        cout<<"您是否继续输入该生成绩,退出请按q,其他键继续:";
        flag=getchar();
        clear();//清空缓冲区堆积
    }
    while(flag!='q');
    return p;
}
void input(stupt &st,stupt &qt)
{
    stupt p,q;
    p=q=NULL;
    p=(stupt)malloc(sizeof(stu));
    if(p==NULL) exit(1);
    p=inpu(p);
    if(st==NULL)
        st=qt=p;
    else if(qt!=NULL)
    {
        qt->next=p;    //尾指针非空(及链表已存在)接着尾指针建立链表
        qt=p;
    }
    if(p!=NULL&&qt!=NULL)
    {
        qt->next=NULL;
    }
    Printf_help();
}
//导入成绩
void reads(stupt p,FILE* fp)
{
    fscanf(fp,"%s",p->name);
    fscanf(fp,"%d",&p->sno);
    fscanf(fp,"%d",&p->cno);
    fscanf(fp,"%f",&p->score[0]);
    fscanf(fp,"%f",&p->score[1]);
    fscanf(fp,"%f",&p->score[2]);
    fscanf(fp,"%f",&p->score[3]);
    fscanf(fp,"%f",&p->score[4]);
    fscanf(fp,"%f",&p->score[5]);
    fscanf(fp,"%f",&p->score[6]);
    fscanf(fp,"%f",&p->score[7]);
    fscanf(fp,"%f",&p->score[8]);
    fscanf(fp,"%f",&p->score[9]);
}
void filep_read_to_st(stupt &st,FILE* fp)
{
    stupt p;
    while(1)
    {
        p=(stupt)malloc(sizeof(stu));
        reads(p,fp);
        if(feof(fp)) break;
        if(st==NULL) st=qt=p;
        else if(qt!=NULL)
        {
            qt->next=p;    //尾指针非空(即链表已存在)接着尾指针建立链表
            qt=p;
        }

    }
    if(feof(fp))
    {
        qt->next=NULL;    //如果文件结束,尾指针next指空
    }
    if(st!=NULL&&feof(fp))
        cout<<"友情提示:您的文件导入成功!"<<endl;
    else
        cout<<"友情提示:您的文件导入失败,请重新导入!"<<endl;
}
void readfile(stupt &st,FILE* fp)
{
    char flag_1;
    char filename[90];
    cout<<"按任意键继续,退出请按q:";
    flag_1=getchar();
    if(flag_1=='q')
    {
        return;
    }
lab_2:
    cout<<"请您输入导入路径(请确保导入路径合法)(如c:.\\student.txt):";
    cin>>filename;
    clear();
    if(access(filename,0)==1)
    {
        cout<<"友情提示:您的文件路径不合法或文件不存在,请重新选择!"<<endl;
        goto lab_2;
    }
    fp=fopen(filename,"rb");
    if(fp==NULL)
    {
        cout<<"友情提示:打开"<<filename<<"文件失败,请返回主菜单重试!"<<endl;
            return;
    }
    else
        filep_read_to_st(st,fp);
        fclose(fp);
}
//按学号查询
void printf_score(stupt p)
{
    int n=0;
    cout<<"前十次成绩如下:"<<endl;
    cout<<"成绩1 成绩2 成绩3 成绩4 成绩5 成绩6 成绩7 成绩8 成绩9 成绩10"<<endl;
    cout<<"-------------------------------------------------------------"<<endl;
    while(n<10)
    {
        printf("%-6.1f",p->score[n]);
        n++;
    }
    cout<<endl;
    cout<<"-------------------------------------------------------------"<<endl;
}
void search(stupt &st,int snum)
{
    stupt p,q;
    if(st==NULL)
    {
        cout<<"未建立学生信息表,请返回主菜单输入或导入所有学生的信息"<<endl;
        return;
    }
    else
    {
        p=st;
        q=p->next;
    }
    if(p->sno==snum)
    {
        printf_score(p);    //查找成功输出并返回上级函数
        return;
    }
    while(q!=NULL)
    {
        if(q->sno==snum)
        {
            printf_score(q);    //查找成功输出并返回上级函数
            return;
        }
        q=q->next;//下一个
    }
    cout<<"查询失败,该学号学生信息不存在"<<endl;
}
void sno_search(stupt &st)
{
    int snum;
    char flag;
    do
    {
        cout<<"请输入要查找的学生学号(如:2017013031):";
        cin>>snum;
        clear();//清空scanf结束时进入缓冲的enter符
        search(st,snum);
        cout<<"退出请按q,其它任意键继续查找:";
        flag=getchar();
        clear();//清空回车符
    }
    while(flag!='q');
    if(flag=='q')
    {
        Printf_help();
    }
}
//给定班级查询
void printf_infor(stupt p)
{
    printf("%-5d%-8s%-12d%-6.1f%-6.1f%-6.1f%-6.1f%-6.1f%-6.1f%-6.1f%-6.1f%-6.1f%-6.1f\n",
           p->cno,p->name,p->sno,p->score[0],p->score[1],p->score[2],p->score[3],p->score[4],
           p->score[5],p->score[5],p->score[7],p->score[8],p->score[9]);
    cout<<"──────────────────────────────────────—————"<<endl;
}
void search_2(stupt st,int clnum)
{
    stupt p,q;
    int f=0;
    if(st==NULL)
    {
        cout<<"未建立学生信息表,请返回主菜单输入所有学生的信息"<<endl;
        return;
    }
    else
    {
        p=st;
        q=p->next;
    }
    cout<<"班级  姓名    学号       成绩1 成绩2 成绩3 成绩4 成绩5 成绩6 成绩7 成绩8 成绩9 成绩10"<<endl;
    cout<<"──────────────────────────────────────—————"<<endl;
    if(p->cno==clnum)
    {
        printf_infor(p);
        f++;
    }//查找成功输出
    while(q!=NULL)
    {
        if(q->cno==clnum)
        {
            printf_infor(q);
            f++;
        }//查找成功输出
        q=q->next;//下一个
    }
    if(f==0)
    {
        cout<<"没有该班级学生信息"<<endl;
    }

}
void  cno_search(stupt st)
{
    int clnum;
    char flag;
    do
    {
        cout<<"请输入班级(如:1701):";
        cin>>clnum;
        clear();//清空scanf结束时进入缓冲的enter符
        search_2(st,clnum);
        cout<<"退出请按q,其它任意键继续查找:";
        flag=getchar();
        clear();//清空回车符
    }
    while(flag!='q');
    if(flag=='q')
    {
        Printf_help();
    }
}
//修改成绩
void change_score(stupt &p)
{
    int n;
    char flag;
    do
    {
        cout<<"请输入:要修改的作业的次数(1~10):";
        cin>>n;
        clear();
        printf("原成绩为:%.1f\n",p->score[n-1]);
        cout<<"请输入:该次作业新成绩(0~100):";
        cin>>p->score[n-1];
        clear();//清空缓冲区
        cout<<"是否继续修改该生成绩,退出请按q,其他键继续:";
        flag=getchar();
        clear();
    }
    while(flag!='q');
}
void change(stupt &p)
{
        clear();
        cout<<"班级  姓名    学号       成绩1 成绩2 成绩3 成绩4 成绩5 成绩6 成绩7 成绩8 成绩9 成绩10"<<endl;
        cout<<"──────────────────────────────────────—————"<<endl;
        printf_infor(p);
        change_score(p);
}
void search_3(stupt &st,int snum)
{
    stupt p,q;
    int f=0;
    if(st==NULL)
    {
        cout<<"未建立学生信息表,请返回主菜单输入或导入所有学生的信息"<<endl;
        return;
    }
    else
    {
        p=st;
        q=p->next;
    }
    if(p->sno==snum)
    {
        change(p);    //查找成功并修改
        f++;
        return;
    }
    while(q!=NULL)
    {
        if(q->sno==snum)
        {
            change(q);    //查找成功并修改
            return;
        }
        q=q->next;//下一个
    }
    if(f==0)
    {
        cout<<"没有该学生信息"<<endl;
    }
}
void sno_change(stupt &st)
{
    int snum;
    char flag;
    do
    {
        cout<<"请输入要修改学生学号(如2017013031):";
        cin>>snum;
        clear();//清空scanf结束时进入缓冲的enter符
        search_3(st,snum);
        cout<<"退出请按q,其它任意键继续按学号查找修改信息:";
        flag=getchar();
        clear();//清空回车符
    }
    while(flag!='q');
    if(flag=='q')
    {
        Printf_help();
    }
}
//删除学生信息
void delete_pt(stupt &st,int snum)
{
    stupt p,q;
    if(st==NULL)
    {
        cout<<"未建立学生信息表,请返回主菜单输入或导入所有学生的信息"<<endl;
        return;
    }
    else
    {
        p=st;
        q=p->next;
    }
    if(p->sno==snum)
    {
        st=q;    //查找成功删除并返回上级函数
        cout<<"班级  姓名    学号       成绩1 成绩2 成绩3 成绩4 成绩5 成绩6 成绩7 成绩8 成绩9 成绩10"<<endl;
        cout<<"──────────────────────────────────────—————"<<endl;
        printf_infor(p);
        free(p);
        cout<<"上面信息删除成功!"<<endl;
        return;
    }
    while(q!=NULL)
    {
        if(q->sno==snum)
        {
            p->next=q->next;    //查找成功删除并返回上级函数
            cout<<"班级  姓名    学号       成绩1 成绩2 成绩3 成绩4 成绩5 成绩6 成绩7 成绩8 成绩9 成绩10"<<endl;
            cout<<"──────────────────────────────────────—————"<<endl;
            printf_infor(q);
            free(q);
            cout<<"上面信息删除成功!"<<endl;
            return;
        }
        else//下一个
        {
            p=q;
            q=p->next;
        }
    }
    cout<<"删除失败,该学号学生信息不存在"<<endl;
}

void sno_delete(stupt &st)
{
    int snum;
    char flag;
    do
    {
        cout<<"请输入要删除的学生学号(如:2017013031):";
        cin>>snum;
        clear();//清空scanf结束时进入缓冲的enter符
        delete_pt(st,snum);
        cout<<"返回请按q,其它任意键继续删除:";
        flag=getchar();
        clear();//清空回车符
    }
    while(flag!='q');
    if(flag=='q')
    {
        Printf_help();
    }
}
//查询成绩,,按学号班级,降序
void printf_help_3()
{
    cout<<" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ "<<endl;
    cout<<" |*请选择操作:                                         *|"<<endl;
    cout<<" |* 1.按学号查看学生平时成绩                            *|"<<endl;
    cout<<" |* 2.按班级查看学生平时成绩                            *|"<<endl;
    cout<<" |* 3.按平时成绩降序排序(操作执行后将会对学生信息排序 )*|"<<endl;
    cout<<" |* 0.返回主菜单                                        *|"<<endl;
    cout<<" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ "<<endl;
    cout<<"请选择:";
}

float aver(stupt p)
{
    int n=0;
    float sum=0;//和初始化为0
    while(n<10)
    {
        sum+=p->score[n];
        n++;
    }
    return sum;
}
void search_4(stupt st,int snum)
{
    stupt p,q;
    int f=0;
    float sum;
    cout<<"-----------------------------------------------------------------------------"<<endl;//分行符
    if(st==NULL)
    {
        cout<<"未建立学生信息表,请返回主菜单输入或导入所有学生的信息"<<endl;
        return;
    }
    else
    {
        p=st;
        q=p->next;
    }
    if(p->sno==snum)
    {
        sum=aver(p);
        printf("姓名:%-10s学号:%-12d班级:%-10d作业完成平时成绩:%.1f\n",p->name,p->sno,p->cno,sum/10);
        f++;
        cout<<"-----------------------------------------------------------------------------"<<endl;//分行符
        return;
    }//查找成功并输出平均值
    while(q!=NULL)
    {
        if(q->sno==snum)
        {
            sum=aver(q);
            printf("姓名:%-10s学号:%-12d班级:%-10d作业完成平时成绩:%.1f\n",q->name,q->sno,q->cno,sum/10);
            f++;
            cout<<"-----------------------------------------------------------------------------"<<endl;//分行符
            return;
        }//查找成功并输出平均值
        q=q->next;//下一个
    }
    if(f==0)
    {
        cout<<"没有该学生信息"<<endl;
    }

}
void snum_check_aver(stupt st)
{
    int snum;
    cout<<"请输入学号(如:2017013032):";
    cin>>snum;
    clear();//清空scanf结束时进入缓冲的enter符
    search_4(st,snum);
}

void search_5(stupt st,int cnum)
{
    stupt p,q;
    int f=0;
    float sum;
    cout<<"-----------------------------------------------------------------------------"<<endl;//分行符
    if(st==NULL)
    {
        cout<<"未建立学生信息表,请返回主菜单输入或导入所有学生的信息"<<endl;
        return;
    }
    else
    {
        p=st;
        q=p->next;
    }
    if(p->cno==cnum)
    {
        sum=aver(p);
        printf("姓名:%-10s学号:%-12d班级:%-10d作业完成平时成绩:%.1f\n",p->name,p->sno,p->cno,sum/10);
        cout<<"-----------------------------------------------------------------------------"<<endl;//分行符
        f++;
    }//查找成功并输出平均值
    while(q!=NULL)
    {
        if(q->cno==cnum)
        {
            sum=aver(q);
            printf("姓名:%-10s学号:%-12d班级:%-10d作业完成平时成绩:%.1f\n",q->name,q->sno,q->cno,sum/10);
            cout<<"-----------------------------------------------------------------------------"<<endl;//分行符
            f++;
        }//查找成功并输出平均值
        q=q->next;//下一个
    }
    if(f==0)
    {
        cout<<"没有该班级的信息"<<endl;
    }
}
void cnum_check_aver(stupt st)
{
    int cnum;
    cout<<"请输入班级(如:1701):";
    cin>>cnum;
    clear();//清空scanf结束时进入缓冲的enter符
    search_5(st,cnum);
}
void insert_emp1(stupt &emp1,stupt q)
{
    stupt pt1,pt2;
    pt1=emp1;
    pt2=pt1->next;
    while(pt2!=NULL)
    {
        if(aver(q)>aver(pt2))//插到pt2之前
        {
            pt1->next=q;
            q->next=pt2;
            return;
        }
        else//指针后移
        {
            pt1=pt2;
            pt2=pt1->next;
        }
    }
    pt1->next=q;//比所有的都不大,插到末尾
    q->next=NULL;
}
void descending_order_check(stupt &st)
{
    stupt emp1,head1,head2,pt;
    float sum;
    cout<<"-----------------------------------------------------------------------------"<<endl;//分行符
    if(st==NULL)
    {
        cout<<"未建立学生信息表,请返回主菜单输入或导入所有学生的信息"<<endl;
        return;
    }
    head1=(stupt)malloc(sizeof(stu));
    head2=(stupt)malloc(sizeof(stu));//另一个空链表头指针,将st有序插入到head2
    head1->next=st->next;
    st->next=NULL;
    head2->next=st;
    pt=head1->next;
    while(pt!=NULL)
    {
        head1->next=pt->next;
        insert_emp1(head2,pt);
        pt=head1->next;
    }
    emp1=head2->next;
    st=emp1;
    while(emp1!=NULL)
    {
        sum=aver(emp1);
        printf("姓名:%-10s学号:%-12d班级:%-10d作业完成平时成绩:%-10.3f\n",emp1->name,emp1->sno,emp1->cno,sum/10);
        cout<<"-----------------------------------------------------------------------------"<<endl;//分行符
        emp1=emp1->next;
    }
}
void statistics_result(stupt &st)
{
    char flag;
    printf_help_3();
    while((flag=getchar())!='0')
    {

        clear();
        switch(flag)
        {
        case '1':
        {
            cout<<"您选择了:1.按学号查看学生平时成绩"<<endl;
            snum_check_aver(st);
            break;
        }
        case '2':
        {
            cout<<"您选择了:2.按班级查看学生平时成绩"<<endl;
            cnum_check_aver(st);
            break;
        }
        case '3':
        {
            cout<<"您选择了:3.查看学生平时成绩降序序列"<<endl;
            descending_order_check(st);
            break;
        }

        default:
        {
            cout<<"非法输入,请重新选择!"<<endl;
            clear();
            break;
        }
        }
        printf_help_3();
    }
    if(flag=='0')
    {
        cout<<"您选择了:0.返回主菜单"<<endl;
        clear();
        Printf_help();
    }

}
//导出文件
void fileprintf(stupt st,FILE* fp)
{
    float sum;
    stupt pt;
    pt=st;
    while(pt!=NULL)
    {
        sum=aver(pt);
        fprintf(fp,"%-10s%-12d%-10d%-6.1f%-6.1f%-6.1f%-6.1f%-6.1f%-6.1f%-6.1f%-6.1f%-6.1f%-8.1f%-6.1f\r\n",pt->name,pt->sno,pt->cno,pt->score[0],pt->score[1],pt->score[2],pt->score[3],pt->score[4],pt->score[5],pt->score[6],pt->score[7],
                pt->score[8],pt->score[9],sum/10.0);
        pt=pt->next;
    }
    cout<<"文件导出成功 !"<<endl;

}
void creat_files(stupt st,FILE* fp)
{
    char filename[90];
lab_1:
    cout<<"请输入文件名及保存路径:";
    cin>>filename;
    clear();
    if(access(filename,0)==1)
    {
        cout<<"路径不合法,请重新输入!"<<endl;
        goto lab_1;
    }
    fp=fopen(filename,"ab+");
    if(fp==NULL)
    {
        cout<<"创建文件至"<<filename<<"失败,请返回主菜单重试!"<<endl;
        return;
    }
    else
        fprintf(fp,"姓名      学号        班级      成绩1 成绩2 成绩3 成绩4 成绩5 成绩6 成绩7 成绩8 成绩9 成绩10 平时成绩\r\n");
        fileprintf(st,fp);
        fclose(fp);
}
//-main-
int main()
{
//    system("color 3f");
    char a,ch;
    cout<<"                 ┄欢迎您使用学生作业完成情况管理程序┄                     "<<endl;
    Printf_help();
    while((a=getchar())!='0')
    {
        clear();
        switch(a)
        {
        case '1':
        {
            cout<<"您选择了:1.通过键盘输入某位学生某次作业的分数"<<endl;
            input(st,qt);
            break;
        }
        case '2':
        {
            cout<<"您选择了:2.从文件导入学生信息"<<endl;
            readfile(st,fp);
            Printf_help();
            break;
        }
        case '3':
        {
            cout<<"您选择了:3.给定学号,显示某位学生作业完成情况"<<endl;
            sno_search(st);
            break;
        }
        case '4':
        {
            cout<<"您选择了:4.给定某个班级的班号,显示该班所有学生的作业完成情况"<<endl;
            cno_search(st);
            break;
        }
        case '5':
        {
            cout<<"您选择了:5.给定某位学生的学号,修改该学生的作业完成信息"<<endl;
            sno_change(st);
            break;
        }
        case '6':
        {
            cout<<"您选择了:6.给定某位学生的学号,删除该学生的信息"<<endl;
            sno_delete(st);
            break;
        }
        case '7':
        {
            cout<<"您选择了:7.显示各类统计信息"<<endl;
            statistics_result(st);
            break;
        }
        case '8':
        {
            cout<<"您选择了:8.清屏"<<endl;
            system("CLS");
            Printf_help();
            break;
        }
        case '9':
        {
            cout<<"您选择了:9.导出文件"<<endl;
            creat_files(st,fp);
            Printf_help();
            break;
        }
        default:
        {
            cout<<"非法输入,请重新选择!"<<endl;
            Printf_help();
            break;
        }

        }
    }
    if(a=='0')
    {
        cout<<"您选择了:0.退出系统"<<endl;
        cout<<"退出系统时需要导出文件,否则之前操作无效!"<<endl;
        cout<<"按q返回,其它任意键继续"<<endl;
        clear();
        if((ch=getchar())=='q')
        {
            clear();
        }
        cout<<"                           ┄谢谢使用┄                                  "<<endl;
    }
    return 0;
}
  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-08-20 14:54:29  更:2021-08-20 14:56:14 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/27 5:36:37-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计