C++学生成绩管理系统 第2页

 

10!请重新输入! 输入完学号后会出现提示“请输入姓名:”,在其后面可以输入学生的姓名,姓名必须是汉字而且长度必须是5, 这里也用到了结构体变量和函数,对输入的字符进行判断,如果输入为字母和数字会提示“姓名只能用中文,请重新输入!”,如果输入的汉字长度大于5会提示“姓名长度大于5!请重新输入!”,输入姓名后会出现“请输入数学成绩:”、“ 请输入英语成绩:”和“请输入总评成绩:”输入规则也和前面输入学号、姓名的类似,判断输入的是否为数字,如果不是就会出现提示,重新输入,直到输入正确为止。都输入完成后,改系统会调用写文件函数对指定的文件进行写操作,把输入的学生信息写入到文件中。

3)根据学号查询成绩

在界面状态下,在按下“F3”后会出现“请输入要查询的学号: 输入“#”结束查询,若文件打不开则输出下面的信息,“文件打开失败!按任意键返回...”,如果文件打开会按照用户的要求从文件头开始查询满足要求的学号,找到即显示该学生的基本信息和成绩。如果未找到就会显示“无此学号”。

4)根据姓名查询成绩

在界面状态下,在按下“F4”后会出现“请输入要查询的学生姓名: 输入“#”结束查询,若文件打不开则输出下面的信息,“文件打开失败!按任意键返回...”,如果文件打开会按照用户的要求从文件头开始查询满足要求的姓名,找到即显示该学生的基本信息和成绩。如果未找到就会显示“无此学生!”。

5)输出文件内容

输出文件,列出所有学生成绩。如果文件未打开会出现“文件打开失败!按任意键返回...”打开成功会每输出20个学生成绩,停一下提示,“请按任意键继续...”,关闭文件。

6)统计及格和优秀人数

这里用到结构体函数和变量,判断成绩大于等于60分的为及格,并统计人数,判断成绩大于等于80分的为优秀,并统计人数,最后统计出来,显示在屏幕上。

7)退出

在界面状态下,按下“ESC”会退出该学生成绩管理系统。返回源程序。

程序清单

/*-------------1-------------*/

#include<bios.h>

#include<dos.h>  /*头文件*/

#include<conio.h>

#include<ctype.h>

#include<process.h>

#include<stdlib.h>

#include<stdio.h>

#include<string.h>

 

#define NULL 0

#define ESC 0x001b  /* 退出 */

#define  F1  0x3b00  /* 查看帮助信息,调用HelpMassage()函数 */

#define  F2  0x3c00  /*输入学生成绩*/

#define  F3  0x3d00 /*按学号查找*/

#define  F4  0x3e00  /*按姓名查找*/

#define  F5  0x3f00  /*列出所有学生成绩*/

#define  F6  0x4000 /*统计*/

 

struct stuType  /*定义结构体变量*/

{

   char NO[11];  /*学号长度为10*/

   char XM[10];

   float CJ[4];  /*包含4门成绩*/

};

 

/*-------------2-------------*/

int JY_NO(char *stu_num,FILE *fp)    /*检验学号的正确性*/

{  struct stuType stud;

   int NO;

   char *p=stu_num;

   if(strcmp(stu_num,"#")==0) return 1;    /*若输入"#"返回真值,

上一页  [1] [2] [3] [4] [5] [6] [7] [8] 下一页

  • 上一篇文章:
  • 下一篇文章:
  • Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有