当前位置:首页 » 考试成绩 » 学生成绩管理系统20

学生成绩管理系统20

发布时间: 2020-12-06 05:53:35

Ⅰ 基于java设计一个学生成绩管理系统,要求有界面,且有增加,查询,修改,删除,退出功能,代码如何写

我给你一些参考资料,希望会对你有用
学员管理系统数据报表
数据名称(StudentManager)
用户信息表(UserInfo)
字段 类型 说明 大小 是否为空
UserName(主键) varchar 学员姓名 20 NOT NULL
PassWord varchar 密码 20 NOT NULL
Power int 权限 4 NOT NULL
课程信息表(CourseInfo)
字段 类型 说明 大小 是否为空
CourseID(主键) int 课程编号 4 NOT NULL
CourseName varchar 课程名称 20 NOT NULL
SpecialtyID int 专业编号 4 NOT NULL
学员基本信息表(StuInfo)
字段 类型 说明 大小 是否为空
StuID(主键) varchar 学号 20 NOT NULL
StuName varchar 姓名 20 NOT NULL
Sex char 性别 10 NOT NULL
Birthday varchar 出生日期 20 IS NULL
NativePlace varchar 籍贯 20 IS NULL
SchoolAge varchar 学历 20 IS NULL
Address varchar 地址 100 IS NULL
Postcode varchar 邮政编码 20 IS NULL
Tel varchar 联系方式 20 IS NULL
Remark varchar 备注 100 IS NULL
ClassID int 班级编号 4 NOT NULL
成绩信息表(GradeInfo)
字段 类型 说明 大小 是否为空
StuID varchar 学号 20 NOT NULL
CourseID int 课程编号 4 NOT NULL
Grade varchar 成绩 20 IS NULL
班级信息表(ClassInfo)
字段 类型 说明 大小 是否为空
ClassID(主键) Int 班级编号 4 NOT NULL
ClassName varchar 班级名称 20 NOT NULL
Sort varchar 班级类别 20 NOT NULL
Number int 班级人数 4 IS NULL
Teacher varchar 辅导员 20 IS NULL
SpecialtyID int 专业编号 IS NOT NULL
专业信息表(SpecialtyInfo)
字段 类型 说明 大小 是否为空
SpecialtyID(主键) int 专业编号 4 NOT NULL
SpecialtyName varchar 专业名称 20 NOT NULL

四、 系统功能模块:
菜单栏:操作、管理、工具、帮助。
操作:
修改密码;
切换用户;
退出系统。
管理:
用户管理:添加用户、删除用户;
学员管理:添加学员、删除学员、修改学员、
移动学员;
专业管理:添加专业、删除专业、修改专业;
课程管理:添加课程、删除课程、修改课程;
班级管理:添加班级、删除班级、修改班级;
成绩管理:添加成绩、删除成绩、修改成绩。
工具:
查看成绩;
辅助工具:计算器、记事本。
帮助:
帮助说明;
版本信息;
关于我们。
快捷工具栏:添加学员、删除学员、修改学员、移动学员、
查看成绩、辅助工具。
五、 系统数据模块:
系统用户信息:用户名、密码、用户权限;
学员基本信息:学号、姓名、性别、出生年月、籍贯、学历、
住址、邮政编码、联系方式、备注、班级编号;
专业信息:专业编号、专业名称;
课程信息:课程编号、课程名称、专业编号;
班级信息:班级编号、班级名称、班级类别、班级人数、
辅导员、专业编号;
成绩信息:学号、课程编号、成绩;

Ⅱ 跪求mfc的学生成绩管理系统,简单的增删改查就行,数据库是ACCESS,小弟就20财富,全给大家了.

给你传了一个压缩的,里面有两个系统都是,有一个csdn程序员网站 要注册 那里有很多!以后可以自己找了!

Ⅲ 管理信息系统实验报告

实验目的: 学习LMIS的设计方法和思想

实验内容: 1、能从GIS平台进行设计软件,网络平台

2、选择你最熟悉的业务画功能图

3、画页面设计

4、编码模型设计

5、选择模块设计

实验过程:

1. 学生信息管理系统功能结构图

根据系统分析阶段得到的数据流图,采用软件设计的概念和原理,以上一次参照的学生信息管理信息系统为实例,给出学生信息管理系统功能结构图(图1.1)。

2.系统运行平台设计

2.1系统运行平台设计的依据与基本原则

系统运行平台是指管理信息系统运行所依赖的硬件和软件,因此其设计就是针对新系统的目标,在各种技术手段和实施方法中权衡利弊,合理地利用各种资源,选择适当的计算机硬件,网络通信设备及其他辅助设备,软件,以满足新系统逻辑模型的需要和技术需求。系统运行平台设计的内容主要包括系统网络配置,硬件平台选择,软件平台选择等。系统运行平台设计是每一个企业在开发管理系统时都要遇到的问题,影响着整个系统的成败。

操作系统的选择可以选择Window NT、Windows 2000 Server、Windows Server 2003

2.2系统平台设计方案

本系统采用Windows NT 4.0作为网络操作系统,后台数据库管理采用Microsoft Access,采用PowerBuilder 8.0作为前台卡发工具,采用C/S计算模式,数据库服务器设置在信息中心。

学生档案管理系统

系统

学籍管理

班级管理

专业与课程

成绩管理

图1.1 学生信息管理系统功能图

3.代码设计

为了方便学生的管理,方便数据的输入和输出,为每个学生编制了学号代码。左起两位代表入学时间,左起3~4为表示招生类型,左起5~6位表示所属院系,7~8表示所属专业,后两位表示学生序号(图4.1)。

N N N N N N N N N N

学生序号

所属专业

所属院系

招生类型

入学时间

图4.1 代码设计图

例如,学号0307241081表示此学生为2003年入学,二级学院经济管理学院信息管理与信息系统专业序号为81号

4.数据库设计

4.1数据库的逻辑

在完成数据的概念模型设计即E-R图后,即可进入数据库的逻辑设计阶段。数据库的逻辑设计即把得到的满足第三范式的关系转化为特定的数据库管理系统下的数据表。根据前面得到的各个关系,现把它们转化为数据表。

(1)学生信息表:学号、姓名、性别、政治面貌、出生日期、专业、班级、家庭住址、联系电话、备注。此表共有10个字段,由于在校所有学生中,不可能存在两个学生的学号相同,所以在本表中学号作为学生信息表的主键。

(2) 课程信息表:课程名称、所属专业。

(3)专业信息表:专业编号、专业名称。此表以专业编号为主键。

(4) 班级信息表:班级名称、所属院系、辅导员、教室、人数。此表共有5个字段,以班级名称为主键,用于记录学生所在班级的信息。

(5) 成绩信息表:学号、姓名、专业、课程名称、成绩。此表共有5个字段,以学号和课程名称共同为主键,用于记录学生在校期间的各科考试成绩

