C语言设计学生选课系统

  • 格式:docx
  • 大小:19.84 KB
  • 文档页数:21

#include

#include

#include

#include

#include

#define LEN sizeof(struct stu)

#define FORMAT "%-8d%-10s%-8d%-10d%-8d%-15s\t%-20s\n"

#define DATA

comm[i].num,comm[i].name,comm[i].banji,comm[i].xuehao,comm[i].chengji,comm[i].teach,comm[i].timu

#define TM sizeof(struct stu)

#define FORMAT2 "%-8d%-15s\t%-20s\n"

#define TMK comm[i].bianhao,comm[i].laoshi,comm[i].xuanti

struct stu/*定义学生信息结构体*/

{

int num; /*编号*/

int bianhao;

char name[15]; /*学生名称*/

int banji; /*班级*/

int xuehao; /*学号*/

int chengji; /*成绩*/

char teach[15]; /*老师名称*/

char laoshi[15];

char timu[20]; /*选题*/

char xuanti[20];

};

struct stu comm[100];/*定义结构体数组*/

void in(); /*录入学生信息*/

void give(); /*管理员录入可选课题*/

void show(); /*显示学生信息*/

void order1(); /*按成绩排序*/

void order2(); /*按班级学号排序*/

void del(); /*删除学生信息*/

void del2(); /*删除题目信息*/

void modify1(); /*管理员修改学生信息*/

void modify2(); /*学生选择毕业设计题目*/

void menu1(); /*管理员菜单*/

void menu2(); /*学生菜单*/

void insert(); /*插入学生信息*/ void tongji(); /*所选题目*/

void search(); /*查找学生信息*/

void main() /*主函数*/

{

int h,flag1,flag2,flag3;

char name[20]="2014008",password[10]="11111";

char name1[20]="guanli",password1[10]="11111";

char xuanzhe[20]="gl";

char person[20],password2[10],ch[20];

printf ("\t\t ******** 欢迎进入2014本科毕业设计管理系统!********\n\n");

printf ("\t\t\t\t用 户 登 录 \n ");

printf ("\n请选择登陆方式:您是管理员请输入gl,学生请输入其他 : ");

gets(ch);

flag1=strcmp(ch,xuanzhe);

for(h=0;h!=6;)

{ if(flag1==0)

{ printf(" 管理员名:");

gets(person);

flag2=strcmp(person,name1);

printf(" 密码: ");

gets(password2);

flag3=strcmp(password1,password2);

}

else

{ printf(" 用户名:");

gets(person);

flag2=strcmp(person,name); /*strcmp比较两个字符串,若相等返回0*/

printf(" 密码:");

gets(password2);

flag3=strcmp(password,password2);

}

if(flag2==0 && flag3==0)

{

printf("\t\t\t 登陆成功!\n\n");

if(flag1==0)

menu1();

else

menu2();

break; }

else

{

printf ("\t\t\t用户名或密码错误!\n\n");

printf ("\t\t\t请注意:您还剩%d次机会!\n\n",5-h);

h++;

}

}

if (h=5)

printf ("对不起,您输入的用户名或密码有误,系统已强制退出。\n");

}

void menu1() /*管理员菜单*/

{

int n;

system("cls");

printf ("\n\t\t ******** 欢迎进入2014本科毕业设计管理系统管理员入口!********\n\n");

printf("\t\t*-------------------学生管理系统-----------------*\n");

printf("\t\t| 1. 录入学生信息 |\n");

printf("\t\t| 2. 序号查找信息 (精确) |\n");

printf("\t\t| 3. 名称查找信息 (模糊) |\n");

printf("\t\t| 4. 删除存档记录 |\n");

printf("\t\t| 5. 修改学生信息 |\n");

printf("\t\t| 6. 插入学生信息 |\n");

printf("\t\t*------------------------------------------------*\n");

printf("\t\t| 7. 按成绩排序 |\n");

printf("\t\t| 8. 按班级学号排序 |\n");

printf("\t\t| 9. 统计学生信息 |\n");

printf("\t\t| 10. 显示已存所有信息 |\n");

printf("\t\t*------------------------------------------------*\n");

printf("\t\t| 11.管理员录入可选课题 |\n");

printf("\t\t| 12.删除已存课题信息 |\n");

printf("\t\t| 13.查看可供选择的课程 |\n");

printf("\t\t| 14. 退出 |\n");

printf("\t\t*------------------------------------------------*\n\n");

printf("\t\t\t请输入对应数字选择对应功能:");

scanf("%d",&n);/*输入选择功能的编号*/

while(n)

{

switch(n) {

case 1: in(); break; /*调用录入学生信息过程*/

case 2: search(); break; /*查找学生信息过程*/

case 3: search1(); break; /*查找学生信息过程*/

case 4: del(); break; /*调用删除学生信息的过程*/

case 5: modify1(); break; /*调用修改学生信息的过程*/

case 6: insert(); break; /*调用插入数据的过程*/

case 7: order1(); break; /*调用成绩排序过程*/

case 8: order2(); break; /*调用班级学号排序过程*/

case 9: tongji(); break; /*计算总数*/

case 10: show(); break;

case 11: give(); break; /*管理员录入可选课题*/

case 12: del2(); break; /*调用删除课题的过程*/

case 13: show1(); break; /*查看可供选择的课程*/

case 14: system("exit");exit(0);

default:break;

}

getch();

menu1(); /*执行完功能再次显示菜单界面*/

scanf("%d",&n);

}

}

void menu2() /*学生菜单*/