当前位置:文档之家› C语言教务管理系统(2000行代码)

C语言教务管理系统(2000行代码)

C语言教务管理系统(2000行代码)
C语言教务管理系统(2000行代码)

C语言教务管理系统一、程序结构图

二、程序运行截图

1. 个人信息简介

2.修改颜色

3.注册界面

4. 信息保存至文件

5.登录界面

6.管理员录入信息

7. 学生信息录入

8.学生成绩录入

9.学生课程表录入

10.学生信息查询界面

11学生信息查询

12.学生成绩查询

13.学生课表查询

三、代码(一个cpp)

#include

#include

#include

#include

#include

#include"windows.h"

#define student_num 1000 /*定义1000个学生*/

#define teacher_num 5 /*定义5个老师(管理员)*/

int is_my_student(struct student *p,int *size); /*声明返回第i+1个学生的函数*/ int is_my_teacher(struct teacher *p,int *size); /*声明返回第i+1个老师的函数*/ int length_student_name(char *p); /*声明验证用户名函数*/

int length_student_password(char *p); /*声明验证密码长度函数*/

int length_teacher_name(char *p); /*声明验证用户名函数*/

int length_teacher_password(char *p); /*声明验证密码长度函数*/

int show_menu_login(); /*声明登录菜单函数*/

int show_menu_register(); /*声明注册菜单函数*/

int show_teacher_select(); /*声明教师录入菜单函数*/

int show_student_select(); /*声明学生查询菜单函数*/

int student_register(struct student *ptr_student,int *size); /*声明学生注册函数*/ int teacher_register(struct teacher *ptr_teacher,int *size); /*声明老师注册函数*/ int vaild_student_name(char *p); /*声明验证用户名函数*/

int vaild_student_password(char *p); /*声明验证密码函数*/

int vaild_teacher_name(char *p); /*声明验证用户名函数*/

int vaild_teacher_password(char *p); /*声明验证密码函数*/

int vaild_two_password(char *p1,char *p2); /*声明验证两次密码是否相同函数*/ int yes_no_return(); /*声明选择是否返回上一层函数*/ void load(); /*声明加载函数*/

void register_(int *count1,int *count2); /*声明注册函数*/

void display_student(struct student stu); /*声明显示学生信息函数*/

void display_teacher(struct teacher tea); /*声明显示老师信息函数*/

void student_file1(); /*将保存的学生的账号密码存入文件中*/ void student_file2(); /*将保存的学生的个人信息存入文件中*/ void student_file3(); /*将保存的学生的成绩存入文件中*/ void teacher_file(); /*将保存的老师的账号密码存入文件中*/ void input_information(int count); /*声明输入学生信息函数*/

void input_score_menu(int count); /*声明输入学生成绩函数*/

void color(); /*声明选择窗体颜色函数*/

void print_stu_information(int count_stu); /*声明输出账号为num的学生的信息函数*/ void print_stu_score(int count_stu); /*声明输出账号为num的学生的成绩函数*/ void show_menu(); /*声明初始化界面函数*/

void input(); /*声明输入函数*/

void menu1(); /*声明教师录入课程表主菜单函数*/

void menu2(); /*声明学生查询课程表主菜单函数*/

void rank(); /*声明显示时间顺序函数*/

void querymenu3(); /*声明查询函数*/

void looktime(); /*声明按照时间查询函数*/

void looklessonname(); /*声明按照课程名查询函数*/

void add(); /*声明保存函数*/

void amend(); /*声明修改课程函数*/

void amend1(); /*声明修改课程子函数*/

void amendnews(int i); /*声明修改整个课程信息函数*/

void amendtime(int i); /*声明修改课程时间函数*/

void amendlessonname(int i); /*声明修改课程课程名函数*/

void amendclassroom(int i); /*声明修改课程教室函数*/

void deleted(); /*声明删除函数*/

void add_score(int count); /*声明添加学生成绩函数*/

void xiugai_score(int count); /*声明修改学生成绩函数*/

void shanchu_score(int count); /*声明删除学生成绩函数*/

void chaxun_score(int count); /*声明按要求查询学生成绩函数*/

void paixu_score(int count); /*声明学生成绩排序函数*/

void tongji_score(int count); /*声明学生成绩统计函数*/

float chinese(int count); /*声明计算语文成绩最大值函数*/

int chr(int count); /*声明计算语文成绩及格人数的函数*/

float english(int count); /*声明计算英语成绩最大值函数*/

int ehr(int count); /*声明计算英语成绩及格人数的函数*/

float math(int count); /*声明计算数学成绩最大值函数*/

int mhr(int count); /*声明计算数学成绩及格人数的函数*/

float computer(int count); /*声明计算计算机成绩最大值函数*/

int thr(int count); /*声明计算计算机成绩及格人数的函数*/

float PE(int count); /*声明计算体育成绩最大值函数*/

int phr(int count); /*声明计算体育成绩及格人数的函数*/

float sum_score(int count); /*声明计算总分成绩最大值函数*/

void load_student(int a); /*声明启动学生函数*/

void load_teacher(int a); /*声明启动老师函数*/

struct student /*学生结构体*/

{

/*个人信息*/

int student_id; /*账号*/

char student_name[20]; /*姓名*/

char password[16]; /*密码*/

int age; /*年龄*/

char qq[12]; /*QQ号*/

char tel[12]; /*电话*/

int grade; /*年级*/

/*各科成绩*/

float chinese; /*语文分数*/

float english; /*英语分数*/

float math; /*数学分数*/

float computer; /*计算机分数*/

float PE; /*体育分数*/

float sum; /*总分*/

/*课程表*/

char time[10]; /*时间*/

char lessonname[20]; /*课程名*/

char teacher[20]; /*授课老师*/

char classroom[10]; /*教室*/

char hours[10]; /*第几节课*/

int weeks; /*周时*/

};

struct teacher /*老师结构体*/

{

int teacher_id; /*账号*/

char teacher_name[20]; /*姓名*/

char password[16]; /*密码*/

};

struct student our_student[student_num];