(6) 用户表:用户名称、密码、用户ID。此表用于系统对操作员的设置。

4.2 数据库的物理设计

在完成数据库的逻辑设计后,就可以开始数据库的物理设计。本学生信息管理系统采用Access数据库。并在以下创建几个数据表,其结构如下:

表5.2.1 学生信息表结构

字段名
数据类型
字段长度与格式
关键字

学号
文本
15


姓名
文本
20


性别
文本
5


政治面貌
文本
12


出生日期
日期型
YYYY-MM-DD


专业
文本
20


班级
文本
20


家庭住址
文本
50


联系电话
文本
15


备注
文本
50


表5.2.2 课程信息表结构

字段名
数据类型
字段长度与格式
关键字

课程名称
文本
20


所属专业
文本
20


表5.2.3 专业信息表结构

字段名
数据类型
字段长度与格式
关键字

班级名称
文本
20


所属院系
文本
20


辅导员
文本
10


教室
文本
15


人数
文本
3


表5.2.4 班级信息表结构

字段名
数据类型
字段长度与格式
关键字

专业名称
文本
20


所属院系
文本
20


表5.2.5 成绩信息表结构

字段名
数据类型
字段长度与格式
关键字

学号
文本
15


姓名
文本
20


成绩专业
文本
20


课程名称
文本
20


成绩
文本
5


5. 模块设计

采用SD法和模块说明数,完成系统模块设计。图5.1给出了系统“班级管理”

表5.2为其模块说明书。

班级管理

添加班级

修改班级

修改班级信息成功

出错信息

图5.1“班级管理”结构图

表5.2 “班级管理”模块的描述

模块编号
F-bjgl
名称
班级管理

功能
对班级进行添加和修改

输入
专业名,所属院系

输出
0:操作失败;1:操作成功

相关表
班级信息表

调用的模块
班级添加;班级修改

实验收获:

通过在上机的实验过程的操作中,认识到并且了解到了系统分析与系统设计过程中从物理模型上到概念模型上的转换的实现。同时也学习了在数据设计过程中的一些比较重要的和关键的步骤与信息。在制作实验报告的过程中通过操作WORD进行作图分析的过程,也加深了对系统设计过程的理解

自己修改一下就得了。

Ⅳ 学生成绩管理系统c语言编辑的毕业设计 〔20分〕

#include <stdio.h>
#include <stdlib.h>
#include<string.h>

#define MENU_NUM 7
#define N 3

typedef struct s1
{
char no[11]; /*学号由10个字符组成*/
char name[15]; /*学生姓名*/
float score[N]; /*各门课成绩*/
float sum; /*总分*/
float average; /*平均分*/
int order; /*名次*/
struct s1 *next; /*指向后继结点的指针*/
}STUDENT; /*定义结构体类型*/

STUDENT * head=NULL;
void InputData( STUDENT * ptr );
void PrintMenu( );
int Menu_Select( );
void Init( );
void create( );
void print( ) ;
void Delete( );
void append();
void computer();

main()
{
int key;
while(1) {
key=Menu_Select();
switch(key)
{
case 0: Init();
//初试化链表。也就是若链表不为空则释放链表中所有数据,将head置为空(NULL)
break;
case 1: create();
//创建链表,输入数据
break;
case 2: Delete();
//删除一个指定学号的记录数据
break;
case 3: print();
//打印链表中所有数据
break;
case 4: computer();
//计算链表中所有人的总分和平均分
break;
case 5: append();
//追加一个数据到链表的尾部
break;
case 6: Init();
//释放链表
exit(0);
}
};
}

void PrintMenu( )
{
int i;
char * menu[]={
"0. Init list",
"1. Enter list",
"2. Delete a record from list",
"3. Print list",
"4. Compute the score",
"5. Insert record to list",
"6. Quit"
};

printf("\n\n");
for (i=0;i<MENU_NUM;i++)
printf("%s\n",menu[i]);
printf("\nEnter your choice(0-6):");
}

int Menu_Select( )
{
int key;

PrintMenu( );
scanf("%d",&key);
return key;
}

void Init( ) //初始化单链表。也就是释放链表中的所有数据
{
STUDENT *p,*ptr;//定义两个临时指针变量p,ptr
p=head;ptr=head;//将两个临时变量指向头指针head ;
while(ptr!=NULL)
{
ptr=ptr->next;//ptr指向下一个结构数据
free(p);//释放p所指向的结构数据的内存
p=ptr;//将p指向ptr所指向的数据
}
head=NULL;//将head指向NULL
}

void create( ) //创建单链表
{
STUDENT *pt, *pth=NULL; //定义两个指针变量:pt指向即将申请新的数据内存,pth指向当前数据
while(1)
{
pt=(STUDENT *)malloc(sizeof(STUDENT));//让pt指向新申请的内存空间
InputData(pt);//输入数据,存放到pt所指向的结构数据。注意让pt的next指向NULL
if (strcmp(pt->no,"@")==0)
{
free(pt);//释放pt所指向的内存空间
break;//退出循环
}
else if (head==NULL)
{
pth=pt;
head=pt;//将头指针head和pth指向pt
}
else
{

pth->next=pt; //将pth的next指向pt;
pth=pt; //将pth指向pt;
}
};
}

void print( ) //打印单链表中所有数据
{ int i=0;
STUDENT *p;//第一个指针p
p=head;//将p指向head

printf("\n");
printf("******************************STUDENT******************************\n");
printf("|rec|no | name | sc1| sc2| sc3| sum | ave |order|\n");
printf("|---|----------|----------------|----|----|----|------|-----|-----|\n");

//打印表头
while (p!=NULL)
{
printf("|%3d|%10s|%-16s|%4.1f|%4.1f|%4.1f|%6.2f|%5.1f|%5d|\n",
++i,p->no,p->name,p->score[0],p->score[1],p->score[2],
p->sum,p->average,p->order); //打印p所指向的结构中的所有数据。注意打印数据间的分隔线
p=p->next;//将p指向p的下一个结构数据
}
printf("********************************END********************************\n");//打印表尾
}

void Delete( ) //删除一个记录
{
STUDENT *p,*pth;//定义两个指针p,pth
char no[11];//定义一个整数no(用来存储输入的学号)
printf("intput delete no\n");
scanf("%s",no);//用输入语句输入一个学号存储到no中
p=head;pth=head;//将p和pth都指向头指针
if (strcmp(p->no,no)==0) //也就是若头指针指向的数据需要删除
{
head=head->next;//将head指针指向head的下一个数据;
free(p);//释放p所指向的数据
}
else
{
p=p->next;//将p指向p的下一个数据
while ( p!=NULL)
{
if (strcmp(p->no,no)==0) //找到了要删除的数据
{
pth->next=p->next;//将pth的next指向p的next
free(p);//释放p
break;//退出循环
}
else
{
pth=pth->next;//将pth指向pth的next 或 将pth指向p
p=p->next;//将p指向p的next
}
}
}
}

