用c++编写学生成绩管理系统

本文介绍如何用C++面向过程设计一个学生成绩管理系统,包括用户登录验证、学生成绩录入、按学号或姓名查询、成绩编辑功能及统计最高分、最低分和平均分。通过实例展示了如何操作密码验证、菜单选择和关键功能的实现。
摘要由CSDN通过智能技术生成

C语言程序的大作业----编写一个学生成绩管理系统

学生成绩管理系统

一,设计要求:

1.平台:Windows 10 ,Dev-C++5.11
2.语言:C++,面向过程
3.主要功能:

设计一个学生成绩管理系统。此系统可包括以下模块:
(1) 系统欢迎界面;
(2) 用户登录(密码验证)功能,默认密码请设为学号后两位;
(3) 功能菜单选择界面;
(4) 学生成绩信息的录入;
(5) 学生成绩信息的查询(按学号或姓名查询);
(6) 学生成绩信息的编辑(含修改与删除);
(7) 学生成绩信息的统计(含最高分、最低分、平均分、排序);
(8) 学生信息的显示(全部显示);

二、总体设计

整个程序运用《C语言程序设计基础教程》这本书的所学内容,设计一个学生成绩查询系统,其内容包括学生成绩的录入、查询、编辑、统计等功能,若用户选择错误则要有错误提示,并返回主菜单要求用户重新选择。主函数main()调用Welcome()和Password()函数,Welcome()函数是欢迎界面函数,里面有学院、专业、班级、学号、姓名、日期等信息,Password()函数是输入密码函数,若输入密码正确,则进入下一个菜单,若不正确,则会显示重新输入密码。

在这里插入图片描风格

三、详细设计

#include<stdio.h>//头文件 
#include<string.h>
#include<conio.h>
#include<stdlib.h>

struct Score//全局变量 
{
   char num[12];//学号
   char name[10];//姓名
   int cs;//C成绩
   int gs;//高数成绩
   int ys;//英语成绩
   int sum;//三科成绩总分
}stu[100];

int count=0;//总人数设为全局变量并赋初值为0
int mark_sort=0;//标识是否已排序

void Welcome(),Password(),Menu(),Input(),Query(),Query_num(),Query_name(),Edit(),Edit_edit(),Edit_del(),Statistic(),Sta_max(),
Sta_min(),Sta_avg(),Sta_sort(),Output();//要用到的函数 

void Welcome()// 欢迎界面函数
{
system("title 程序设计课程设计"); //设置会话的窗口标题为“程序设计课程设计”
system("color F5"); //设置背景色为亮白色,字体颜色为紫色
system("cls"); //清屏
printf("\n\n\t\t|----------------------------------------|\n");
printf("\t\t|----------------------------------------|\n");
printf("\t\t|       《程序设计》课程设计             |\n");
printf("\t\t|        学生成绩管理系统                |\n");
printf("\t\t|----------------------------------------|\n");
printf("\t\t|----------------------------------------|\n");
printf("\n\t\t 程序设计:**学院\n");
printf("\n\t\t 专业:******\n");
printf("\n\t\t 班级:20X\n");
printf("\n\t\t 学号:000000000\n");
printf("\n\t\t 姓名:XXX\n");
printf("\n\t\t 2021.03.15\n");
}

void Password()//输入密码 
{
   char mm[20];
   printf("\n\n\n");
   printf("\t\t 请输入登录密码:");
   gets(mm);
   if(strcmp(mm,"00")==0)//判断两个字符串是否相等(不能直接用“==”,只能用字符串比较函数)
      Menu();
   else
      {
      	printf("\n");
        printf("\t\t 输入密码有误,请重新输入......\n");
        Password();
      }
}