struct teacher our_teacher[teacher_num];

void main() /*主函数*/

{

system("color f0"); /*初始化背景颜色*/

show_menu(); /*制作人信息简介*/

load();

}

void load() /*启动函数*/

{

int flag=1; /*控制循环结束的变量*/

int a=0,b=0; /*记录已注册的学生的人数a为学生个数b为老师个数*/

int *count1=&a,*count2=&b; /*指向学生人数和老师人数的指针*/

int correct_student,correct_teacher;

color();

register_(count1,count2); /*注册学生和老师的帐号*/

student_file1();

teacher_file();

while(flag)

{

switch(show_menu_login()) /*显示登录菜单*/

{

case 1: /*选择1,进入学生登录*/

if(correct_student=is_my_student(our_student,count1))

{

printf("\n ◆学生登录成功!\n");

display_student(our_student[correct_student-1]);

printf("\n");

printf(" ");

system("pause");

load_student(a);

}

else

printf("\n登录失败!\n");

printf("\n");

printf(" 提示:按Y退出登录界面,按N返回登录界面!!!\n");

flag=yes_no_return();

system("cls");

break;

case 2: /*选择2,进入老师登录,即管理员登录*/

if(correct_teacher=is_my_teacher(our_teacher,count2))

{

printf("\n ◆管理员登录成功!\n");

display_teacher(our_teacher[correct_teacher-1]);

printf("\n");

printf(" ");

system("pause");

load_teacher(a);

}

else

printf("\n登录失败!\n");

printf(" 提示:按Y退出登录界面,按N返回登录界面!!!\n");

flag=yes_no_return();

system("cls");

break;

case 3: /*选择3,退出登录*/

system("cls");

flag=0;

break;

default:

printf("请正确输入1-3:");

system("cls");

}

}

}

void load_student(int a) /*启动学生函数*/

{

int flag=1;

system("cls");

while(flag)

{

switch(show_student_select())

{

case 1: /*选择1,学生信息查询*/

system("cls");

print_stu_information(a);

printf("\n");

printf(" 提示:按Y退出学生查询界面,按N返回学生查询界面!!!\n");

flag=yes_no_return();

system("cls");

break;

case 2: /*选择2,学生成绩查询*/

system("cls");

print_stu_score(a);

printf("\n");

printf(" 提示:按Y退出学生查询界面,按N返回学生查询界面!!!\n");

flag=yes_no_return();

system("cls");

break;

case 3: /*选择3,学生课表查询*/

menu2();

printf(" 提示:按Y退出学生查询界面,按N返回学生查询界面!!!\n");

flag=yes_no_return();

break;

case 4: /*选择4,退出查询界面*/

system("cls");

flag=0;

break;

default:

printf("请正确输入1-4:");

system("cls");

}

}

}

void load_teacher(int a) /*启动老师函数*/

{

int flag=1;

system("cls");

while(flag)

{

switch(show_teacher_select())

{

case 1: /*选择1,学生信息录入*/

input_information(a);

system("cls");

student_file2();

printf("\n 提示:按Y退出教师录入界面,按N返回教师录入界面!!!\n");

flag=yes_no_return();

system("cls");

break;

case 2: /*选择2,学生成绩录入*/

input_score_menu(a);

system("cls");

student_file3();

printf("\n 提示:按Y退出教师录入界面,按N返回教师录入界面!!!\n");

flag=yes_no_return();

system("cls");

break;

case 3: /*选择3,学生课表录入*/

menu1();

printf(" 提示:按Y退出教师录入界面,按N返回教师录入界面!!!\n");

flag=yes_no_return();

system("cls");

break;

case 4: /*选择4,退出管理界面*/

flag=0;

break;

default:

printf("请正确输入1-4:");

system("cls");

}

}

}

int length_student_name(char *p) /*验证用户名是否合法*/

{

int l;

l=strlen(p);

if(l>20||l<1)

return 0;

else

return 1;

}

int vaild_student_name(char *p) /*判断用户名是否有效*/