void append()
{
STUDENT *p,*pth;//定义两个指针变量p,pth

pth=head;//将pth指向head
while ( pth->next!=NULL)
{
pth=pth->next;//ptr指向ptr的next
}

p=(STUDENT *)malloc(sizeof(STUDENT));//将p指向新申请的内存空间
InputData(p);p->next=NULL;//数据数据存储到p所指向的内存空间,注意将p的next置为NULL
pth->next=p;//将ptr的next指向p
}
void InputData( STUDENT *ptr )
{ int i;
printf("enter no:");
scanf("%s",ptr->no);
if (strcmp(ptr->no,"@")==0 ) return;

printf("enter name:");
scanf("%s",ptr->name);

for(i=0;i<3;i++)
{
printf("shuru chengji\n");
scanf("%f",&ptr->score[i]);
}

ptr->sum=0;
ptr->average=0;
ptr->order=0;
ptr->next=NULL;
}
void computer()
{
STUDENT *p;
p=head;
for(;p;p=p->next)
{
p->sum=p->score[0]+p->score[1]+p->score[2];
p->average=(p->score[0]+p->score[1]+p->score[2])/3;
}
}

Ⅳ 成绩管理系统 完成下列功能: 1、输入:函数input把20学生的学号、姓名、性别、年龄、四科成绩

你确定这是java?
我怎么感觉有点像c或者c++啊?
假如是java做,我可以教教你。

Ⅵ 假设收集到了一个班学生的所有成绩信息(不低于20人),要求用C语言编写一个简单的成绩管理系统

代码已发,在附件,邮件名“代码”,附件Untitled2.c

如果有疑问欢迎追问。

代码如下:

#include<stdio.h>

#include<string.h>

#include<malloc.h>

#include<math.h>

#define min(A,B) (A<B?A:B)

#define max(A,B) (A<B?B:A)

typedef struct Student

{

long long int id;

char name[11];

int score[4];

double avg;

struct Student* next;

} Student;

void print(Student* stu)

{

printf("学号:%10lld 姓名:%10s 成绩:语文:%3d 数学:%3d 英语:%3d 计算机:%3d 平均分:%3.2lf ",

stu->id,stu->name,stu->score[0],stu->score[1],stu->score[2],stu->score[3],stu->avg);

}

int main(void)

{

Student* head = 0;


int stucount=0;//数量


while(1)

{

printf("输入操作号:1:录入学生 2:浏览 3:查询 4:修改 5:排序 6:统计 ");


int quest;

scanf("%d",&quest);

scanf("%*[^ ]");


if(quest==1)

{

printf("录入学生: ") ;

while(1)

{

printf("请输入学生学号(-1退出录入): ");

long long int id;

scanf("%lld", &id);


if(id==-1)break;


Student* newStudent = (Student*)malloc(sizeof(Student));

newStudent->id=id;


printf("请输入学生名字: ");

scanf("%10s", newStudent->name);

scanf("%*[^ ]");


printf("请输入学生语文成绩: ");

scanf("%d",&(newStudent->score[0]));


printf("请输入学生数学成绩: ");

scanf("%d",&(newStudent->score[1]));


printf("请输入学生英语成绩: ");

scanf("%d",&(newStudent->score[2]));


printf("请输入学生计算机成绩: ");

scanf("%d",&(newStudent->score[3]));


int sum=0;

for(int i=0; i<4; ++i)sum+=newStudent->score[i];

newStudent->avg = sum/4.0;

printf("学生已录入!平均分为:%lf ",newStudent->avg);


//插入链表首,这样最新添加的显示在最上面,容易看见效果

newStudent->next=head;

head=newStudent;


++stucount;

}



}

else if(quest==2)

{

if(head==0)

printf("没有学生! ");

else

{

printf("开始浏览学生: ");

int st=0,en=min(st+10,stucount);

while(1)

{

printf("浏览学生:%d个到%d个学生 ",st+1,en);

Student* stu = head;

for(int i=0; i<st; ++i)

{

stu=stu->next;

}

for(int i=st; i<en; ++i)

{

print(stu);

stu=stu->next;

}

printf("输入操作号:1 向后翻页;2 向前翻页;-1 退出 ");

int squest;

scanf("%d",&squest);

scanf("%*[^ ]");

if(squest==1)

{

if(en!=stucount) st=en;

}

else if(squest==2)

{

st=max(0,st-10);

}

else if(squest==-1)break;

en=min(st+10,stucount);

}

}

}

else if(quest==3)

{

printf("开始查询学生信息: ");


while(1)

{

printf("通过什么查询?1:学生id 2:学生名字 3:学生语文成绩 4:学生数学成绩 5:学生英语成绩 6:学生计算机成绩 7:平均分 -1 退出 ");

int squery,squery2;

scanf("%d", &squery);

if(squery==-1)break;

Student temp;

Student* newStudent = &temp;

if(squery==1)

{

printf("请输入学生id: ");

scanf("%lld", &(newStudent->id));

}

else if(squery==2)

{

printf("请输入学生名字: ");

scanf("%10s", newStudent->name);

scanf("%*[^ ]");

}

else if(squery==3)

{

printf("请输入学生语文成绩: ");

scanf("%d",&(newStudent->score[0]));

}

else if(squery==4)

{


printf("请输入学生数学成绩: ");

scanf("%d",&(newStudent->score[1]));

}

else if(squery==5)

{

printf("请输入学生英语成绩: ");

scanf("%d",&(newStudent->score[2]));

}

else if(squery==6)

{

printf("请输入学生计算机成绩: ");

scanf("%d",&(newStudent->score[3]));

}

else if(squery==7)

{

printf("请输入学生平均分: ");

scanf("%lf",&(newStudent->avg));

}

if(squery>=3 && squery<=7)

{

printf("显示比此分数高还是低的学生?1:低 2:高 ");

scanf("%d",&squery2);

}


Student* stu = head;

int flag=0;

while(stu!=0)

{

if(squery==1)

{

if(newStudent->id==stu->id)

{

print(stu);

flag=1;

}

}

else if(squery==2)

{

if(strcmp(newStudent->name,stu->name)==0)

{

print(stu);

flag=1;

}

}

else if(squery==7)

{

if((newStudent->avg!=stu->avg) && ((newStudent->avg>stu->avg) ^ (squery2==2)))

{

print(stu);

flag=1;

}

}

else if(squery>2 && squery<7)

{

if((newStudent->score[squery-3]!=stu->score[squery-3]) && ((newStudent->score[squery-3]>stu->score[squery-3]) ^ (squery2==2)))

{

print(stu);

flag=1;

}

}


stu=stu->next;

}

if(flag==0)

{

printf("没有查到学生! ");

continue;

}



}

}

else if(quest==4)

{

printf("开始修改学生信息: ");


while(1)

{

printf("请输入学生学号(-1退出修改): ");

long long int id;

scanf("%lld", &id);


if(id==-1)break;


Student* newStudent = head;

Student* lststu = 0;

while(newStudent!=0 && newStudent->id!=id)

{

lststu=newStudent;

newStudent=newStudent->next;

}

if(newStudent==0)

{

printf("没有查到学生! ");

continue;

}

printf("请输入操作号:1:修改学生名字 2:修改学生语文成绩 3:修改学生数学成绩 4:修改学生英语成绩 5:修改学生计算机成绩 6:删除学生 ");


int squery;

scanf("%d", &squery);

if(squery==1)

{

printf("请输入学生名字: ");

scanf("%10s", newStudent->name);

scanf("%*[^ ]");

}

else if(squery==2)

{


printf("请输入学生语文成绩: ");

scanf("%d",&(newStudent->score[0]));

}

else if(squery==3)

{


printf("请输入学生数学成绩: ");

scanf("%d",&(newStudent->score[1]));

}

else if(squery==4)

{

printf("请输入学生英语成绩: ");

scanf("%d",&(newStudent->score[2]));

}

else if(squery==5)

{

printf("请输入学生计算机成绩: ");

scanf("%d",&(newStudent->score[3]));

}

else if(squery==6)

{

stucount--;

if(lststu!=0)

lststu -> next = newStudent -> next;

else

head = newStudent -> next;

printf("已删除学生! ");

}

if(squery!=6)

{

int sum=0;

for(int i=0; i<4; ++i)sum+=newStudent->score[i];

newStudent->avg = sum/4.0;

printf("学生已修改!他的平均分为:%lf ",newStudent->avg);

}

}

}

else if(quest==5)

{

if(head==0)

printf("没有学生! ");

else

{

printf("对学生按什么排序?:1:学生号 2:名字 3:语文成绩 4:数学成绩 5:修改学生英语成绩 5:计算机成绩 6:平均分 ");

int squery;

scanf("%d", &squery);

printf("升序还是降序? 1:升序 2:降序 ");

int squery2;

scanf("%d", &squery2);

int flag=1;

Student* stu = head;

Student* lststu = 0;

while(flag==1)

{

flag=0;

while(stu->next!=0)

{

int swflag=0;

if(squery==0)

{

if((stu->next->id > stu->id) ^ (squery2==1))swflag=1;

}

else if(squery==1)

{

if((strcmp(stu->next->name,stu->name)>0) ^ (squery2==1))swflag=1;

}

else if(squery==6)

{

if((stu->next->avg > stu->avg) ^ (squery2==1))swflag=1;

}

if(swflag==1)

{

flag=1;

if(lststu==0) head=stu->next;

else lststu->next=stu->next;

Student* temp = stu->next->next;

stu->next->next=stu;

stu->next=temp;

}

lststu=stu;

stu=stu->next;

}

}

printf("已排序! ");

}


}

else if(quest==6)

{


double totscore[4]= {0};

double sum=0;

Student* stu=head;

while(stu!=0)

{

for(int i=0; i<4; ++i)

{

totscore[i]+=stu->score[i];

sum+=stu->avg;

}

}

for(int i=0; i<4; ++i) totscore[i]=totscore[i]/4.0;

sum=sum/4.0;

printf("统计:学生人数:%d 语文平均分:%lf 数学平均分:%lf 英语平均分:%lf 计算机平均分:%lf 总平均分:%lf ",stucount,totscore[0],totscore[1],totscore[2],totscore[3],sum);

}

else if(quest==-1)

break;

}

return 0;

}

