当前位置:编程学习 > VC++ >>

vC++里怎么弄 学生成绩管理系统

1.输出菜单
2.录入学员信息

3.显示学员信息

4.成绩排序信息

5.添加学员信息

5--删除学员信息

6.退出系统

 

 

#include<stdio.h>
#include<conio.h>
#include <stdlib.h>
#include<string.h>
#define MAX 100

void input();
void sort();
void show();
void del();
void quit();


int i=0;
int k,j;
char ch;

struct student
{
    int no;
    char name[20];
    float score1;
    float score2;
    float score3;
    float score4;
    float score5;
    float sort;
    float ave;
    float sum;
};
struct student stu[MAX],*p;

void main()/*主函数*/
{
    char a;
    do
    {
        system("cls");
        x: printf("\n\n\n\n"
        "\t\t\t@*******欢迎来到成绩管理系统*******@\n"
        "\t\t\t$__________________________________$\n"
        "\t\t\t$ 请选择操作(0-7) $\n"
        "\t\t\t$__________________________________$\n"
        "\t\t\t$ 1--录入学员信息 $\n"
        "\t\t\t$ 2--显示学员信息 $\n"
        "\t\t\t$ 3--成绩排序信息 $\n"
        "\t\t\t$ 4--添加学员信息 $\n"
        "\t\t\t$ 5--删除学员信息 $\n"
        "\t\t\t$ 0--退出系统 $\n"
        "\t\t\t$----------------------------------$\n"
        "\t\t\t@**********************************@\n");
        fflush(stdin);
        cscanf("%c",&a);
        system("cls");

        switch(a)
        {
            case '1':
                input();break;
            case '2':
                show();break;
            case '3':
                sort();break;
            case '4':
                input();break;
            case '5':
                del();break;
            case '0':
                quit();break;
            default:
                goto x;
        }
    }while(1);
/*至此功能选择结束*/
}

void input()/*原始数据录入模块*/
{

        printf("\n\t\t**********欢迎来到成绩管理系统***********\t\n"
        "\n\n\t\t\t 现在请录入学员信息吧^-^\n"
        "\n\t输入第%d个学员的信息\n",i+1);
        printf("\t输入学生编号:");
        scanf("%d",&stu[i].no);
        printf("\t输入学员姓名:");
        scanf("%s",stu[i].name);
        printf("\t输入学员语文成绩:");
        scanf("%f",&stu[i].score1);
        printf("\t输入学员数学成绩:");
        scanf("%f",&stu[i].score2);
        printf("\t输入学员英语成绩:");
        scanf("%f",&stu[i].score3);
        printf("\t输入学员C语言成绩:");
        scanf("%f",&stu[i].score4);
        printf("\t输入学员计算机成绩:");
        scanf("%f",&stu[i].score5);

        stu[i].sum=stu[i].score1+stu[i].score2+stu[i].score3+stu[i].score4+stu[i].score5;
        stu[i].ave=stu[i].sum/5;

        printf("\n\n");
        i++;
        printf("\t\t\t是否继续输入?(Y/y继续 任意键回主菜单)");
        ch=getch();
       
        if(getch()=='Y'||getch()=='y')
        {
            system("cls");
            input();
        }
}


void sort()/*排序数据函数*/
{
     student temp;
  for(k=1;k<i;k++)
     {
        for(j=1;j<=i-k;j++)
        {
            if(stu[j-1].ave<stu[j].ave)
            {
                temp=stu[j];
                stu[j]=stu[j-1];
                stu[j-1]=temp;
            }
        }
    }
    show();
}

void show()/*显示数据函数*/
{
    char as;

        printf("\n\t\t**********欢迎来到成绩管理系统***********\t\n");
        printf("\t\t\t班级学员信息列表\n");
        printf("编号\t姓名\t成绩1\t成绩2\t成绩3\t成绩4\t成绩5\t平均值\t总分\n");
        for(k=0;k<i&&stu[k].name[0];k++)
            printf("%d\t%s\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\n",stu[k].no
            ,stu[k].name,stu[k].score1,stu[k].score2,stu[k].score3,stu[k].score4,
             stu[k].score5,stu[k].ave,stu[k].sum);
        printf("\t\t按任意键返回主菜单.");
        fflush(stdin);
        as=getch();
   
}


void del()/*删除数据函数*/
{
    int inum;
    printf("\n\t\t**********欢迎来到成绩管理系统***********\t\n");
    printf("输入要删除学员的编号:");
    scanf("%d",&inum);
    for(k=0;k<i;k++)
    {
        if(stu[k].no==inum)
        {
            if(k==i)
            {
                i-=1;
            }
            else
            {
                stu[k]=stu[i-1];
                i-=1;
            }
        sort();
        break;
        }
    }
}


void quit()
{
    system("cls");
    printf("\n\n\n\n"
    "\t\t\t@********学生成绩管理系统********@\n"
    "\t\t\t$--------------------------------$\n"
    "\t\t\t$ $\n"
    "\t\t\t$--------->感谢你的使用<---------$\n"
    "\t\t\t$ $\n"
    "\t\t\t$ $\n"
    "\t\t\t@********************************@\n");

    break(0);
}

 

那位高手帮我看一下,我这个错在哪里啊,谢谢

追问:

还是有错啊

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,