学生成绩管理系统程序实现思路

学生成绩管理系统程序实现思路,第1张

类设计:1、超类:Person,明前子类:Student、Teacher、Administrator。

2、Course类(课程)

数据库:学生与课程是多对州运多关系,教师与课程的关系看你的需要来设计。

表现层:windows程序或网页B/S的

功能:1、学生只能查询成绩。激迹清2、教师能输入学生成绩和查询。3、管理员能设置课程信息

#include<time.h>

#include<stdio.h>

#include<conio.h>

#include <stdlib.h>

#define MAX 50

void input()

void sort()

void display()

void insert()

void del()

void average()

int now_no=0

struct student

{

int no

char name[20]

char sex[4]

float score1

float score2

float score3

float sort

float ave

float sum

}

struct student stu[MAX],*p

main()//主函数

{

char as

start: printf("\t\t\t欢迎使用学生成绩管理系统\n\n")

//一下为功能选择模块

do{

printf("\n\t\t\t\t1.录入学员信息\n\t\t\t\t2.显示学员信息\n\t\t\t\t3.成绩排序信息\n\t\t\t\t4.添加学员信息\n\t\t\t\t5.删除学员信息\n\t\t\t\t6.退出\n")

printf("\t\t\t\t选择皮前伏功能选项:")

as=getch()

switch(as)

{

case '悔差1':

system("cls")

input()

break

case '2':

system("cls")

display()

break

case '3':

system("cls")

sort()

break

case '4':

system("cls")

insert()

break

case '5':

system("cls")

del()

break

case '6':

system("exit")

exit(0)

default:

system("cls")

goto start

}

}while(1)

//至此功能选择结束

}

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

{

int i=0

char ch

do

{

printf("\t\t\t\t1.录入学员信息\n输入第%d个学员的信息\n",i+1)

printf("\n输入学生编燃携号:")

scanf("%d",&stu[i].no)

fflush(stdin)

printf("\n输入学员姓名:")

fflush(stdin)

gets(stu[i].name)

printf("\n输入学员性别:")

fflush(stdin)

gets(stu[i].sex)

printf("\n输入学员成绩:")

fflush(stdin)

scanf("%f",&stu[i].score1)

printf("\n输入学员成绩:")

fflush(stdin)

scanf("%f",&stu[i].score2)

printf("\n输入学员成绩:")

fflush(stdin)

scanf("%f",&stu[i].score3)

printf("\n\n")

i++

now_no=i

printf("%d",now_no)

printf("是否继续输入?(Y/N)")

ch=getch()

system("cls")

}

while(ch!='n')

system("cls")

}

void sort()//排序数据函数

{

struct student temp

int i,j

for(i=1i<now_noi++)

{

for(j=1j<=now_no-ij++)

{

if(stu[j-1].ave<stu[j].ave)

{temp=stu[j]

stu[j]=stu[j-1]

stu[j-1]=temp

}}}

}

void display()//显示数据函数

{

int i

char as

float ave

do

{

printf("\t\t班级学员信息列表\n")

printf("\t编号\t姓名\t性别\t成绩\t成绩\t成绩\t平均值\n")

for(i=0i<now_noi++)

{

stu[i].sum=stu[i].score1+stu[i].score2+stu[i].score3

stu[i].ave=stu[i].sum/3

printf("\t%d\t%s\t%s\t%.2f\t%.2f\t%.2f\t%.2f\n",stu[i].no,stu[i].name,stu[i].sex,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].ave)

}

printf("\t\t按任意键返回主菜单.")

as=getch()

goto exit

}

while(as!='n')

exit: system("cls")

}

void insert()//插入数据函数

{

char ch

do

{

printf("\n\t\t输入新插入学员队信息\n")

printf("\n输入学生编号:")

scanf("%d",&stu[now_no].no)

fflush(stdin)

printf("\n输入学员姓名:")

fflush(stdin)

gets(stu[now_no].name)

printf("\n输入学员性别:")

fflush(stdin)

gets(stu[now_no].sex)

printf("\n输入学员成绩:")

fflush(stdin)

scanf("%f",&stu[now_no].score1)

printf("\n输入学员成绩:")

fflush(stdin)

scanf("%f",&stu[now_no].score2)

printf("\n输入学员成绩:")

fflush(stdin)

scanf("%f",&stu[now_no].score3)

printf("\n\n")

now_no=now_no+1

sort()

printf("是否继续输入?(Y/N)")

ch=getch()

system("cls")

}

while(ch!='n')

}

void del()//删除数据函数

{

int inum,i,j

printf("输入要删除学员的编号:")

fflush(stdin)

scanf("%d",&inum)

for(i=0i<now_noi++)

{

if(stu[i].no==inum)

{

for(j=ij<now_noj++)

{

stu[i]=stu[i+1]

}

now_no=now_no-1

}

break

}

system("cls")

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12536834.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存