Ⅶ c++ 学生成绩管理系统

这是我刚改过的代码,还添加了求平均分的功能
#include<iostream.h>
#include<string.h>
#include<fstream.h>
class stu
{
char name[20];
int ba;
double math,number,chinese,english,average,sum;
public:
stu()
{
}
stu(char n[20],int ban,double nu,double ma,double chin,double eng)
{
strcpy(name,n);
ba=ban;
number=nu;
math=ma;
chinese=chin;
english=eng;
}
double getsum()
{
sum=chinese+english+math;
return sum;
}
double getaver()
{
average=getsum()/3;
return average;
}
friend void main();
};

void main()
{
cout<<"(0)数据录入 (1)增加人员"<<endl;
cout<<"(2)删除人员 (3)修改数据"<<endl;
cout<<"(4)按学号查询 (5)按姓名查询"<<endl;
cout<<"(6)输出所有学生的数据 (7)按总分查询排名"<<endl;
cout<<"(8)按语文查询排名 (9)按数学查询排名"<<endl;
cout<<"(y)按英语查询排名 "<<endl;
cout<<"选择相关操作请输入相对的括号里的阿拉伯数字或字母!"<<endl;
char p;char w;
stu *s[50];
ofstream *file[50];
int i=0;
int j=0;
bool flag2=0;
do
{
cin>>p;
if((p>='0'&&p<='9'))
flag2=1;
else
cout<<"指令错误!请重新输入:"<<endl;
}while(flag2==0);
do{
switch(p)
{
case '0':
{
char c;
char name[20];int ba ;double number, math,chinese,english;
do{
cout<<"请输入姓名"<<endl;
cin>>name;
cout<<"请输入班级:"<<endl;
cin>>ba;
cout<<"请输入您要增加的学生的学号:"<<endl;
cin>>number;
cout<<"请输入数学成绩:"<<endl;
cin>>math;
cout<<"请输入语文成绩:"<<endl;
cin>>chinese;
cout<<"请输入外语成绩:"<<endl;
cin>>english;
file[j]=new ofstream("d:\\document",ios::ate);
*file[j]<<"姓名"<<name<<"班级"<<ba<<"学号"<<number<<"数学成绩"<<math<<"语文成绩"<<chinese<<"外语成绩"<<english<<endl;
j++;
s[i]=new stu(name,ba,number, math, chinese, english);
i++;
cout<<"数据录入成功,想继续录入吗(y/n)"<<endl;
cin>>c;
do
{
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
else
flag2=1;
}while(flag2==0);
}while(c=='y');
break;
}
case '1':
{
char name[20];int ba;double number,math,chinese,english;
char c;
do
{
cout<<"请输入您要增加的学生的姓名:"<<endl;
cin>>name;
cout<<"请输入要增加的学生的班级:"<<endl;
cin>>ba;
cout<<"请输入您要增加的学生的学号:"<<endl;
cin>>number;
cout<<"请输入数学成绩:"<<endl;
cin>>math;
cout<<"请输入语文成绩:"<<endl;
cin>>chinese;
cout<<"请输入外语成绩:"<<endl;
cin>>english;
file[j]=new ofstream("d:\\document",ios::ate);
*file[j]<<"姓名"<<name<<"班级"<<ba<<"学号"<<number<<"数学成绩"<<math<<"语文成绩"<<chinese<<"外语成绩"<<english<<endl;
j++;
s[i]=new stu(name, ba,number,math, chinese, english);
i++;
cout<<"数据录入成功,想继续录入吗(y/n)"<<endl;
cin>>c;
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
}while(c=='y');
break;
}
case '2':
{
char name[20];bool flag3=0;char c;
do{
cout<<"请输入您要删除的学生姓名:"<<endl;
cin>>name;
for(int h=0;h<i;h++)
{
if(strcmp(name,s[h]->name)==0)
{
flag3=1;
i--;
do{
s[h]=s[h+1];
h++;
}while(h<=i);
}
}
if(flag3==0)
cout<<"您要求删除的对象本来就不存在!请检查输入的正确性!";
cout<<"要继续删除吗?(y/n)"<<endl;
cin>>c;
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
}while(c=='y');
break;
}
case '3':
{
char name[20];double mat,chin,eng;flag2=0;
char c;
do
{
cout<<"请输入您要修改的学生的姓名:"<<endl;
cin>>name;
for(int h=0;h<i;h++)
{
if(strcmp(name,s[h]->name)==0)
{
flag2=1;
cout<<"请输入新的数学成绩:"<<endl;
cin>>mat;
cout<<"请输入新的语文成绩:"<<endl;
cin>>chin;
cout<<"请输入新的外语成绩:"<<endl;
cin>>eng;
s[h]->chinese=chin;
s[h]->math=mat;
s[h]->english=eng;
cout<<"数据修改成功!";
}
}
if(flag2==0)
{
cout<<"您要修改的学生本来就不存在!请检查重新输入!"<<endl;
}
cout<<"想继续修改吗(y/n)"<<endl;
cin>>c;
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
}while(c=='y');
break;
}

case '4':
{
double t;char c;
do
{
int flag1=0;
cout<<"请输入你要查询学生的学号"<<endl;
cin>>t;
for(int q=0;q<i;q++)
{
if(s[q]->number==t)
{
flag1=1;
cout<<"您要查询的学生是:"<<(*s[q]).name
<<"数学成绩为:"<<s[q]->math
<<"语文成绩为:"<<s[q]->chinese
<<"英语成绩为:"<<s[q]->english
<<"总分为:"<<s[q]->getsum()
<<endl;
}
}
if(flag1==0)
cout<<"对不起!您要查询的学生不存在!"<<endl;
cout<<"您想继续查询吗?(y/n)"<<endl;
cin>>c;
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
}
while(c=='y');
break;
}

case '5':
{
char n[20];int j=0;char c;
do{
int flag=0;
cout<<"请输入你要查询的学生姓名"<<endl;
cin>>n;
for(int j=0;j<i;j++)
{
if(strcmp(n,(*s[j]).name)==0)
{
flag=1;
cout<<"您要查询的学生是:"<<(*s[j]).name
<<endl;
cout<<(*s[j]).name<<"的总成绩成绩是"<<(*s[j]).getsum()
<<"班级:"<<" "<<s[j]->ba
<<"语文:"<<" "<<s[j]->chinese
<<"数学:"<<" "<<s[j]->math
<<"外语:"<<" "<<s[j]->english
<<"平均成绩是:"<<(*s[j]).getaver()
<<endl;
}
}
if(flag==0)
cout<<"对不起!您要查询的学生不存在!"<<endl;
cout<<"您想继续查询吗?(y/n)"<<endl;
cin>>c;
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
}
while(c=='y');
break;
}

case '6':
{
cout<<"本系统所有学生数据如下:"<<endl;
if(i==0)
cout<<"管理系统中没有录入数据或者数据已经被删除!"<<endl;
for(int k=0;k<i;k++)
{
cout<<k+1<<" "<<"姓名:"<<" "<<s[k]->name
<<"班级"<<s[k]->ba
<<"学号"<<s[k]->number
<<"语文:"<<" "<<s[k]->chinese<<"数学:"
<<" "<<s[k]->math
<<"外语:"<<" "<<s[k]->english
<<"总分:"<<" "<<(*s[k]).getsum()
<<"平均分:"<<" "<<(*s[k]).getaver()
<<endl;
}
break;
}
case '7':
{
int t;stu b;

cout<<"本系统所有学生总分排名如下:"<<endl;
for(int x=0;x<i-1;x++)
{
t=x;
for(int y=x+1;y<i;y++)
{
if((s[t]->getsum())<(s[y]->getsum()))
t=y;
if(t!=x)
{
b=*s[x];
*s[x]=*s[t];
*s[t]=b;
}
}
}
if(i==0)
cout<<"管理系统中没有录入数据或者数据已经被删除!";
double o1,o2;
for(int k=0;k<i;k++)
{
cout<<k+1<<" "<<"姓名:"<<" "<<s[k]->name
<<"班级"<<s[k]->ba
<<"学号"<<s[k]->number
<<"语文:"<<" "<<s[k]->chinese
<<"数学:"<<" "<<s[k]->math
<<"外语:"<<" "<<s[k]->english
<<"总分:"<<" "<<s[k]->getsum()
<<"平均分:"<<" "<<s[k]->getaver()
<<endl;
o1=s[k]->sum;
o2=s[0]->sum;
}
cout<<"总分最高分"<<o2<<endl
<<"总分最低分"<<o1<<endl
<<endl;
break;
}
case '8':
{
int t;stu b;

cout<<"本系统所有学生语文排名如下:"<<endl;
for(int x=0;x<i-1;x++)
{
t=x;
for(int y=x+1;y<i;y++)
{
if((s[t]->chinese)<(s[y]->chinese))
t=y;
if(t!=x)
{
b=*s[t];
*s[t]=*s[x];
*s[x]=b;
}
}
}

if(i==0)
cout<<"管理系统中没有录入数据或者数据已经被删除!";
double o1 ,o2;
for(int k=0;k<i;k++)
{
cout<<k+1<<" "<<"姓名:"<<" "<<s[k]->name
<<"班级"<<s[k]->ba
<<"学号"<<s[k]->number
<<"语文:"<<" "<<s[k]->chinese
<<"数学:"<<" "<<s[k]->math
<<"外语:"<<" "<<s[k]->english
<<"总分:"<<" "<<s[k]->getsum()
<<"平均分:"<<" "<<s[k]->getaver()
<<endl;
o1=s[k]->chinese;
o2=s[0]->chinese;
}
int v1=0,v2=0;double v3;
for(v2=0;v2<=i-1;v2++)
{
if(s[v2]->english>=60)
v1++;
}
v3=(v1*100)/v2;
cout<<"语文最高分"<<o2<<endl
<<"语文最低分"<<o1<<endl
<<"语文及格率"<<v3<<"%"
<<endl;
break;
}
case '9':
{
int t;stu b;

cout<<"本系统所有学生数学排名如下:"<<endl;
for(int x=0;x<i-1;x++)
{
t=x;
for(int y=x+1;y<i;y++)
{
if((s[t]->math)<(s[y]->math))
t=y;
if(t!=x)
{
b=*s[t];
*s[t]=*s[x];
*s[x]=b;
}
}
}

if(i==0)
cout<<"管理系统中没有录入数据或者数据已经被删除!";
double o1,o2;
for(int k=0;k<i;k++)
{
cout<<k+1<<" "<<"姓名:"<<" "<<s[k]->name
<<"班级"<<s[k]->ba
<<"学号"<<s[k]->number
<<"语文:"<<" "<<s[k]->chinese
<<"数学:"<<" "<<s[k]->math
<<"外语:"<<" "<<s[k]->english
<<"总分:"<<" "<<s[k]->getsum()
<<"平均分:"<<" "<<s[k]->getaver()
<<endl;
o1=s[k]->math;
o2=s[0]->math;
}
int v1=0,v2=0;double v3;
for(v2=0;v2<=i-1;v2++)
{
if(s[v2]->english>=60)
v1++;
}
v3=(v1*100)/v2;
cout<<"数学最高分"<<o2<<endl
<<"数学最低分"<<o1<<endl
<<"数学及格率"<<v3<<"%"
<<endl;
break;
}
case 'y':
{
int t;stu b;

cout<<"本系统所有学生英语排名如下:"<<endl;
for(int x=0;x<i-1;x++)
{
t=x;
for(int y=x+1;y<i;y++)
{
if((s[t]->english)<(s[y]->english))
t=y;
if(t!=x)
{
b=*s[t];
*s[t]=*s[x];
*s[x]=b;
}
}
}

if(i==0)
cout<<"管理系统中没有录入数据或者数据已经被删除!";
double o1,o2;
for(int k=0;k<i;k++)
{
cout<<k+1<<" "<<"姓名:"<<" "<<s[k]->name
<<"班级"<<s[k]->ba
<<"学号"<<s[k]->number
<< "语文:"<<" "<<s[k]->chinese
<<"数学:"<<" "<<s[k]->math
<<"外语:"<<" "<<s[k]->english
<<"总分:"<<" "<<s[k]->getsum()
<<"平均分:"<<" "<<s[k]->getaver()
<<endl;
o1=s[k]->english;
o2=s[0]->english;
}
int v1=0,v2=0;double v3;
for(v2=0;v2<=i-1;v2++)
{
if(s[v2]->english>=60)
v1++;
}
v3=(v1*100)/v2;
cout<<"英语最高分"<<o2<<endl
<<"英语最低分"<<o1<<endl
<<"英语及格率"<<v3<<"%"
<<endl;
}
break;
}

cout<<"您想继续进行其他操作吗?(y/n)"<<endl;
bool flag4=0;
do
{
cin>>w;
if(w!='y'&&w!='n')
cout<<"指令错误!请重新输入!"<<endl;
else
flag4=1;
}while(flag4==0);
if(w=='y')
cout<<" 请输入操作代码: "<<endl;
cout<<"0 录入 1 增加人员 2 删除人员"<<endl;
cout<<"3 修改数据 4 按学号查询 5 按姓名查询"<<endl;
cout<<"6 显示所有成员数据 7 按总分排名 8 按语文排名"<<endl;
cout<<"9 按数学排名 y按英语排名"<<endl;
cin>>p;
}while(w=='y');
}

