九.程序:
#include
#include
void check(); void fun(); void fun2(); void fun3(); void fun4(); void del(); void paixu(); void zhsx(); void zhjx(); void xfjx(); void xfsx(); void save();
struct student //定义学生信息 {
int no; // 学号 char name[20]; //姓名
char sex[4]; //性别 int num; //课程号 char scn[20]; //课程名 int score; //学分 float score1; //成绩1 float score2; //成绩2 float score3; //成绩3 float ave; //实得学分 float sum; //总分 };
struct student stu[n],*p,t; int now=0,i,j,k,l; char ch;
void main() {
int h,flag1,flag2;
char name[20]=\ char person[20],password1[10]; printf (\ ******** 欢迎进入学生成绩管理系统!********\\n\\n\ printf (\ 用 户 登 录\\n\\n\ for(h=0;h!=5;) {
printf(\ 用户名:\ gets(person);
flag1=strcmp(person,name); printf(\ 密码:\ gets(password1);
flag2=strcmp(password,password1); if(flag1==0 && flag2==0) {
printf(\ 登陆成功!\\n\\n\ menu(); break; } else {
printf (\ 用户名或密码错误!\\n\\n\ printf (\ 请注意:您还剩%d次机会!\\n\\n\ h++; } }
if (h=5) printf (\对不起,您输入的用户名或密码有误,已被强制退出。\\n\}
void menu() { int as; char ch; do{
printf(\ start: printf(\ 欢迎使用学生成绩管理系统\\n\
printf(\按任意键继续********************\ ch=getch(); }
while(!ch); system(\
/*以下为功能选择模块*/
do{printf(\学生管理系统\\n\ printf(\ printf(\学生成绩录入\\n\\t\\t\ printf(\查询\\n\\t\\t\ printf(\删除学生记录\\n\\t\\t\ printf(\排序\\n\\t\\t\ printf(\保存退出\\n\\t\\t\ printf(\退出\\n\\t\\t\ printf(\选择功能选项(输入所选功能前的数字):\
scanf(\ switch(as) {case 1:input();break; case 2:check();break; case 3:del();break; case 4:paixu();break; case 5:save();break; case 6:system(\ default:system(\ goto start;
}}while(1);}
void input() /*学生信息录入模块*/
{
int i=0; char ch; do {
printf(\录入学生信息\\n输入第%d个学生的信息\\n\ printf(\输入8位的学生学号:\ scanf(\ fflush(stdin);
printf(\输入学生姓名:\ fflush(stdin); gets(stu[i].name);
printf(\输入学生性别:\ fflush(stdin); gets(stu[i].sex); fflush(stdin);
printf(\输入学生课程号:\ scanf(\ fflush(stdin);
printf(\输入学生课程名:\ gets(stu[l].scn); ;fflush(stdin);
printf(\输入课程学分:\ scanf(\
printf(\输入学生平时成绩:\ fflush(stdin);
scanf(\
printf(\输入学生实验成绩:\ fflush(stdin);
scanf(\
printf(\输入学生卷面成绩:\ fflush(stdin);
scanf(\ printf(\ if(stu[i].score2>0) stu[i].sum=stu[i].score1*0.15+stu[i].score2*0.15+stu[i].score3*0.7; else stu[i].sum=stu[i].score1*0.3+stu[i].score3*0.7; k=stu[i].sum/10; switch(k) {case 10:(float)stu[i].ave=(float)stu[i].score;break; case 9:(float)stu[i].ave=(float)stu[i].score;break;
case 8:(float)stu[i].ave=(float)stu[i].score*0.8;break; case 7:(float)stu[i].ave=(float)stu[i].score*0.7;break; case 6:(float)stu[i].ave=(float)stu[i].score*0.6;break; default:(float)stu[i].ave=0.0;} i++;
now=i;
printf(\是否继续输入?(Y/N)\ fflush(stdin); ch=getch(); system(\ }
while(ch!='n'&&ch!='N'); system(\ }
void check() //查询
{printf(\————查 询————\\n\ printf(\学生基本信息查询*\\n\ printf(\ printf(\按学号查询\\n\\t\\t\ printf(\按姓名查询\\n\\t\\t\ printf(\学生成绩查询*\\n\ printf(\ printf(\按学号查询\\n\\t\\t\ printf(\按姓名查询\\n\\t\\t\ printf(\返回主菜单\\n\\t\\t\ printf(\请选择:\ scanf(\ switch(i) { case 0:menu();break; //调用主菜单函数,表示返回主菜单 case 1:fun();break; //调用函数fun1,表示按学号查询学生基本信息 case 2:fun2();break; //调用函数fun2,表示按姓名查询学生基本信息 case 3:fun3();break; //调用函数fun3,表示按学号查询学生成绩 case 4:fun4();break; //调用函数fun4,表示按姓名查询学生成绩 };}
void fun() //按学号查询1 {int i,j; printf(\请输入要查询同学的学号:\