void Menu()//菜单 
{
   system("cls");
   printf("\n\n\n\t\t---欢迎使用本系统,请选择下列菜单---\n\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("\t\t\t请选择菜单选项1-6:");
   switch(getche())
     {
       case '1':system("cls");Input();break;
       case '2':system("cls");Query();break;
       case '3':system("cls");Edit();break;
       case '4':system("cls");Statistic();break;
       case '5':system("cls");Output();break;
       case '6':printf("\n\t\t按任意键退出系统....\n");getch();exit(0);break;
       default:printf("\n\n\t\t\t输入错误,请重新输入1~6:\n");getch();Menu();
     }
   printf("\n\t\t按任意键退出系统....\n");getch();exit(0);
}

void Input()//录入 
{
   int i,n;
   char str1[4],str2[12];
   printf("\n\n\t\t\t---学生信息录入---\n");
   printf("\n请输入待录入的学生人数:");
   scanf("%d",&count);
   for(i=0;i<count;i++)
    {
      itoa(i+1,str1,10); 
      if(i<9)
       {
         strcpy(str2,"202099900");
         strcat(str2,str1);//将1位数序号的字符串连接到"202099900"后
       }
      else if(i<99)
       { 
         strcpy(str2,"202099990");
         strcat(str2,str1);//将2位数序号的字符串连接到"202099990"后
       }
      else
       {
         strcpy(str2,"2020699999");
         strcat(str2,str1);//将3位数序号的字符串连接到"202099999"后
       }
         strcpy(stu[i].num,str2);//形成每位同学各自学号
    }
   for(i=0;i<count;i++)
    {
      printf("\n--------------------\n");
      printf("输入学号为%s同学的相关信息:\n",stu[i].num);
      printf("姓名:");
      scanf("\n");
      gets(stu[i].name);
      printf("C成绩:");
      scanf("%d",&stu[i].cs);
      printf("高数成绩:");
      scanf("%d",&stu[i].gs);
      printf("英语成绩:");
      scanf("%d",&stu[i].ys);
   }
   for(i=0;i<count;i++)//计算每位学生的成绩总分
    {
     stu[i].sum=stu[i].cs+stu[i].gs+stu[i].ys;
    }
   printf("\n--------------------\n");
   printf("已录入的全体学生信息:\n");
   printf("学号          姓名\tC成绩\t高数成绩  英语成绩  三门成绩总分\n");
   for(i=0;i<count;i++)
    {
     printf("%s",stu[i].num);
     printf("    %s",stu[i].name);
     printf("\t%3d",stu[i].cs);
     printf("\t%3d",stu[i].gs);
     printf("\t   %3d",stu[i].ys);
     printf("       %3d\n",stu[i].sum);
    }
   printf("\n\n按任意键返回主菜单...");
   getch();
   Menu();
}

void Query()//查询 
{
   system("cls");
   printf("\n\n\n\t\t\t---学生信息查询---\n\n");
   printf("\t\t\t  1.按学号查询\n");
   printf("\t\t\t  2.按姓名查询\n");
   printf("\t\t\t  3.返回主菜单\n");
   printf("\t\t************************\n");
   printf("\t\t\t请选择菜单选项1-3:");
   switch(getche())
    {
     case '1':system("cls");Query_num();break; 
     case '2':system("cls");Query_name();break;
     case '3':system("cls");Menu();break;
     default:printf("\n\n选择的菜单选项有误,按任意键返回...");getch();Query();
    } 
}//调用Query_num()、Query_name()等函数

void Query_num()//按学号查找 
{
   char find_num[12];
   int i,mark=0;
   printf("\n\n\t\t************************\n");
   printf("\t\t   请输入要查询的学号:");
   scanf("\n");
   gets(find_num);
   for(i=0;i<count;i++)
    {
     if(strcmp(stu[i].num,find_num)==0)
      {
       mark=1;
       break;
      }
    }
   if(mark==1)//以下程序段判断是否存在
    {
     printf("\n--------------------\n");
     printf("已查到学生信息:\n");
     printf("学号          姓名\tC成绩\t高数成绩  英语成绩  三门成绩总分\n");
    printf("%s",stu[i].num);
     printf("    %s",stu[i].name);
     printf("\t%3d",stu[i].cs);
     printf("\t%3d",stu[i].gs);
     printf("\t   %3d",stu[i].ys);
     printf("       %3d\n",stu[i].sum);
    }
   else
   printf("\n查无此学生!\n");
   printf("\n\n按任意键返回...");
   getch();
   Query();
}

void Query_name()//按姓名 
{
   char find_name[10];
   int i,mark=0;
   printf("\n\n\t\t************************\n");
   printf("\t\t           请输入要查询的姓名:");
   scanf("\n");
   gets(find_name);
   for(i=0;i<count;i++)
    {
     if(strcmp(stu[i].name,find_name)==0)
       {
         mark=1;break;
       }
    }
    if(mark==1)
     {
       printf("\n--------------------\n");
       printf("已查到学生信息:\n");
       printf("学号          姓名\tC成绩\t高数成绩  英语成绩  三门成绩总分\n");
     printf("%s",stu[i].num);
     printf("    %s",stu[i].name);
     printf("\t%3d",stu[i].cs);
     printf("\t%3d",stu[i].gs);
     printf("\t   %3d",stu[i].ys);
     printf("       %3d\n",stu[i].sum);
     }
    else
      printf("\n查无此学生!\n");
      printf("\n\n按任意键返回...");
    getch();
    Query();
}

void Edit()//编辑 
{
   system("cls");
   printf("\n\n\n\t\t\t---学生信息编辑---\n\n"); 
   printf("\t\t\t1.学生信息修改\n");
   printf("\t\t\t2.学生信息删除\n");
   printf("\t\t\t3.返回主菜单\n");
   printf("\t\t************************\n");
   printf("\t\t\t请选择菜单选项1-3:");
switch(getche())
{
   case '1':system("cls");Edit_edit();break;
   case '2':system("cls");Edit_del();break;
   case '3':system("cls");Menu();break;
   default:printf("\n\n选择的菜单选项有误,按任意键返回...");getch();Edit();
}//调用Edit_edit()、 Edit_del() 等函数
}

void Edit_edit()//修改 
{
   char find_num[12],yn;
   int i,mark=0;
   printf("\n\n\t\t     ************************\n");
   printf("\t\t      请输入要修改的学生学号:");
   scanf("\n");
   gets(find_num);
   for(i=0;i<count;i++)//以下程序段完成按学号查询
    {
      if(strcmp(stu[i].num,find_num)==0)
        {
           mark=1;break;
        }
    }
   if(mark==1)//以下程序段判断是否存在
     {
      printf("\n--------------------\n");
      printf("待修改的学生信息:\n");
      printf("学号          姓名\tC成绩\t高数成绩  英语成绩  三门成绩总分\n");
      printf("%s",stu[i].num);
      printf("    %s",stu[i].name);
      printf("\t%3d",stu[i].cs);
      printf("\t%3d",stu[i].gs);
      printf("\t   %3d",stu[i].ys);
      printf("       %3d\n",stu[i].sum);
      printf("\n--------------------\n");
      printf("确认修改以上学生信息(y/n)?");
      yn=getche();
      if(yn=='y'||yn=='Y')
         {
            printf("\n\n--------------------\n");
            printf("修改学号为%s同学的相关信息:\n",stu[i].num);
            printf("姓名:");
            scanf("\n");
            gets(stu[i].name);
            printf("C成绩:");
            scanf("%d",&stu[i].cs);
            printf("高数成绩:");
            scanf("%d",&stu[i].gs);
            printf("英语成绩:");
            scanf("%d",&stu[i].ys);
            stu[i].sum=stu[i].cs+stu[i].gs+stu[i].ys;//计算三门成绩总分
            printf("\n--------------------");
            printf("\n已完成信息修改,按任意键返回...");
            getch();
            Edit();
         }
      else
        Edit();
     }
   else
    {
      printf("\n--------------------");
      printf("\n查无此学生!\n");
    }
   printf("\n\n按任意键返回...");
   getch();
   Edit();
}

void Edit_del()//删除学生信息 
{
   char find_num[12],yn;
   int i,mark=0;
   printf("\n\n\t\t          ************************\n");
   printf("\t\t    请输入要删除的学生学号:");
   scanf("\n");
   gets(find_num);
   for(i=0;i<count;i++)
    {
     if(strcmp(stu[i].num,find_num)==0)
      {      
        mark=1;break;
      }     
    } 
   if(mark==1)
     {
       printf("\n\n--------------------\n");
       printf("待删除的学生信息:\n");
       printf("学号          姓名\tC成绩\t高数成绩  英语成绩  三门成绩总分\n");
       printf("%s",stu[i].num);
       printf("    %s",stu[i].name);
       printf("\t%3d",stu[i].cs);
       printf("\t%3d",stu[i].gs);
       printf("\t   %3d",stu[i].ys);
       printf("       %3d\n",stu[i].sum);
       printf("\n--------------------\n");
       printf("确认删除以上学生信息(y/n)?");
       yn=getche();
       if(yn=='y'||yn=='Y')
         {
           if(count>1)
             {
                int j;//以下程序段完成学生人数超过1的信息删除,即将当前位置的后续学生信息依次替换前一位学生
                for(j=i;j<=count;j++)
                 { 
                  strcpy(stu[j].num,stu[j+1].num);
                  strcpy(stu[j].name,stu[j+1].name);
                  stu[j].cs=stu[j+1].cs;
                  stu[j].gs=stu[j+1].gs;
                  stu[j].ys=stu[j+1].ys;
                 }
             }
           count--;//学生人数减1
           printf("\n\n--------------------");
           if(count==0)
               printf("\n已完成信息删除,且没有任何学生信息,按任意键返回...");
           else
                printf("\n已完成信息删除,按任意键返回...");
           getch();
           Edit();
         }
      else
        Edit();
     }
    else
     {
        printf("\n--------------------");
        printf("\n查无此学生!\n");
     }
   printf("\n\n按任意键返回...");
   getch();
   Edit();
}
 
void Statistic()//统计 
{
system("cls");
printf("\n\n\n\t\t\t---学生信息统计---\n\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************************\n");
printf("\t\t\t请选择菜单选项1-5:");
switch(getche())
{
case'1':Sta_max();break;
case'2':Sta_min();break;
case'3':Sta_avg();break;
case'4':Sta_sort();break;
case'5':Menu();break;
default:printf("\n\n选择的菜单选项有误,按任意键返回...");getch();Menu();
}
}

void Sta_max()//统计最高分 
{
   int i,max,max_at=0;
   max=stu[0].sum;
   for(i=1;i<count;i++)
    {
     if(stu[i].sum>max)
       {
         max=stu[i].sum;
         max_at=i;
       }
    }
   printf("\n\n--------------------\n");
   printf("三门成绩总分最高分的学生信息:\n");
   printf("学号          姓名\tC成绩\t高数成绩  英语成绩  三门成绩总分\n");
   printf("%s",stu[max_at].num);
   printf("    %s",stu[max_at].name);
   printf("\t%3d",stu[max_at].cs);
   printf("\t%3d",stu[max_at].gs);
   printf("\t   %3d",stu[max_at].ys);
   printf("       %3d\n",stu[max_at].sum);
   printf("\n\n按任意键返回...");
   getch();
   Statistic();
}

void Sta_min()//统计最低分 
{
   int i,min,min_at=0;
   min=stu[0].sum;
   for(i=1;i<count;i++)
    {
      if(stu[i].sum<min)
       {
          min=stu[i].sum;
          min_at=i;
       }
    }
   printf("\n\n--------------------\n");
   printf("三门成绩总分最低分的学生信息:\n");
   printf("学号           姓名\tC成绩\t高数成绩   英语成绩   三门成绩总分\n");
   printf("%s",stu[min_at].num);
   printf("    %s",stu[min_at].name);
   printf("\t%3d",stu[min_at].cs);
   printf("\t%3d",stu[min_at].gs);
   printf("\t   %3d",stu[min_at].ys);
   printf("       %3d\n",stu[min_at].sum);
   printf("\n\n按任意键返回...");
   getch();
   Statistic();
}

void Sta_avg()//统计平均分 
{
   int i;
   float cs_avg=0,gs_avg=0,ys_avg=0;
   for(i=0;i<count;i++)
    {
      cs_avg+=stu[i].cs;
      gs_avg+=stu[i].gs;
      ys_avg+=stu[i].ys;
    }
   cs_avg/=count;
   gs_avg/=count;
   ys_avg/=count;
   printf("\n\n--------------------\n");
   printf("全体学生平均分信息:\n");
   printf("C平均分:%.2f\n",cs_avg);
   printf("高数平均分:%.2f\n",gs_avg);
   printf("英语平均分:%.2f\n",ys_avg);
   printf("\n\n按任意键返回...");
   getch();
   Statistic();
}

void Sta_sort()//按降序排序 
{
   struct Score temp;
   int i,j,max,max_at;
   char str[20];
   mark_sort=1;
   for(i=0;i<count-1;i++)//选择排序法
    {
      max=stu[i].sum;
      max_at=i;
      for(j=i+1;j<count;j++)
         {
           if(stu[j].sum>max)
              {
                max=stu[j].sum;
                max_at=j;
              }
         }
      if(i!=max_at)
         {
            temp=stu[i];
            stu[i]=stu[max_at];
            stu[max_at]=temp;
/* 
strcpy(str,stu[i].num);
strcpy(stu[i].num,stu[max_at].num);
strcpy(stu[i].num,str);
strcpy(str,stu[i].name);
strcpy(stu[i].name,stu[max_at].name);
strcpy(stu[i].name,str);
t=stu[i].cs;stu[i].cs=stu[max_at].cs;stu[max_at].cs=t;
t=stu[i].gs;stu[i].cs=stu[max_at].gs;stu[max_at].gs=t;
t=stu[i].ys;stu[i].ys=stu[max_at].ys;stu[max_at].ys=t;
t=stu[i].sum;stu[i].sum=stu[max_at].sum;stu[max_at].sum=t;
*/ 
         }
    }
   printf("\n\n--------------------\n");
   printf("三门成绩总分从高到低排列的全体学生信息:\n");
   printf("学号          姓名\tC成绩\t高数成绩  英语成绩  三门成绩总分\n");
   for(i=0;i<count;i++)
      {
        printf("%s",stu[i].num);
        printf("    %s",stu[i].name);
        printf("\t%3d",stu[i].cs);
        printf("\t%3d",stu[i].gs);
        printf("\t   %3d",stu[i].ys);
        printf("       %3d\n",stu[i].sum);
      }
   printf("\n\n按任意键返回...");
   getch();
   Statistic();
}
//学生信息显示函数
void Output()
{
   int i;
   printf("\n\n--------------------\n");
   if(mark_sort==1)
      printf("因已排序,三门成绩总分从高到低排列的全体学生信息:\n"); 
   else
      printf("全体学生信息(未排序):\n");
      printf("学号          姓名\tC成绩\t高数成绩  英语成绩  三门成绩总分\n");
   for(i=0;i<count;i++)
      {
        printf("%s",stu[i].num);
        printf("    %s",stu[i].name);
        printf("\t%3d",stu[i].cs);
        printf("\t%3d",stu[i].gs);
        printf("\t   %3d",stu[i].ys);
        printf("       %3d\n",stu[i].sum);
      }
   printf("\n\n按任意键返回...");
   getch();
   Menu();
}

int main()//主函数 
{
  Welcome();//调用欢迎界面函数
  Password();//调用菜单界面函数
  return 0;
}
  • 18
    点赞
  • 136
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
关于c语言和c++的课程成绩信息管理系统,共有将近6000行代码,建议使用vs2012或2010便于管理也可使用VC6.0++环境修改运行但查找麻烦,所有的语言没有脱离c和c++,主要采用模块思想,也可以转换成面向对象型的语言,只要将模块函数写进类中。同时学c语言的也可以使用,除了使用cout,cin一些很容易上手的c++代码,相当于printf,scanf,主要为了方便输入输出,不用写%d%c... 详细细节也可以访问,百度文库网址 使用注意事项 有着强大的报错功能。 1 全部采用鼠标点击功能,可以看百度网址图片。 2 录用学生信息的细节选项中,如果点击错误信息,再次点击将会取消。 3 附加功能中的高级打印功能中,如果想改变选项,只需要点击另一个即可,当前的状态就会消失。 4 输入学号为53120101--531215**(其中不包括****00,例如53120700)。(可以设置) 5 所有成绩范围为0--99。(可以设置) 6 如果想去掉钢琴曲,直接删除MP3,或者改成其他名字即可。 7 打印直方图可以根据班级的不同,向后移动。 7 如果打印不规范,可能窗口较小,可通过调节窗口大小来打印排名...... 8 请包含student.txt默认文件(文件中至少一名学生信息),否则将会程序在进行实质功能作用时意外退出(已在包中)。 头文件student.h #ifndef _STUDENT_H_ #define _STUDENT_H_ #include #include HWND hWnd; //来自msdn #define PERR(bSuccess, api){if(!(bSuccess)) printf("%s:Error %d from %s \ on line %d\n", __FILE__, GetLastError(), api, __LINE__);} void cls( HANDLE hConsole ) { COORD coordScreen = { 0, 0 }; /* here's where we'll home thecursor */ BOOL bSuccess; DWORD cCharsWritten; CONSOLE_SCREEN_BUFFER_INFO csbi; /* to get buffer info */ DWORD dwConSize; /* number of character cells inthe current buffer *//* get the number of character cells in the current buffer */ bSuccess = GetConsoleScreenBufferInfo( hConsole, &csbi ); PERR( bSuccess, "GetConsoleScreenBufferInfo" ); dwConSize = csbi.dwSize.X * csbi.dwSize.Y;/* fill the entire screen with blanks */ bSuccess = FillConsoleOutputCharacter( hConsole, (TCHAR) ' ', dwConSize, coordScreen, &cCharsWritten ); PERR( bSuccess, "FillConsoleOutputCharacter" );/* get the current text attribute */ bSuccess = GetConsoleScreenBufferInfo( hConsole, &csbi ); PERR( bSuccess, "ConsoleScreenBufferInfo" );/* now set the buffer's attributes accordingly */ bSuccess = FillConsoleOutputAttribute( hConsole, csbi.wAttributes, dwConSize, coordScreen, &cCharsWritten ); PERR( bSuccess, "FillConsoleOutputAttribute" );/* put the cursor at (0, 0) */ bSuccess = SetConsoleCursorPosition( hConsole, coordScreen ); PERR( bSuccess, "SetConsoleCursorPosition" ); return; } HANDLE hOut; HANDLE hIn; void enter(); void ReadFile(char*str="student.txt"); typedef enum grade{you=95,liang=85,zhong=75,pass=65,nopass=0 } Grade; Grade g1=you; Grade g2=liang; Grade g3=zhong; Grade g4=pass; Grade g5=nopass; void DelClass(); //学生类结构 typedef struct student{ int studentid; char name[20]; char sex[5]; char nation[20]; int biryear; int birmonth; char post[10]; int cyu; int cyushe; int cshe; int cdui; int cduishe; struct student* next; double ave; double wave; } Student; Student *stubegin=NULL; Student* stulast=NULL; int total=0; //课程类结构 typedef struct course{ char obj[30]; int time; int xuefen; int mark; Grade rank; } Course; Course c1; Course c2; Course c3; Course c4; Course c5; void InitCourse(); void AddData(Student*); void AltData(); void AddShuju(int *,Student*); void IntEro(int& ,int,int,int,int); //功能介绍 /*****************************************Loading页面*******************************************/ void input();//输入信息功能 void output();//输出信息功能 void addition();//附加功能 /*****************************************输入信息功能*******************************************/ void AddStudent(); void DelStudent(int); void AltStudent(int); void SaveMessage(); void readfile(); /*****************************************输出信息功能*******************************************/ void CalRankAve(int); void CalRankWave(int); void PrintStudent(int); void PrintCourse(int); void PrintWell(); /*****************************************打印总成绩*******************************************/ void PrintTotal(); void PrintStudentID(); void PrintAve(); void PrintWave(); /*****************************************打印科目成绩*******************************************/ void PrintObj(); void PrintCyu(); void PrintCyushe(); void PrintCshe(); void PrintCdui(); void PrintCuishe(); /*****************************************打印优秀职务单科成绩*******************************************/ void PrintObjYou(); void PrintCyuYou(); void PrintCyusheYou(); void PrintCsheYou(); void PrintCduiYou(); void PrintCuisheYou(); /*********************辅助函数**********************/ void printmark(Student *); void AddStudent1(); void SortAve(); void SortWave(); void SortId(); void SortCyu(); void SortCyushe(); void SortCshe(); void SortCdui(); void SortCduishe(); int GetInt(char* ); int Search(int); void PrintGrade(int); int GetXuefen(int,int); /****计算平均成绩和加权成绩**/ void CalAve(Student*); void CalWave(Student*); /*****************************************附加功能*******************************************/ void PrintHistogram(); void PrintTotalHistogram();
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值