Ⅷ 学生成绩管理系统c

#include "stdio.h"
#include<conio.h>
#include<string.h>
#include<stdlib.h>
struct book{
char number[21];
char shuming[30];
int shuliang;
int jiage;
char zhuanye[20];
char zuozhe[26];
char chubanshe[20];
char beizhu[100];
struct book *next;
};

struct book *creat() /*创建链表*/
{
struct book *p,*head,*end;
head=end=p=(struct book *)malloc(sizeof(struct book));
printf("输入教材编号为0结束输入,每项信息都必须输入内容。\n");
do
{
printf("\n教材编号:");
gets(p->number);
if(strcmp(p->number,"0")==0){ end->next=NULL; return head;}
end=p;
printf("\n教材名称:");
gets(p->shuming);
printf("\n教材数量:");
scanf("%d",&p->shuliang);
printf("\n教材价格:");
scanf("%d",&p->jiage);
getchar();
printf("\n教材专业:");
gets(p->zhuanye);
printf("\n教材作者:");
gets(p->zuozhe);
printf("\n教材出版社:");
gets(p->chubanshe);
printf("\n备注:");
gets(p->beizhu);
p=(struct book *)malloc(sizeof(struct book));
end->next=p;
}while(1);

}

void save(struct book *head) /*保存链表*/
{FILE *fp;
struct book *p;
char filename[30];
int ch;
printf("请输入“文件名.后缀”:");
scanf("%s",filename);
if((fp=fopen(filename,"r"))!=NULL)
{
printf("\n该文件已存在,是否覆盖?1,是 2,否");
scanf("%d",&ch);
if(ch!=1)
return;
}
if((fp=fopen(filename,"w"))==NULL) { printf("\n文件保存失败");getchar();return;}
p=head;
do{
fprintf(fp,"\n%s",p->number);
fprintf(fp,"\n%s",p->shuming);;
fprintf(fp,"\n%d",p->shuliang);
fprintf(fp,"\n%d",p->jiage);
fprintf(fp,"\n%s",p->zhuanye);
fprintf(fp,"\n%s",p->zuozhe);
fprintf(fp,"\n%s",p->chubanshe);
fprintf(fp,"\n%s",p->beizhu);
p=p->next;
}while(p!=NULL);
fprintf(fp," over");
printf("\n成功保存");
getchar();
getchar();
fclose(fp);
}