{

int i=0;

int len=strlen(p);

if((*p>='a'&&*p<='z')||(*p>='A'&&*p<='Z')) /*判断首字母是不是字母*/

{

for(i=0;i

{

if(!(p[i]='_'||(p[i]>='a'&&p[i]<='z')||(p[i]>='A'&&p[i]<='Z')||(p[i]>='0'&&p[i]<='9'))) /*判断后面的字符是否有效*/

return 0;

}

return 1;

}

else

return 0;

}

int length_student_password(char *p) /*密码长度有效性验证*/

{

int len;

len=strlen(p);

if(len<6||len>16)

return 0;

return 1;

}

int vaild_student_password(char *p) /*密码的有效性验证*/

{

int i=0;

for(;*p!='\0';p++)

{

if(!((*p>='a'&&*p<='z')||(*p>'A'&&*p<'Z')||(*p>='0'&&*p<='9')))

return 0;

}

return 1;

}

int vaild_two_password(char *p1,char *p2) /*验证两次密码是否相同*/

{

if(strcmp(p1,p2)==0)

return 1;

else

return 0;

}

int student_register(struct student *ptr_student,int *size) /*完成注册功能*/

{

char password[16];

char repassword[16];

if(*size==student_num)

{

puts(" ◆注册人数已满!");

printf("\n");

return 0;

}

system("cls");

printf("\n\n");

printf(" ★请输入注册学生姓名:");

fflush(stdin);

gets(ptr_student[*size].student_name);

if(!(length_student_name(ptr_student[*size].student_name)&&vaild_student_name(ptr_st udent[*size].student_name)))

{

printf(" ◆您输入的姓名无效,学生姓名在1-20之间,首字符为字母,后面必须为字母、数字或下划线!!!");

return 0;

printf("\n");

printf(" ★请输入注册密码:");

fflush(stdin);

gets(password);

printf("\n");

printf(" ★请再次输入注册密码:");

fflush(stdin);

gets(repassword);

printf("\n");

if(!vaild_two_password(password,repassword))

{

printf("\n №:两次输入的密码不一致!!!");

printf("\n");

return 0;

}

else

strcpy(ptr_student[*size].password,password);

if(!(length_student_password(ptr_student[*size].password)&&vaild_student_password(ptr_ student[*size].password)))

{

printf(" ◆您输入的密码无效,密码应在6-16位之间,密码只能包含字母和数字!!!");

printf("\n");

return 0;

}

printf(" ★您的编号为:%d,这将是您的登录账号!!!",ptr_student[*size].student_id=20150000+*size);

return 1;

}

int is_my_student(struct student *p,int *size) /*如果登录成功则返回第i+1个学生的信息,否则返回0*/

{

int i;

int zhanghao;

char mima[18];

system("cls");

printf("\n\n");

printf(" ★请输入您的账号:");

scanf("%d",&zhanghao);

fflush(stdin);

printf("\n");

printf(" ★请输入您的密码:");

gets(mima);

for(i=0;i<*size;i++)

{

if((zhanghao==p[i].student_id)&&(strcmp(mima,p[i].password)==0))

return i+1;

}

return 0;

}

void display_student(struct student stu) /*显示学生信息*/

{

printf("\n ★您的账号是:%d\n",stu.student_id);

}

int length_teacher_name(char *p) /*验证用户名是否合法*/

{

int l;

l=strlen(p);

if(l>20||l<1)

return 0;

else

return 1;

}

int vaild_teacher_name(char *p) /*判断用户名是否有效*/

{

int i=0;

int len=strlen(p);

if((*p>='a'&&*p<='z')||(*p>='A'&&*p<='Z')) /*判断首字母是不是字母*/

{

for(i=0;i

{

if(!(p[i]='_'||(p[i]>='a'&&p[i]<='z')||(p[i]>='A'&&p[i]<='Z')||(p[i]>='0'&&p[i]<='9'))) /*判断后面的字符是否有效*/

return 0;

}

return 1;

}

else

return 0;

}

int length_teacher_password(char *p) /*密码长度有效性验证*/

{

int len;

len=strlen(p);

if(len<6||len>16)

return 0;

else

return 1;

}

int vaild_teacher_password(char *p) /*密码的有效性验证*/

{

int i=0;

for(;*p!='\0';p++)

{

if(!((*p>='a'&&*p<='z')||(*p>'A'&&*p<'Z')||(*p>='0'&&*p<='9')))

return 0;

}

return 1;

}

int teacher_register(struct teacher *ptr_teacher,int *size) /*完成注册功能*/

{

char password[16];

char repassword[16];

if(*size==teacher_num)

{

puts(" ◆注册人数已满!");

printf("\n");

return 0;

}

system("cls");

printf("\n\n");

printf(" ★请输入注册教师姓名:");

fflush(stdin);

gets(ptr_teacher[*size].teacher_name);

if(!(length_teacher_name(ptr_teacher[*size].teacher_name)&&vaild_teacher_name(ptr_tea cher[*size].teacher_name)))

{

printf(" ◆您输入的姓名无效,教师姓名在1-20之间,首字符为字母,后面必须为字母、数字或下划线!!!");

printf("\n");

return 0;

}

printf("\n");

printf(" ★请输入注册密码:");

fflush(stdin);

gets(password);

printf("\n");

printf(" ★请再次输入注册密码:");

fflush(stdin);

gets(repassword);

printf("\n");

if(!vaild_two_password(password,repassword))

{

printf("\n №:两次输入的密码不一致!!!");

printf("\n");

return 0;

}

else

strcpy(ptr_teacher[*size].password,password);

if(!(length_teacher_password(ptr_teacher[*size].password)&&vaild_teacher_password(ptr_ teacher[*size].password)))

{

printf(" ◆您输入的密码无效,密码应在6-16位之间,密码只能包含字母和数字!!!");

printf("\n");

return 0;

}

printf(" ★您的编号为:%d,这将是您的登录账号。",ptr_teacher[*size].teacher_id=20150+*size);

return 1;

}

int is_my_teacher(struct teacher *p,int *size) /*如果登录成功则返回第i+1个老师的信息,否则返回0*/

{

int i;

int zhanghao;

char mima[18];

system("cls");

printf("\n\n");

printf(" ★请输入您的账号:");

scanf("%d",&zhanghao);

fflush(stdin);

printf("\n");

printf(" ★请输入您的密码:");

gets(mima);

for(i=0;i<*size;i++)

{

if((zhanghao==p[i].teacher_id)&&(strcmp(mima,p[i].password)==0)) return i+1;

}

return 0;

}

void display_teacher(struct teacher tea) /*显示老师信息*/

{

printf("\n ★您的账号是:%d\n",tea.teacher_id);

}

void register_(int *count1,int *count2) /*注册函数*/

{

int i=1;

while(i)

{

switch(show_menu_register())

{

case 1:

if(student_register(our_student,count1))

{

(*count1)++;

printf("\n");

printf("\n ★注册成功!\n");

printf(" ");

system("pause");

system("cls");

}

break;

case 2:

if(teacher_register(our_teacher,count2))

{

(*count2)++;

printf("\n");

printf("\n ★注册成功!\n");

printf(" ");

system("pause");

system("cls");

}

break;

case 3:

i=0;

system("cls");

break;

default:

printf("请正确输入:\n");

printf(" ");

system("pause");

system("cls");

}

}

}

void input_information(int count)

{

int k;

system("cls");

for(k=0;k

{

printf("\n\n");

printf("\t请输入第%d位同学的信息\n",k+1);

printf("\t\t请录入学号为%d的学生的年龄:",our_student[k].student_id);

scanf("%d",&our_student[k].age);

printf("\n");

printf("\t\t请录入学号为%d的学生的QQ号:",our_student[k].student_id);

scanf("%s",our_student[k].qq);

printf("\n");

printf("\t\t请录入学号为%d的学生的电话:",our_student[k].student_id);

scanf("%s",our_student[k].tel);

printf("\n");

printf("\t\t请录入学号为%d的学生的年级:",our_student[k].student_id);

scanf("%d",&our_student[k].grade);

printf("\n");

printf("\t\t您已经成功将学号为%d的学生的信息录入!!!\n",our_student[k].student_id);

}

}

void input_score_menu(int count)

{

int number,i=1;

system("cls");

printf("\n\n");

printf("\t*************************学生成绩管理*************************\n");

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

printf("\t* 1. ☆添加学生成绩☆*\n");

printf("\t* 2. ☆修改学生成绩☆*\n");

printf("\t* 3. ☆删除学生成绩☆*\n");

用C语言实现一个简单的学生成绩管理系统

目录 1 引言 (1) 2 系统需求分析 (1) 2.1项目背景分析 (1) 2.2 系统开发的目标与意义 (1) 2.3 项目需求分析 (1) 3 系统总体设计 (1) 3.1 功能模块分析 (1) 3.2 系统功能模块初始化准备 (3) 3.2.1 编译预处理 (3) 3.2.2 数据结构定义 (3) 3.3 具体模块处理函数的实现 (4) 3.3.1 菜单函数界面的设计 (4) 3.3.2 功能函数设计 (4) 4 系统测试与分析 (9) 4.1 运行工具介绍 (9) 4.2 系统操作 (9) 结束语 (10) 参考文献 (10)

用C语言实现一个简单的学生成绩管理系统 摘要:伴随着现代社会的发展,网络技术的不断进步,越来越多的管理工作都从传统的现实社会中发展到了网络上。高校是使用计算机技术最早的单位,学校的各项管理工作也从现实生活走上了网络空间。本文对学校的需求进行分析,通过使用C语言设计并实现学生成绩的管理,力求尽量简洁实用地解决学校对学生成绩的管理和学生对成绩的查询问题。 关键字:C语言成绩管理系统程序设计 1 引言 在信息时代,计算机以其极高的运算速度、巨大的数据存储容量,以及能准确地进行各种算术运算和逻辑运算的能力而成为现代化计算工具,并被广泛应用于社会各个领域。计算机技术的高速发展已被认为是人类进入信息时代的标志。成绩管理系统是计算机技术和信息时代的产物,是信息处理或数据处理的核心。该系统开发的总体任务是实现学生成绩管理的系统化、规范化、自动化,以达到提高学生成绩管理效率的目的。通过运用程序设计软件实现学生成绩管理中的多种功能,如学生成绩信息的添加、删除、查询、修改、显示、排序等。该系统的设计充分利用计算机作为辅助工具,来实现学生考试成绩从传统的手工管理到计算机管理,并对提高管理效率和节约大量的人力、物力有一定的推动作用。因此,开发这种管理软件很必要,本文将在分析系统的应用价值以及开发工具的基础上,用C语言来开发成绩管理系统。 2 系统需求分析 2.1项目背景分析 在我国,各大中小学校的各类信息管理系统并非一个新的课题,但也有的学校根本就没有任何信息管理系统,特别是在西部贫困地区,学校的各类管理依然由手工操作来完成,这十分落后,效率极低,成本很大,而且极异出错。随着社会的发展,信息化是社会进程的必然趋势,学校管理只有快,准,精才能发挥其价值。 2.2 系统开发的目标与意义 (1)系统开发目标:本系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学院的工作流程设计完成的。为了使系统在学院的管理中发挥充分发挥其作用,实现工作过程的计算机化,提高工作效率和工作质量,现提出如下的系统开发目标: ①系统应具有实用性、可靠性和适用性。 ②对系统中数据库的信息进行有效处理,防止数据错乱。 ②能够按照用户选择的不同的条件进行简单查询。 ③方便用户的操作,尽量减少用户的操作。 (2)系统开发的意义:在各大中小学校,用计算机管理学校的信息已经越来越普遍了。用计算机不但可以提高工作效率,而且还节省了许多人力物力财力。提高了学校的管理能力,为此,用计算机来管理学校的信息,是非常必要的。 2.3 项目需求分析 学校工作流程分析:学校工作总体规划由教务人员在学生成绩管理系统中输入学生的基本信息并对其进行维护管理,包括对信息的增加、修改及对信息的各项处理操作等。 新的学年,教务人员首先编排班级,再对在校学生进行基本的信息录入,新生入学后由教务人员在管理系统中完成新学生信息的维护。在每个学期开始,教务处根据班级的情况,以班为单位,为每个班级安排一个班主任,并对各科老师进行安排。每举行一次考试后由任课老师对成绩进行录入。班主任对本班的成绩汇总。并进行排名,并对本年级各科成绩及总成绩进行排名。教务处、班主任及任课老师跟据实际情况对录入的成绩进行维护管理,各位同学对以上录入的信息可以跟据自己的需要进行适当的查询。 3 系统总体设计 3.1 功能模块分析 学生成绩管理系统是对学生基本信息及成绩的管理。开发工具主要采用TurboC2.0,主要用于对学生的学

C语言课程设计-学生成绩管理系统-完整版

#include<> #include<> #include<> #include<> /* strcmp函数原型包含*/ #define N 100 /*定义最大学生人数为100*/ struct student /*学生结构体定义*/ { char no[11]; /*学号,10位*/ char name[10];/*姓名,3个汉字*/ char grade[10];/*班级*/ char pro[20];/*专业*/ float score[5];/*储存5门功课的成绩*/ float ave;/*储存平均分*/ int year;/*入学年*/ }stu[N]; int num; void panduani(int); /*通过i的值,判断信息要查找的信息是否存在*/ void output(); /*输出学生成绩函数(公共函数)*/ void init(); /*系统初始化函数*/ void newfile(); /*建立新的数据文件*/ void read1(); /*从数据文件中读取数据*/ void weihu(); /*维护界面函数*/ void new1(); /*新增一个学生成绩函数*/ void xiugai(); /*修改学生成绩*/ void xgcj(int); /*修改成绩*/

void delete1(); /*删除学生信息函数*/ void tongji(); /*统计界面函数*/ void tongji1(); /*计算每个学生平均分*/ void tongji2(); /*计算每门课程的平均分*/ void paixu1(); /*排序函数*/ void paino(); /*按学号排序*/ void paiave(); /*按平均分排序*/ void paidkcj(); /*按单科成绩排序*/ void change(int,int); /*交换结构体数组中的两个记录*/ void outputx(int); /*选择输出单科成绩*/ void find1(); /*查找界面函数*/ int find(char sno[]); /*按学号查找*/ int findname(char cname[]);/*按姓名查找*/ void findyear(int cyear); /*按入学年查找*/ void save(); /*保存文件*/ void stop(); /*停顿函数*/ void stop() /*停顿函数(公共函数)*/ { printf("Press Any Key To Continue...\n"); getchar(); } void output() /*输出学生成绩函数(公共函数)*/ { int i,j;

c语言程序设计atm自动取款机实验报告材料

课程设计报告 课程类别:本科 课程名称:程序设计基础(C语言) 课程代号:指导教师: 银行ATM自动取款机系统课程设计 姓名:学号: 姓名:学号: 姓名:学号: 学院: 班级:

目录 1.课程设计内容.................................................. 2.课程设计要求.................................................. 3.可行性研究................................................... 4.需求分析..................................................... 5.概要设计...................................................... 5.1 功能模块图............................................... 5.2 功能模块描述............................................. 5.3数据结构 ................................................. 6.详细设计...................................................... 6.1 功能流程图............................................... 6.2 重点设计................................................. 7.测试与调试.................................................... 8.总结.......................................................... 8.1 心得体会.................................................. 8.2 不足与改进................................................ 9.参考文献......................................................

c语言教务管理系统

c语言教务管理系统-标准化文件发布号:(9556-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

#include"stdio.h" #include"stdlib.h" #include"conio.h" #include"string.h" #include"windows.h" //登陆界面函数 void load(); void background1(); void choice1(); void fanhui1(); void denglu(); void zhuce(); int chazhao(); //目录界面函数 void mulu(); void background(); void choice(); void add(); void xiugai(); void shanchu(); void del(); void chaxun(); void paixu(); void tongji(); void output(); void finish(); void fanhui2(); void shuchu(); int zongren(); int chr(); int enr(); int mar(); void back(); float chinese(); float english(); float math(); float zongmax(); //登陆界面结构体struct self { char a[10]; char b[10]; int flg; }s[100]={{"admin","admin",1},{"1","1",1}};

C语言ATM程序模拟

一、课题要求 1、当输入给定的卡号和密码(初始卡号和密码为123456)时,系统能登录A TM柜员机系统。 2、查询余额:初始余额为10000元。 3、ATM取款:每次取款金额为100的倍数,总额不超过5000元,支取金额不允许透支。 4、ATM存款:不能出现负存款。 5、修改密码:新密码长度不小于6位,不允许出现6位完全相同的情况,只有旧密码正确, 新密码符合要求,且两次输入相同的情况下才可以成功修改密码。 二、代码 #include "stdafx.h" #include "stdio.h" #include "windows.h" #include "stdlib.h" #include "conio.h" void gotoxy(int x,int y); //光标位置函数 void enter_ATM(); //账号输入函数 void input_code(); //密码输入函数 void caozuo(); //基本操作界面 void qukuan(); //取款函数 void success(); //操作成功函数 void delay(); //延时函数 void yu_e(); //余额查询函数 void cunkuan(); //存款函数 void panduan(long int z); //判断取款是否合法函数 void exit(); //退出界面函数 void mima(); //密码修改 void zhuangyi(); long int CODE=123456,YU_E=10000; //=========================主函数========================// main() { enter_ATM(); caozuo(); } //======================================================// //==================================柜台机账号输入函数=======================================//

c语言教务管理系统

#include"stdio.h" #include"stdlib.h" #include"conio.h" #include"string.h" #include"windows.h" //登陆界面函数void load(); void background1(); void choice1(); void fanhui1(); void denglu(); void zhuce(); int chazhao(); //目录界面函数void mulu(); void background(); void choice(); void add(); void xiugai(); void shanchu(); void del(); void chaxun(); void paixu(); void tongji(); void output(); void finish(); void fanhui2(); void shuchu(); int zongren(); int chr(); int enr(); int mar(); void back(); float chinese(); float english(); float math(); float zongmax(); //登陆界面结构体struct self { char a[10]; char b[10]; int flg; }s[100]={{"admin","admin",1},{"1","1",1}};

//目录界面结构体 struct student { char num[10]; char name[10]; float chinese; float english; float math; float sum; int a; }stu[5]={{"1100","小明",12,18,20,50,1},{"1101","小样",20,80,60,160,1}}; //登陆界面 void main() { load(); } void load() { background1(); choice1(); } void background1() { puts(" "); puts(" "); printf(" ********************************************\n"); printf(" 欢迎登录学生管理系统"); puts(" "); printf(" ********************************************\n"); printf(" 1.登录 2.注册\n "); printf(" 请选择:"); } void choice1() { int a; scanf("%d",&a); fflush(stdin); switch(a) { case 1:denglu();break; case 2:zhuce();break; default:fanhui1();break; } }

c语言学生成绩管理系统含源代码

C 语言程序设计作业 一设计项目:学生成绩管理系统 二总体设计: 2:模块功能说明: 1 输入功能:输入学生姓名学号及成绩。 2 查看功能:输出姓名学号及各科成绩。 3 查询功能:通过学号查询学生姓名及各科成绩。 4 统计功能:统计班级学生及格率,优秀率,各个学生成绩方差等。 5 修改功能:通过输入学号修改指定学生的错误信息。 6添加功能:添加学生信息。 7删除功能:通过输入学号输入指定学生信息。 8保存功能:将学生信息保存。 9 退出系统。 3:主要函数之间的调用关系及各自功能: 主要函数的函数原型 void inputscore(void); void savescore(void); void avergescore(void); void modifyscore(void); void lookscore(void); void searchscore(void); void statistic(void); void add(void); void modify(void);

void delscore(void); void menu(void); i.在菜单界面输入1,调用函数inputscore( )实现输入学生成绩信息功能。ii.在菜单界面2,调用函数lookscore( )实现学生成绩按平均分高低排序输。 出,同时lookscore()函数调用avergescore()函数实现各个学生平均分的计 算。 iii.在菜单界面输入3,调用searchscore()函数实现通过学号查找学生成绩信息功能。 iv.在菜单界面输入4,调用statistic()函数输出班级及格率,优秀率,学生成绩方差,不及格学生名单。 v.在菜单界面输入5,调用modify()函数实现通过学号修改学生成绩的功能vi.在菜单界面输入6,调用add()函数实现添加学生成绩。 vii.在菜单界面输入7,调用delscore()函数实现删除指定学生成绩。 viii.在菜单界面输入8,调用savescore()函数将学生成绩信息保存。 ix.在菜单界面输入9,退出成绩管理系统。

C语言ATM机实现

#include //提供了strcmp()函数 #include struct student { char xm[20];//姓名 char mm[10];//密码 int je;//金额 int zh;//帐号 }; void main() { int i; int k=0; int count=1000; int f; student st[10]={"","",0,0}; bool flag=false; do { printf("1--注册2--登录3--取款4--存款5--查询0--退出\n"); scanf("%d",&i); if (i==1) { printf("输入姓名:"); scanf("%s",&st[k].xm); printf("输入密码"); scanf("%s",&st[k].mm); st[k].zh=count++; printf("你的帐号为%d\n",st[k].zh); k++; } else if (i==2) { int zh; char mm[20]; printf("输入卡号"); scanf("%d",&zh); printf("输入密码"); scanf(" %s",&mm);

for(int j=0;j<10;j++) { if(st[j].zh==zh && strcmp(st[j].mm,mm)==0) { flag=true; printf("找到了"); f=j; break; } } } else if (i==4) { if (flag!=true) { printf("您还没有登录"); } else { printf("输入存款金额"); int je; scanf("%d",&je); st[f].je=st[f].je+je; printf("存款成功"); } } else if (i==3) { if (flag!=true) { printf("您还没有登录"); } else { printf("输入取款金额"); int je; scanf("%d",&je); if (je>st[f].je) { printf("余额不足"); } else { st[f].je=st[f].je-je;

学生成绩管理系统代码c语言编写

/* Note:Your choice is C IDE */ #include "stdio.h" #include "stdlib.h" #include "string.h" typedef struct student // 定义学生 { char name[10]; int number; char sex[2]; int math; int eglish; int clanguge; int average; } student; typedef struct unit // 定义接点 { student date; struct unit * next; } unit; unit * build() // 建立链表并返回指针 { unit *p; if ((p =(unit * )malloc( sizeof (unit))) ==NULL) { printf( "=>初始化失败!"); return 0; } else { p-> next =NULL; p-> date . number=0; // 头结点存放学生人数printf( " 初始化成功!\n" ); return p; } } void add(unit * head) // 增加学生 { unit *p,*q; int m,n =0; q=head-> next; p=(unit * )malloc( sizeof (unit)); printf( "=>请输入新生姓名!\n" ); gets(p ->date . name);fflush(stdin); printf( "=>请输入学号!\n" ); while (n ==0)

C语言课程设计ATM机模拟操作附源码

C语言-ATM机模拟操作 程序实现功能点: a.查询:查询帐户的存款余额。按任意键返回主菜单; b.取款:输入100、500、1000、2000、5000、其它金额为取款金额,取 款金额不超过帐户余额,操作后帐户余额应相应减少,之后可返回主菜单; c.存款:输入100、500、1000、2000、5000、其它金额为存款金额,存 款金额不超过20000元,操作后帐户余额应相应增加。之后可返回主菜单; d.转帐:输入一个帐户号,程序判断与文件信息是否相符,储户确认无 误后,再输入100、500、1000、2000、5000、其它金额为转帐金额,转帐金额不得超过帐户余额,操作后帐户余额应相应减少。之后可返回主菜单; e.修改密码:连续输入两次新密码(两次输入结果完全相同)后,新密码 取代旧密码,并存放到帐户信息文件中。之后可返回主菜单; f.退出:退出系统; g.帮助:增加趣味性; h.存款时,可正可负,正表示存款,负表示取款; i.帐户信息存放在文件,储户存取款记录保存在中;(在目录下创建这两

个文件) j.采用模块化程序设计方法来实现,即main()显示主菜单、调用相关函数实现相应功能,起主控作用; k.储户一天内输错密码的次数不能超过3次,否则无法进入系统; l.有效避免输入存款金额、取款金额为负数等异常情况的出现。 较为突出的功能是注册、登录时账号密码的核对验证;存款转出转入金额的核对。是否超过余额,是否不符合格式,是否为冲突操作。 (2)程序运行截图及说明(每图限50到100字); 进入程序,menu1可选择登录、注册功能。 选择登录,输入账号密码,通过输入内容与文件的匹配,判断是否成功登录。若登录失败,则重新选择。

C语言模拟ATM机

一、实验目的 通过设计一个ATM机模拟操作的程序,全面运用课程的主要知识点,巩固对模块化程序设计、文件操作的理解,提高软件编程能力。 二、实验要求 要求每人独立完成设计,编写一个ATM机模拟操作程序。提交实验报告、源程序、程序运行截图。 1.程序具有以下功能: 1)登录系统: 输入卡号(16位)、密码(6位),只有卡号、密码同时正确(帐户信息存放在文件中)才能进入系统; 2)操作功能: ●查询:查询帐户的存款余额。按任意键返回主菜单; ●修改密码:连续输入两次新密码(两次输入结果完全相同)后,新密码取代旧密码,并存放到 帐户信息文件中。之后可返回主菜单; ●取款:输入50或100的倍数模拟为取款金额,请注意:取款金额不得超过帐户余额,操作后 帐户余额应相应减少。之后可返回主菜单; ●存款:输入50或100的倍数模拟为存款金额,现假设存款金额不得超过20000元,操作后 帐户余额应相应增加。之后可返回主菜单; ●转帐:先输入一个帐户号(已保存在帐户信息文件中),然后显示一部分用户名(如:张*山), 储户确认无误后,再输入50或100的倍数模拟为转帐金额,请注意:转帐金额不得超过帐户余额,操作后帐户余额应相应减少。之后可返回主菜单; ●退出:退出系统。 2.定义如下结构体类型: ●“日期”结构体Date:成员有:year(年)、month(月)、day(日); ●“帐户”结构体Account:成员有:no(帐户号)、name(姓名)、balance(余额) ●“存取款记录”结构体Record,:成员有:no(帐户号)、date(日期)、number(数量,可正可负, 正表示存款,负表示取款)

学生成绩管理系统(数据结构C语言版源代码)54843943

天天都是一个出发点,每天都有一点提高,每天都有一点收成! #include #include #include struct students{ char Sex[3]; /*字符型学生性别*/ double English; /*双精度实型英语成绩*/ double Java; /*双精度实型Java成绩*/ double Sjjg; /*双精度实数据结构*/ double Szdl; /*双精度实型数字电路*/ double Jsj; /*计算机组成原理*/ struct students *next; /*用与构建连表指向下一结点*/ }; FILE *fp; /*定义全局变量fp*/ void Revisemenu();/*修改菜单*/ void Sortmenu();/*排序菜单*/ void menu();/*主菜单*/ void secret();/*安全验证*/ struct students * Input();/*新建学生信息*/ void fprint(struct students *head);/*将信息导入文件可追加*/ void fprint_(struct students *head);/*将信息导入文件并覆盖*/ void Browse(struct students *head);/*浏览全部学生信息*/ struct students * create(struct students *head int *n);/*从tushu_list中读取数据构建链表*/ void SortEnglish(struct students * head);/*按英语成绩排序*/ void SortJava(struct students * head);/*按Java成绩排序*/ void SortSjjg(struct students * head);/*按数据结构成绩排序*/ void SortSzdl(struct students * head);/*按数字逻辑电路成绩排序*/ void SortJsj(struct students * head);/*按计算机组成原理成绩排序*/ struct students * Delete(struct students * head struct students * Revise();/*修改学生信息(按编号修改)*/ /*主菜单*/ void menu() { printf("\n\n"); printf("***************************************************\n"); printf(" 学生成绩管理系统 \n"); printf(" 1-添加新同学 2-浏览学生信息 \n"); printf(" 5-按成绩排序 6-修改学生信息 \n"); printf(" 7-删除学生信息 0-退出系统 \n"); printf("___________________________________________________\n");

c语言学生成绩管理系统代码

#include #include #include #define MAXN 100 //一个班最多的人数 #define MAXM 2 //成绩的课程门数 int R; void input(); //1.学生成绩新建 void sort(); //2.学生成绩插入 void load(); //3.学生成绩修改 void print(); //4.学生成绩删除 void total(); //5.学生成绩统计 void search(); //6.学生成绩查询 void save(); //7.学生成绩保存 void end(); //8.结束 struct student { char name[20]; //保存全班姓名 char num[12]; //保存全班学号 float score[MAXM]; //保存全班所有课程成绩 float sum; //保存全班每个人的总成绩 float avg; //保存每个人的平均成绩 }; struct student s[MAXN]; struct http { char subject[20]; //保存全班所有课程 }; struct http c[MAXM]; void main() //欢迎首界面 { int select,l; system("color fC"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf(" ¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥\n"); printf(" * *\n"); printf(" * *\n"); printf(" * 欢迎进入终极一班学生管理系统 *\n"); printf(" * *\n"); printf(" * ︻┳═一 cf ... *\n"); printf(" * ┈━═☆甘总管的多塔生活∝╬══→ *\n");

c语言程序设计atm自动取款机实验报告

程设计报告课程类别:本科 课程名称:程序设计基础(C语言) 课程代号:指导教师: 银行ATM自动取款机系统课程设计姓名:学号: 姓名:学号: 姓名:学号: 学院: 班级:

目录 1. 课程设计内容....................... 2. 课程设计要求....................... 3.可行性研究........................ 4.需求分析......................... 5. ...................................................................... 概要设计. 5.1 功能模块图 ..................... 5.2 功能模块描述 ..................... 5.3 数据结构 ...................... 6. ...................................................................... 详细设计. 6.1 功能流程图 ..................... 6.2 重点设计 ...................... 7. 测试与调试........................ 8. 总结. ....................................................... 8.1 心得体会 ....................... 8.2 不足与改进 ...................... 9. 参考文献. ................................................. 1. 课程设计内容

C语言大作业学生信息管理系统

《程序设计综合课程设计》报告 学生姓名: ______ ______ ______ ______________________ 学生班级: ______________________ ____________ ____________ 学生学号: ____________ 指导教师: ______ 2014年6 月 22 日

目录 前言 (2) 第1章Visual C++6.0简介及其优点 (3) 第2章课程设计的目的和要求 (4) (4) 2.2课程设计的要求 (5) 第3章课程设计任务内容 (6) 3.1 需求分析 (6) 3.2可行性分析 (6) 第4章软件使用说明 (7) 第5章总结 .................................................. 错误!未指定书签。附录源程序 学生信息管理系统 前言 学生信息档案的管理对于学校的管理者来说至关重要,学生信息是高等学校非常重要的一项 数据资源,是一个教育单位不可缺少一部分。特别是近几年来,国家政策的调整,我国高等 院校大规模的扩招,给高等院校的教学管理、学生管理、后勤管理等方面都带来不少的冲击。 其包含的数据量大,涉及的人员面广,而且需要及时更新,故较为复杂,难以单纯地依靠人 工管理,而且传统的人工管理方式既不易于规范化,管理效率也不高,目前我国各类高等院 校中还有相当一部分学生档案管理还停留在纸介质的基础上,尤其是中、小学对学生档案的 管理更是落后,这样的管理机制已经不能适应时代发展的要求,其管理方法将浪费许多人力 和物力。随着科学技术的不断提高,计算机科学与技术日渐成熟,计算机应用的普及已进入 人类社会生活的各个领域,并发挥着越来越重要的作用。这种传统的手工管理模式必然被以 计算机为物质基础的信息管理方法所取代。 作为计算机应用的一部分,使用计算机对学生档案进行管理,有着手工管理所无法比拟 的优点,如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。 这些优点能够极大地提高学生档案管理的效率,也是学校向科学化、正规化管理发展的必要 条件,更是各个高等院校与世界接轨的重要条件。

C语言课程设计ATM机模拟操作附源码

C语言课程设计A T M机模拟操作附源码 Document serial number【UU89WT-UU98YT-UU8CB-UUUT-UUT108】

C语言-ATM机模拟操作 程序实现功能点: a.查询:查询帐户的存款余额。按任意键返回主菜单; b.取款:输入100、500、1000、2000、5000、其它金额为取款金额,取 款金额不超过帐户余额,操作后帐户余额应相应减少,之后可返回主菜单; c.存款:输入100、500、1000、2000、5000、其它金额为存款金额,存 款金额不超过20000元,操作后帐户余额应相应增加。之后可返回主菜单; d.转帐:输入一个帐户号,程序判断与文件信息是否相符,储户确认无 误后,再输入100、500、1000、2000、5000、其它金额为转帐金额,转帐金额不得超过帐户余额,操作后帐户余额应相应减少。之后可返回主菜单; e.修改密码:连续输入两次新密码(两次输入结果完全相同)后,新密码 取代旧密码,并存放到帐户信息文件中。之后可返回主菜单; f.退出:退出系统; g.帮助:增加趣味性; h.存款时,可正可负,正表示存款,负表示取款; i.帐户信息存放在文件,储户存取款记录保存在中;(在目录下创建这

两个文件) j.采用模块化程序设计方法来实现,即main()显示主菜单、调用相关函数实现相应功能,起主控作用; k.储户一天内输错密码的次数不能超过3次,否则无法进入系统; l.有效避免输入存款金额、取款金额为负数等异常情况的出现。 较为突出的功能是注册、登录时账号密码的核对验证;存款转出转入金额的核对。是否超过余额,是否不符合格式,是否为冲突操作。 (2)程序运行截图及说明(每图限50到100字); 进入程序,menu1可选择登录、注册功能。 选择登录,输入账号密码,通过输入内容与文件的匹配,判断是否成功登录。若登录失败,则重新选择。

C语言班级成绩管理系统

学院 课程设计报告 C语言程序设计课程设计 专业电气工程及其自动化班级 姓名 学号 指导教师 年月

新能源与动力工程学院课程设计任务书课程名称:C语言程序设计课程设计指导教师(签名): 班级:姓名学号:

指导教师评语及成绩评定表 指导教师签字: 年月日

目录 一.引言........................................................ - 1 - 1.1 设计目的.......................................... - 1 - 1.2意义............................................... - 1 - 1.3内容............................................... - 1 - 1.4主要任务........................................... - 2 - 二.主要功能和功能.............................................. - 3 - 2.1主要功能........................................... - 3 - 2.2要求............................................... - 3 - 三.系统的数据需求及性能分析..................................... - 4 - 3.1 数据需求.......................................... - 4 - 3.2系统的性能分析..................................... - 4 - 四. 输入输出要求................................................ - 5 - 五.整体框架结构................................................ - 6 - 六.学生成绩业务管理图.......................................... - 7 - 七.系统概要设计................................................ - 8 - 7.1 程序的模块组成.................................... - 8 - 7.2 学生信息结构数组.................................. - 8 - 7.3 各个程序的主要功能介绍:.......................... - 9 - 八.系统详细设计................................................ - 10 - 8.1函数介绍.......................................... - 10 - 九. 调试与测试................................................. - 13 - 9.1系统调试.......................................... - 13 - 9.2系统测试.......................................... - 13 - 十.总结....................................................... - 20 - 参考文献....................................................... - 22 - 附录源代码................................................... - 23 -

C语言程序设计报告模拟ATM取款机

仲恺农业工程学院工程实训报告 ATM取款机 课程名称C语言程序设计工程实训 姓名林少烈 院(系)计算机科学与工程学院 专业班级计算机113班 学号201110214317 指导教师王成 仲恺农业工程学院教务处制

目录 1 需求分析 (1) 2 系统总框图和功能模块说明 (1) 2.1 系统总框图 (1) 2.2 功能模块说明 (1) 3 系统设计 (2) 3.1 主要结构体 (2) 3.2主要功能函数 (2) 3.3 关键函数的流程图 (3) 4 系统调试 (12) 5 总结 (25) 6 源程序清单 (28) 6.1头文件 (28) 6.2主程序 (29) 6.3 解除被冻结用户 (64) 6.4 用户注册 (66)

1 需求分析 所设计的ATM取款机应具备以下功能: ●插入银行卡(用账号输入的方式代替); ●密码的输入; ●用户信息查询; ●用户余额查询; ●取款; ●转账; ●修改密码; ●退卡。 2 系统总框图和功能模块说明 2.1 系统总框图 图1 系统总框图 2.2 功能模块说明 ?输入用户账号模块:在运行时,完成用户账号的输入(代替插卡);

?输入账号密码模块:①在输入账号之后,完成用户密码的输入;②在修改密码的过程中,完成用户输入旧密码的功能; ?信息读取功能模块:完成用户信息的读取; ?冻结账号功能模块:当输入密码3次错误时,冻结用户账号: ?查询用户信息模块:完成用户的信息查询(不包括余额查询); ?查询余额功能模块:完成用户余额的查询; ?取款功能模块:完成取款功能模块: ?转账功能模块:完成转职功能; ?修改密码功能模块:完成用户修改密码功能; ?退卡功能模块:完成退卡功能(即:退出程序功能)。 3 系统设计 3.1 主要结构体 用户账号、、密码、余额 struct User //用户数据 { char num[20]; //用户账号 char name[10]; // char password[7]; //密码 float balance; //余额 }; 3.2主要功能函数 void read_info(); //用户信息读取 void input_num(char * num); //输入账号

相关主题
文本预览
相关文档 最新文档