void print(struct book *head) /*输出链表*/
{
struct book *p;
p=head;
if(p==NULL) { printf("未打开任何文件,无法显示"); getch();return;}
do{
printf("\n\n教材编号:%s",p->number);
printf("\n教材名称:%s",p->shuming);;
printf("\n数量:%d",p->shuliang);
printf("\n价格:%d",p->jiage);
printf("\n专业:%s",p->zhuanye);
printf("\n作者:%s",p->zuozhe);
printf("\n出版社:%s",p->chubanshe);
printf("\n备注:%s",p->beizhu);
p=p->next;
}while(p!=NULL);
}

struct book *openfile() /*打开文件*/
{struct book *p,*f,*head;
FILE *fp;
char filename[20];
printf("\n请输入路径,文件名,和后缀):");
scanf("%s",filename);
if((fp=fopen(filename,"r"))==NULL){ printf("\n文件找不到,请检查是否有该文件和路径是否正确");getchar();return NULL;}
head=f=p=(struct book *)malloc(sizeof(struct book));
fscanf(fp,"%s%s%d%d%s%s%s%s",p->number,p->shuming,&p->shuliang,&p->jiage,p->zhuanye,p->zuozhe,p->chubanshe,p->beizhu);
while(!feof(fp))
{ p=(struct book *)malloc(sizeof(struct book));
f->next=p;

fscanf(fp,"%s%s%d%d%s%s%s%s",p->number,p->shuming,&p->shuliang,&p->jiage,p->zhuanye,p->zuozhe,p->chubanshe,p->beizhu);
if(strcmp(p->number,"over")==0){ f->next=NULL; printf("\n文件打开成功,可以显示此信息");getchar(); return head; }
f=p;
}

return head;
}

void namesort(struct book *head) /*按教材名称排序*/
{ struct book *p,*t,*f,*h;
char ch[20];
int i;
h=t=f=p=head;
if(head==NULL) {printf("未打开任何文件");getchar();return; };
f=p->next;

for(p=head;p->next!=NULL;p=p->next)
{
for(t=head,f=t->next;t->next!=NULL;f=f->next,t=t->next)
{

if(strcmp(t->shuming,f->shuming)>0)
{
strcpy(ch,t->number );
strcpy(t->number,f->number);
strcpy(f->number,ch);

strcpy(ch,t->shuming );
strcpy(t->shuming,f->shuming);
strcpy(f->shuming,ch);

i=t->shuliang ;
t->shuliang=f->shuliang;
f->shuliang=i;

i=t->jiage ;
t->jiage=f->jiage;
f->jiage=i;

strcpy(ch,t->zhuanye);
strcpy(t->zhuanye,f->zhuanye);
strcpy(f->zhuanye,ch);

strcpy(ch,t->zuozhe);
strcpy(t->zuozhe,f->zuozhe);
strcpy(f->zuozhe,ch);

strcpy(ch,t->chubanshe);
strcpy(t->chubanshe,f->chubanshe);
strcpy(f->chubanshe,ch);

strcpy(ch,t->beizhu);
strcpy(t->beizhu,f->beizhu);
strcpy(f->beizhu,ch);

}

}
}
print(h);
}

void chubanshesort(struct book *head) /*按出版社排序*/
{ struct book *p,*t,*f,*h;
char ch[20];
int i;
h=t=f=p=head;
if(head==NULL) {printf("未打开任何文件");getchar();return; }
f=p->next;

for(p=head;p->next!=NULL;p=p->next)
{
for(t=head,f=t->next;t->next!=NULL;f=f->next,t=t->next)
{

if(strcmp(t->chubanshe,f->chubanshe)>0)
{
strcpy(ch,t->number );
strcpy(t->number,f->number);
strcpy(f->number,ch);

strcpy(ch,t->shuming );
strcpy(t->shuming,f->shuming);
strcpy(f->shuming,ch);

i=t->shuliang ;
t->shuliang=f->shuliang;
f->shuliang=i;

i=t->jiage ;
t->jiage=f->jiage;
f->jiage=i;

strcpy(ch,t->zhuanye);
strcpy(t->zhuanye,f->zhuanye);
strcpy(f->zhuanye,ch);

strcpy(ch,t->zuozhe);
strcpy(t->zuozhe,f->zuozhe);
strcpy(f->zuozhe,ch);

strcpy(ch,t->chubanshe);
strcpy(t->chubanshe,f->chubanshe);
strcpy(f->chubanshe,ch);

strcpy(ch,t->beizhu);
strcpy(t->beizhu,f->beizhu);
strcpy(f->beizhu,ch);

}

}
}
print(h);
}

void shumingsearch(struct book *head) /*按教材名称查找*/
{ struct book *p;
char name[20];
int c;
if(head==NULL) {printf("未打开任何文件");getchar();return;}
printf("1,查找专业 2,查找教材名称:");
scanf("%d",&c);
getchar();
if(c==2)
printf("请输入要查找的教材名称:");

else printf("请输入要查找的专业:");
gets(name);
p=head;
do{ if(c==2)
if(strcmp(p->shuming,name)==0)
{
printf("教材编号:%s\n教材名称:%s\n数量:%d\n价格:%d\n专业:%s\n作者:%s\n出版社:%s\n备注:%s\n",p->number,p->shuming,p->shuliang,p->jiage,p->zhuanye,p->zuozhe,p->chubanshe,p->beizhu);

}
if(c==1)
if(strcmp(p->zhuanye,name)==0)
{
printf("教材编号:%s\n教材名称:%s\n数量:%d\n价格:%d\n专业:%s\n作者:%s\n出版社:%s\n备注:%s\n",p->number,p->shuming,p->shuliang,p->jiage,p->zhuanye,p->zuozhe,p->chubanshe,p->beizhu);

}
p=p->next;
}while(p!=NULL);
printf("查找完成");
return;
}

struct book *add(struct book *head) /*增加记录*/
{ struct book *p,*e,*f,*h;
if(head==NULL) {printf("未打开任何文件");getchar(); return NULL;}
h=f=e=head;

p=(struct book *)malloc(sizeof(struct book));
printf("\n教材编号:");
gets(p->number);
printf("\n教材名称:");
gets(p->shuming);
printf("\n数量:");
scanf("%d",&p->shuliang);
printf("\n价格:");
scanf("%d",&p->jiage);
getchar();
printf("\n专业:");
gets(p->zhuanye);
printf("\n作者:");
gets(p->zuozhe);
printf("\n出版社:");
gets(p->chubanshe);
printf("\n备注:");
gets(p->beizhu);

if(strcmp(f->number,p->number)>0) { p->next=f;h=p;printf("\n添加成功");return h;}
if(f->next==NULL) { f->next=p;p->next=NULL;printf("\n添加成功");return h;}
do{
if(f->next!=NULL)
if(strcmp(f->number,p->number)>0)
{
e->next=p;p->next=f;printf("\n添加成功");return h;
}

if(f->next==NULL)
{
f->next=p;
p->next=NULL;
printf("\n添加成功");
return h;
}

f=f->next;
e=e->next;
}while(1);
}

struct book *delet(struct book *head) /*删除记录*/
{ struct book *p,*e;
char num[20];
if(head==NULL) {printf("未打开任何文件");getchar();return NULL;}
printf("请输入要删除的教材编号:");
scanf("%s",num);
p=e=head;
if(strcmp(p->number,num)==0) { head=head->next; print(head);return head;}
else p=p->next;
do{

if(strcmp(p->number,num)==0)
{
if(p->next!=NULL)
e->next=p->next;
if(p->next==NULL) e->next=NULL;
print(head);
return head;
}
p=p->next;
e=e->next;
}while(p!=NULL);
printf("搜索完毕,未找到该记录");
return head;
}

struct book *change(struct book *head) /*修改记录*/
{ struct book *p;
char num[20];
if(head==NULL) {printf("未打开任何文件");getchar();return NULL;}
printf("请输入要修改的教材编号:");
scanf("%s",num);
getchar();
p=head;
do{
if(strcmp(p->number,num)==0)
{
printf("教材编号:%s\n教材名称:%s\n数量:%d\n价格:%d\n专业:%s\n作者:%s\n出版社:%s\n备注:%s\n",p->number,p->shuming,p->shuliang,p->jiage,p->zhuanye,p->zuozhe,p->chubanshe,p->beizhu);
printf("\n教材编号:");
gets(p->number);
printf("\n教材名称:");
gets(p->shuming);
printf("\n数量:");
scanf("%d",&p->shuliang);
printf("\n价格:");
scanf("%d",&p->jiage);
getchar();
printf("\n专业:");
gets(p->zhuanye);
printf("\n作者:");
gets(p->zuozhe);
printf("\n出版社:");
gets(p->chubanshe);
printf("\n备注:");
gets(p->beizhu);
printf("修改成功");
return head;
}
p=p->next;
}while(p!=NULL);
printf("未找到要修改的记录");
return head;
}

int mima()
{ FILE *fp;
char mima1[20],mima2[20];

if((fp=fopen("mima","r"))==NULL)

{ printf("尚未设置密码请输入:");
scanf("%s",mima1);
printf("请再次输入密码:");
scanf("%s",mima2);
if(strcmp(mima1,mima2)!=0) { printf("两次密码不一样");return 0;}
else {
fp=fopen("mima","w");
fprintf(fp,"%s",mima1);
printf("密码设置成功");
return 1;
}
}

printf("请输入初始化密码:");
scanf("%s",mima1);
fscanf(fp,"%s",mima2);
if(strcmp(mima1,mima2)==0)
{
printf("密码正确");
printf("请输入要删除的文件名:");
scanf("%s",mima1);
if(remove(mima1)==0)
{
printf("删除成功");
getchar();
return 1;
}
else {
printf("删除失败,请检查是否存在该文件或路径是否正确");
getchar();
return 0;
}
}
else {
printf("密码错误");
getchar();
return 0;
}

}

void main()
{
struct book *head=NULL;
char i;

printf(" 88888888888 \n");
printf(" d88888888888b \n");
printf(" d88888 88888b \n");
printf(" d88P 88b \n");
printf(" 888' `88b \n");
printf(" 88P Y88 \n");
printf(" 88 88\n");
printf(" 88 88\n");
printf(" 88 88\n");
printf(" 88 88\n");
printf(" 88 88\n");
printf(" 88 ,aa. ,aa. 88 \n");
printf(" 88 d88b d88b 88 \n");
printf(" ,=88 Y88P Y88P 88=, \n");
printf(" ,d88P' `' _aa_ `' `Y88b, \n");
printf(" 88P' (8888) `Y88 ad88888b \n");
printf(" 88 ~^^~ 88 d88Y Y8b\n");
printf(" Yb._ _.d8 d8Y 88\n");
printf(" d88888888ba888=,. .,=8888 d88 88 \n");
printf(" ★☆88P Y88~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~★☆\n");
printf(" ★☆ 88 88 ★☆\n");
printf(" ★☆88 88 欢迎使用本教材系统,按任意键进入系统 ★☆\n");
printf(" ★☆ 8b,___,d8 ★☆\n");
printf(" ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆\n");

getch();

system("cls");
do{
printf(" ☆★☆★☆★ 教材管理系统 ☆★☆★☆★\n");
printf("m--菜单 h--帮助");
printf("\n请输入命令:");
i=getch();
if(i=='h')
{ printf("\n1,录入教材信息的时候,每一个项目都必须输入相应的内容。\n2,修改,增加,删除,查找记录前必须先打开一个文件,修改完后必须记得保存教材信息。\n3,必须使用正确的路径打开文件,建议保存文件时候不用输入路径(此时是默认路径,即保存在程序目录下。)");
getch();
break;
}
if(i=='m')
break;
system("cls");
}while(i!='m'||i!='h');

system("cls");
do{
printf(" ☆★☆★☆★ 教材管理系统 ☆★☆★☆★\n");

printf("┌————-———┐\n");
printf("│1,录入教材信息│\n│2,显示教材信息│\n│3,打开一个记录│\n│4,编辑一个记录│\n│5,保存教材信息│\n│6,查找记录 │\n│s,初始化系统 │\n│e,退出系统 │\n");
printf("└———————-┘\n");
printf("\n请输入功能编号:");
i=getch();
system("cls");
switch(i)
{
case '1': head=creat();save(head);break;
case '2': print(head);break;
case '3': head=openfile();break;
case '4': system("cls");
printf("┌————-———┐\n");
printf("│1,增加一个记录│\n");
printf("│2,删除一个记录│\n");
printf("│3,修改一个记录│\n");
printf("└———————-┘\n");
i=getch();
switch(i)
{
case '1':
head=add(head);break;
case '2':
head=delet(head);break;
case '3': head=change(head);break;
default: break;
}
break;
case '5': save(head);break;
case '6': shumingsearch(head);break;
case 's': mima();break;
case 'e': exit(0);
default :break;
}
system("cls");
}while(1);
}

我想这个程序包含了你那个成绩管理系统的全部要求,但我这个是教材管理系统我想改一下就可以了,具体如何改就要看楼主的天赋咯,呵呵。参考一下吧

Ⅸ 如何打印学信网学历证明

1、首先打开电脑浏览器,网络搜索“学信网”。

Ⅹ 求用C++编写简单的学生成绩管理系统!!!~~~

发给你了

热点内容
武汉大学学生会辅导员寄语 发布:2021-03-16 21:44:16 浏览:612
七年级学生作文辅导学案 发布:2021-03-16 21:42:09 浏览:1
不屑弟高考成绩 发布:2021-03-16 21:40:59 浏览:754
大学毕业证会有成绩单 发布:2021-03-16 21:40:07 浏览:756
2017信阳学院辅导员招聘名单 发布:2021-03-16 21:40:02 浏览:800
查询重庆2018中考成绩查询 发布:2021-03-16 21:39:58 浏览:21
结业考试成绩怎么查询 发布:2021-03-16 21:28:40 浏览:679
14中医医师资格笔试考试成绩查分 发布:2021-03-16 21:28:39 浏览:655
名著赏析课程标准 发布:2021-03-16 21:27:57 浏览:881
北京大学商业领袖高端培训课程 发布:2021-03-16 21:27:41 浏览:919