仓库管理系统(c语言)

仓库管理系统(c语言)
仓库管理系统(c语言)

作品名称

开发者:

一、系统背景:

本软件能减轻对货物数目管理及价格盈亏等信息处理的工作量以便能快捷及时准确的调整货物的仓储量达到最合理化。可以使店主不失效率的节省大量精力用于其他方面符合当今社会的商业形式而且本软件体积小操作简单是管理仓库的不二选择

二、系统简介:

设计亮点:

◆三级菜单使操作更简便明了

◆密码操作能有效保证客户信息的安全性

◆独特的dos命令调用使信息存储的实体属性为隐藏且无扩展名大大增大了安全系数◆数据结构为链表摆脱了数据数量的限制

◆提供三种查看模式并会标出排名

◆退出店主模式时会提示是否保存若选择yes着进行保存操作

基本功能:

·在员工模式下可输入卖出货物的名称和数目程序自动在后台进行一系列的操作

·新建数据并同时对其处理

·修改数据

·插入数据

·删除数据

·查找数据

·查看数据

·数据存档

·修改密码

三、系统结构图

#define LEN sizeof(struct shop) #include

#include

#include

#include

struct shop

{

char name[30];

float price_in;

float price_out;

int num_in;

int num_now;

int num_sold;

float win;

float percent;

struct shop *next;

};

int n=0;

void main(void)

{

void auto1(struct shop **h_p);

int menu1(struct shop **h_p);

void print1(void);

void assistant(struct shop *head);

int password(void);

int menu2(struct shop **h_p);

void print2(void);

void creat(struct shop **h_p);

void rewrite(struct shop **h_p);

void insert(struct shop **h_p);

void deleat(struct shop **h_p);

void search(struct shop **h_p);

void printall(struct shop **h_p);

void save(struct shop *head);

void password_set(void);

int password_exi(struct shop **h_p);

int data_exi(struct shop **h_p);

void load(struct shop **h_p);

void save(struct shop *head);

struct shop *addbuild(struct shop **h_p); void sort0(struct shop **h_p);

int search1(struct shop **h_p,char a[30]); void sort1(struct shop **h_p);

void sort2(struct shop **h_p);

void sort3(struct shop **h_p);

void print3(void);

void password_create(void);

struct shop *addbuild(struct shop **h_p); int a;

struct shop *head,**h_p;

head=NULL;

auto1(h_p);

do

{

a=menu1(h_p);

}

while(a!=3);

system("cls");

printf("谢谢使用^_^");

getch();

}

int menu1(struct shop **h_p)

{

int a,b;

struct shop *head;

head=*h_p;

print1();

scanf("%d",&a);

putchar('\n');

getchar();

do

{

switch(a)

{

case 1:assistant(head);break;

case 2:

if(password())

do

{

b=menu2(h_p);

}

break;

default:break;

}

if(a!=3)

{

system("cls");

print1();

scanf("%d",&a);

}

}

while(a!=3);

return(a);

}

int menu2(struct shop **h_p) {

int b;

char a;

struct shop *head;

head=*h_p;

print2();

scanf("%d",&b);

putchar('\n');

getchar();

do

{

switch(b)

{

case 1:creat(h_p);break; case 2:rewrite(h_p);break;

case 3:insert(h_p);break;

case 4:deleat(h_p);break;

case 5:search(h_p);break;

case 6:printall(h_p);break;

case 7:head=*h_p;save(head);break; case 8:password_set();break;

default:break;

}

if(b!=9)

{

system("cls");

print2();

scanf("%d",&b);

getchar();

}

}

while(b!=9);

printf("\n保存吗?(y/n):");

putchar('\n');

scanf("%c",&a);

if(a=='y')

{

head=*h_p;

save(head);

}

return(b);

}

void auto1(struct shop **h_p)

{

if(password_exi(h_p) && data_exi(h_p))

load(h_p);

}

void print1(void)

{

system("cls");

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

printf(" 仓库管理系统\n");

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

printf(" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \n");

printf(" #******************* 菜单*****************# \n");

printf(" #| 1.员工模式|# \n");

printf(" #| 2.店主模式|# \n");

printf(" #| 3.退出|# \n");

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

printf(" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \n");

printf("\n请选择(1-3):");

}

void assistant(struct shop *head)

{

char a[50],c='y';

int b;

struct shop *i;

i=head;

while(c=='y')

{

system("cls");

printf("\n请输入卖出的商品名称:\n");

gets(a);

putchar('\n');

printf("\n请输入卖出的商品数量:\n");

scanf("%d",&b);

putchar('\n');

while(strcmp(i->name,a)!=0&&i->next!=NULL)

i=i->next;

if(i->next!=NULL)

{

i->num_now-=b;

i->win=(i->num_in-i->num_now)*(i->price_out-i->price_in); }

else

printf("\n此商品不存在或通知店主更新数据库\n"); printf("\n继续吗?(y/n):");

putchar('\n');

c=getchar();

getchar();

}

save(head);

}

int password(void)

{

FILE*fp;

char a[50],b[50];

int i;

system("cls");

fp=fopen("c:\\y_secrea","rb");

fscanf(fp,"%s",&a);

fclose(fp);

printf("请输入密码:\n");

putchar('\n');

i=0;

do

{

b[i]=getch();

printf("*");

i++;

}

while(b[i-1]!=13&&i<19);

b[i-1]='\0';

if(strcmp(a,b)==0)

return(1);

else

return(0);

}

void print2(void)

{

system("cls");

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

printf(" 店主模式\n");

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

printf(" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \n");

printf(" #******************* 菜单*****************# \n");

printf(" #| 1.新建 2.修改|# \n"); printf(" #| 3.插入 4.删除|# \n"); printf(" #| 5.查找 6.查看|# \n"); printf(" #| 7.保存8.改密|# \n");

printf(" #| 9.上一层|# \n");

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

printf(" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \n");

printf("请选择(1-9):");

}

void creat(struct shop **h_p)

{

struct shop *head,*i,*j;

int f=1;

head=NULL;

n=0;

printf("\n请输入数据若完成请在名称处输“0”.\n\n");

i=j=addbuild(&head);

if(strcmp(i->name,"0")==0)

f=0;

while(f)

{

n++;

if(n==1)

head=j;

f=1;

printf("\n请输入下一种货物的数据.\n\n");

i=addbuild(&head);

if(strcmp(i->name,"0")==0)

{

free(i);

f=0;

break;

}

j->next=i;

j=i;

}

j->next=NULL;

*h_p=head;

}

void rewrite(struct shop **h_p)

{

char a[30];

struct shop *i,*j,*head;

head=*h_p;

i=head;

do

{

printf("\n请输入要修改货物的名称:");

putchar('\n');

gets(a);

if(n>=1&&!search1(h_p,a))

{

printf("\n不存在的货物名称!\n");

getch();

if(head==NULL) goto end;

}

}

while(n>=1&&!search1(h_p,a));

while(strcmp(a,i->name)!=0&&i->next!=NULL) {

i=i->next;

}

if(strcmp(a,i->name)==0)

{

printf("\n真的要修改吗??(y/n):");

putchar('\n');

if(getchar()=='y')

{

getchar();

j=addbuild(h_p);

strcpy(i->name,j->name);

i->price_in=j->price_in;

i->price_out=j->price_out;

i->num_in=j->num_in;

i->num_now=j->num_now;

i->num_sold=j->num_sold;

i->win=j->win;

i->percent=j->percent;

free(j);

printf("\n修改完成^_^\n\n");

}

}end:;

}

void insert(struct shop **h_p)

{

struct shop *i,*j,*x,*head;

head=*h_p;

x=addbuild(h_p);

i=j=head;

while(strcmp(i->name,x->name)<0&&i->next!=NULL)

{

j=i;

i=i->next;

}

if(strcmp(i->name,x->name)>=0)

{

if(i==head)

head=x;

else

j->next=x;

x->next=i;

}

else

{

i->next=x;

x->next=NULL;

}

printf("\n插入完成^_^\n\n.");

*h_p=head;

}

void deleat(struct shop **h_p)

{

struct shop*i,*j,*head;

char a[30],b;

head=*h_p;

do

{

system("cls");

printf("\n请输入你要删除的货物的名称:\n");

putchar('\n');

gets(a);

if(n>=1&&!search1(h_p,a))

{

printf("\n不存在的货物名称!\n");

if(head==NULL) goto end;

}

}

while(n>=1&&!search1(h_p,a));

printf("\n真的要删除吗?(y/n):");

putchar('\n');

b=getchar();

getchar();

if(b=='y')

{

i=head;

while(strcmp(i->name,a)!=0&&i->next!=NULL)

{

j=i;

i=i->next;

}

if(strcmp(i->name,a)==0)

{

if(i==head)

{

head=i->next;

free(i);

}

else

j->next=i->next;

n--;

printf("\n删除完成^_^.\n\n");

*h_p=head;

}

}

end:;

}

void search(struct shop **h_p)

{

int begin,end,mid,t;

char a[30];

struct shop *i,*head;

head=*h_p;

i=head;

printf("\n请输入要查询货物的名称:");

putchar('\n');

gets(a);

while((strcmp(i->name,a)!=0)&&i->next!=NULL) {

i=i->next;

}

if((strcmp(i->name,a)==0))

{

printf("\n名称\t进价\t售价\t进货数目存货数目销量\t赢利\t利率\n");

printf("\n======================================================= ========================\n");

printf("%s%10.2f%10.2f%10d%10d%10d%9.2f%10.2f",i->name,i->price_in,i->price_out,i->num_in

,i->num_now,i->num_sold,i->win,i->percent);

}

else

printf("\n此货物不存在!\n");

getch();

}

void printall(struct shop **h_p)

{

int a,c;

char b='y';

struct shop *i;

while(b=='y')

{

do

{

system("cls");

print3();

scanf("%d",&a);

}

while(a!=1&&a!=2&&a!=3);

switch(a)

{

case 1:sort1(h_p);break;

case 2:sort2(h_p);break;

case 3:sort3(h_p);break;

default:break;

}

for(c=1,i=*h_p;i->next!=NULL;i=i->next,c++)

{

printf("\n名称\t进价\t售价\t进货数目存货数目销量\t赢利\t利率\t排名\n");

printf("\n======================================================= ========================\n");

printf("%s%10.2f%10.2f%10d%10d%10d%9.2f%10.2f%8d",i->name,i->price_in,i->price_ out,i->num_in

,i->num_now,i->num_sold,i->win,i->percent,c);

if(c%8==0)

{

getch();

getchar();

printf("按任意键继续。。。\n");

}

}

printf("\n名称\t进价\t售价\t进货数目存货数目销量\t赢利\t利率\t排名\n");

printf("\n======================================================= ========================\n");

printf("%s%10.2f%10.2f%10d%10d%10d%9.2f%10.2f%8d",i->name,i->price_in,i->price_ out,i->num_in

,i->num_now,i->num_sold,i->win,i->percent,c);

getch();

getchar();

system("cls");

printf("查看其他排列方式?(y/n):");

scanf("%c",&b);

putchar('\n');

}

}

void save(struct shop *head)

{

FILE *fp;

struct shop *i;

system("attrib c:\\y_data -h");

system("del c:\\y_data");

fp=fopen("c:\\y_data","wb+");

i=head;

for(i=head;i->next!=NULL;i=i->next)

{

fprintf(fp,"%s%7.2f,%.2f,%d,%d,%d,%.2f,%.2f,",i->name,i->price_in,i->price_out,i->num_ in

,i->num_now,i->num_sold,i->win,i->percent);

}

fprintf(fp,"%s%7.2f,%.2f,%d,%d,%d,%.2f,%.2f,",i->name,i->price_in,i->price_out,i->num_ in

,i->num_now,i->num_sold,i->win,i->percent);

fclose(fp);

system("attrib c:\\y_data +h");

printf("\n^_^已保存\n");

}

void password_set()

{

FILE *fp;

int i,f=0,t=0;

char a[20],b[20];

do

{

if(password())

{

do

{

system("cls");

printf("请输入新密码(3~19位):\n"); putchar('\n');

i=0;

do

{

a[i]=getch();

printf("*");

i++;

}

while(a[i-1]!=13&&i<19);

a[i-1]='\0';

printf("\n请确认新密码:\n"); putchar('\n');

i=0;

do

{

b[i]=getch();

printf("*");

i++;

}

while(b[i-1]!=13&&i<19);

b[i-1]='\0';

if(strcmp(a,b)==0&&i>2)

{

t=1;

system("attrib c:\\y_secrea -h"); system("del c:\\y_secrea");

fp=fopen("c:\\y_secrea","wb+");

fprintf(fp,"%s",a);

fclose(fp);

printf("\n密码修改完成^_^\n");

};

}

while(t==0);

}

else

f++;

if(f==3)

break;

}

while(t==0);

}

int password_exi(struct shop **h_p)

{

FILE *fp;

if((fp=fopen("c:\\y_secrea","rb"))!=NULL)

用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语言

精心整理 作品名称 开发者: 一、系统背景: 本软件能减轻对货物数目管理及价格盈亏等信息处理的工作量以便能快捷 数 ·在员工模式下可输入卖出货物的名称和数目程序自动在后台进行一系列的操作·新建数据并同时对其处理 ·修改数据 ·插入数据 ·删除数据

·查找数据 ·查看数据 ·数据存档 ·修改密码 三、系统结构图 { float win; float percent; struct shop *next; }; int n=0;

void main(void) { void auto1(struct shop **h_p); int menu1(struct shop **h_p); void print1(void); int data_exi(struct shop **h_p); void load(struct shop **h_p); void save(struct shop *head); struct shop *addbuild(struct shop **h_p); void sort0(struct shop **h_p);

int search1(struct shop **h_p,char a[30]); void sort1(struct shop **h_p); void sort2(struct shop **h_p); void sort3(struct shop **h_p); void print3(void); { } printf("谢谢使用^_^"); getch(); } int menu1(struct shop **h_p) {

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语言教务管理系统

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语言实训题目

2011秋季C语言实训题目 1.学生成绩管理系统 功能要求: (1)可以从文件导入或录入多名学生的多门课程的学习成绩; (2)完成按姓名查找学生记录,并显示; (3)排序功能:按学生平均成绩进行排序; (4)插入功能:按平均成绩高低插入一条学生记录; (5)要求使用结构体,录入结果存放到文件; 显示要求: 程序输出菜单,用户按照提示操作,最终得到操作结果。 2.个人通讯录 功能需求: (1)可以对多名人物的信息进行输入; (2)显示所有的记录信息,若无记录,则给出提示信息; (3)可以按姓名查询该记录的有关信息; (4)可以按姓名对任意一种记录信息进行删除; (5)可以任意修改记录信息 (6)通过文件储存所输入的记录; (7)可以通过一个文件读入已有的通信录记录; 显示要求: 程序输出菜单,用户按照提示操作,最终得到操作结果。 3. 火车订票系统 功能要求: (1)列车原始信息从文件导入或从控制台录入,包括车次、票数等; (2)可以按车次进行列车信息查询; (3)客户对某一天订票,订票成功后,当日的票数需要被更改; (4)客户退票; (5)要求使用结构体; 显示要求: 程序输出菜单,用户按照提示操作,最终得到操作结果。 4、万年历系统 功能要求: (1)从2000年开始,用户输入年份与月份,将显示出该年该月份的日历,对应的星期。

(2)注意闰年情况 显示格式要求如下: (1)第一行显示月份(中英文都可以) (2)下一行显示星期,从周日到周六,中英文都可以 (3)下一行开始显示日期从1号开始,并按其是星期几实际情况与上面的星期数垂直对齐(4)程序输出菜单,用户按照提示操作,最终得到计算结果。 5、积分的实现 功能要求: (1)使用复合梯形公式求解函数f=1+x2、f=log(1+x)以及f=1/(1+x2)三个函数的定积分。(2)积分上下限及步长由C语言函数参数传递。 (3)用户输入函数编号,上下限和步长,程序输入结果。 显示要求: 程序输出菜单,用户按照提示操作,最终得到计算结果。 6、矩阵的运算 功能要求: 使用三个C语言函数分别实现两个矩阵的加、减和相乘功能。结果存放在第三个矩阵中。并编写程序验证三个函数功能。 每个函数的参数可选择(1):二位数组名,行数,列数 (2)指针变量名,行数,列数 返回值:用户自定义的运算状态,正常或其他异常情况。 显示要求: 程序输出菜单,用户按照提示操作,最终得到计算结果。 7. 链表的实现 编制一个程序,实现下面的要求 1. 程序启动后显示主菜单,包括下面的选项: 1. 链表查看 2. 插入节点 3. 删除节点 4. 链表存盘 5. 从文件调入 6. 退出 按下相应的数字键后进入各自的子功能 2. 每个子功能执行完毕后,返回并显示主菜单 3. 功能说明: 1. 链表查看:从头结点向后依次显示各结点中保存的数据 2. 插入节点:创建一个结点,输入新结点的数据,以及要插入的位置,将新结点插 入到链表中。 3. 删除节点:输入要删除的数据,从头结点依次查找,找到拥有该数据的结点后,

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语言教务管理系统

#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语言)

作品名称 开发者: 一、系统背景: 本软件能减轻对货物数目管理及价格盈亏等信息处理的工作量以便能快捷及时准确的调整货物的仓储量达到最合理化。可以使店主不失效率的节省大量精力用于其他方面符合当今社会的商业形式而且本软件体积小操作简单是管理仓库的不二选择 二、系统简介: 设计亮点: ◆三级菜单使操作更简便明了 ◆密码操作能有效保证客户信息的安全性 ◆独特的dos命令调用使信息存储的实体属性为隐藏且无扩展名大大增大了安全系数 ◆数据结构为链表摆脱了数据数量的限制 ◆提供三种查看模式并会标出排名 ◆退出店主模式时会提示是否保存若选择yes着进行保存操作 基本功能: ·在员工模式下可输入卖出货物的名称和数目程序自动在后台进行一系列的操作·新建数据并同时对其处理 ·修改数据 ·插入数据 ·删除数据

·查找数据 ·查看数据 ·数据存档 ·修改密码 三、系统结构图 #define LEN sizeof(struct shop) #include #include #include #include struct shop { char name[30]; float price_in; float price_out; int num_in; int num_now; int num_sold; float win; float percent; struct shop *next; };

void main(void) { void auto1(struct shop **h_p); int menu1(struct shop **h_p); void print1(void); void assistant(struct shop *head); int password(void); int menu2(struct shop **h_p); void print2(void); void creat(struct shop **h_p); void rewrite(struct shop **h_p); void insert(struct shop **h_p); void deleat(struct shop **h_p); void search(struct shop **h_p); void printall(struct shop **h_p); void save(struct shop *head); void password_set(void); int password_exi(struct shop **h_p); int data_exi(struct shop **h_p); void load(struct shop **h_p); void save(struct shop *head); struct shop *addbuild(struct shop **h_p); void sort0(struct shop **h_p); int search1(struct shop **h_p,char a[30]); void sort1(struct shop **h_p); void sort2(struct shop **h_p); void sort3(struct shop **h_p); void print3(void); void password_create(void); struct shop *addbuild(struct shop **h_p); int a; struct shop *head,**h_p; head=NULL; h_p=&head; auto1(h_p); do { a=menu1(h_p); } while(a!=3); system("cls"); printf("谢谢使用^_^");

学生成绩管理系统代码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语言

作品名称 开发者: 一、系统背景: 本软件能减轻对货物数目管理及价格盈亏等信息处理的工作量以便能快捷及时准确的调整货物的仓储量达到最合理化。可以使店主不失效率的节省大量精力用于其他方面符合当今社会的商业形式而且本软件体积小操作简单是管理仓库的不二选择 二、系统简介: 设计亮点: ◆三级菜单使操作更简便明了 ◆密码操作能有效保证客户信息的安全性 ◆独特的dos命令调用使信息存储的实体属性为隐藏且无扩展名大大增大了安全系数 ◆数据结构为链表摆脱了数据数量的限制 ◆提供三种查看模式并会标出排名 ◆退出店主模式时会提示是否保存若选择yes着进行保存操作 基本功能: ·在员工模式下可输入卖出货物的名称和数目程序自动在后台进行一系列的操作 ·新建数据并同时对其处理 ·修改数据 ·插入数据 ·删除数据

·查找数据 ·查看数据 ·数据存档 ·修改密码 三、系统结构图 #define LEN sizeof(struct shop) #include<> #include<> #include<> #include<> struct shop { char name[30]; float price_in;

float price_out; int num_in; int num_now; int num_sold; float win; float percent; struct shop *next; }; int n=0; void main(void) { void auto1(struct shop **h_p); int menu1(struct shop **h_p); void print1(void); void assistant(struct shop *head); int password(void); int menu2(struct shop **h_p); void print2(void); void creat(struct shop **h_p); void rewrite(struct shop **h_p); void insert(struct shop **h_p); void deleat(struct shop **h_p);

c语言成绩管理系统

C语言综合实验设计报 告 C语言成绩管理系统 班级:************ 任课教师:******** 实验老师:******** 小组成员:姓名:******** 姓名:******** 姓名:********

一、实验目的 开发一个c语言成绩管理系统来统计分析大家的c语言学习情况。本程序主要实现对大家的学号,姓名,c语言平时成绩、实验成绩、期末考试成绩,综合评价的成绩。以及通过求平均分,方差,标准差来对大家的学习情况进行分析总结。 二、设计分工说明 组长:********** 组员:****** 组员:******* 本程序开发过程,小组成员分工如下: 录入学生成绩的数据结构和名称由全体组员共同商讨确定; 学生成绩的录入和显示在屏幕上的模块由组员***完成; 学生成绩的方差的计算和排序模块由组员***完成; 学生成绩的保存函数设计和主调用函数的模块的设计由组员***完成。 三、问题概述 要实现这样一个学生成绩信息管理系统,程序的开发中应该涉及到以下的内容: 1、编写一个统一的函数来调用各功能函数; 2、处理新增学生信息的操作; 3、显示输出全部记录的信息; 4、计算学生成绩的平均值、方差和标准差的函数设计; 5、根据学生记录的某一属性对记录排序; 6、对所录入的信息的保存函数设计; 同时,还应有合适的数据变量和结构参与各功能的运算。 四、问题分析 由于信息管理系统中的数据通常是不确定的多条记录,并且我们小组成员的能力有限,所以只是选择了管理一个班级(数据有限)的程序设计。 程序设计中主要是采用了结构体的数据形式,主函数调用,文件的写入,以及子函数配合的组合设计。主要录入了本班学生的学号、姓名、平时成绩、实验成绩、期末成绩等。其中由于我们学校的学号比较长(由15位),因此用双精度实数类型(double)类型,但在输出的时候控制称“15.0lf”的形式输出;姓名为字符型(char);平时成绩、实验成绩、期末成绩等都是单精度实数类型(float)。 由于信息管理这类系统,数据通常是不确定多条记录,故本系统应采用链表的结构来维持整个数据集,同时,根据题目要求,学生成绩信息包含学号、姓名、班级、计算机、专业英语、总分等属性,各属性中,学号为整型,姓名和班级为字符串,计算机、专业英语和总分应为浮点型,对一个学生记录应设置一个结构体,同时学生记录链表应包含这样的结构体,以及指向下一条记录的指针。为了便于各功能模块对整个链表的操作,链表的头指针要定义为全局变量。 下面具体分析各功能模块操作: 新建录入函数实际上就是一个for循环和标准输入输出函数的组合,现要求输入人数,然后就是标准输入输出进行数据的输入。最后再综合算一下总评成绩。完成数据的输入。 显示信息函数实际就是for语句和标准输出函数的结合,完成对刚才录入数据的显示输出。

仓库管理系统c语言程序设计分析报告

仓库管理系统c语言程序设计报告

————————————————————————————————作者:————————————————————————————————日期:

信息科学与工程学院 课程设计报告 班级:通信一班 姓名(学号): 实验项目名称: c语言程序设计 实验室(中心):信息科学与工程学院信息技术实验 室 指导教师:李益才 实验完成时间: 2013 年 6 月 28 日

序号项目标准 评分 1 系统演示(功能) (50%) 按要求完成系统功能且界面友好容错能力强(45-50) 按要求完成系统功能界面一般有较好的容错能力 (40-44) 基本完成系统功能有一定的容错能力(35-39) 基本完成系统功能(30-34分) 未完成系统功能或他人代做或抄袭(15) 2 课程设计说明书 (50%) 课程设计书各项目认真填写,具有清晰的设计思路及 软件测试结果分析(45-50) 课程设计书各项目认真填写,具有较为清晰的设计思 路并对软件测试结果进行了较为清晰的分析(40-44) 课程设计书各项目认真填写,设计思路正确(35-39) 课程设计书进行为较为认真的填写(30-34) 课程设计书有未完成项或各项填写不属实或他人代做 或抄袭(15) 教师签字总分 一、题目 仓库管理系统 二、功能描述 该系统将输入进系统的仓库中物品的基本信息(包括货号、名称、单价、库存数量、品牌)进行处理,可以进行: (1)、按物品价格降序输出、按库存数量升序排列。 (2)、修改制定物品的信息。 (3)、删除指定物品的信息。

(4)、在指定物品前或后再插入一个物品的信息。 (5)、统计同一种品牌的数量。 三、概要设计 系统功能模块图 四、详细设计数 据 按 序 输 出 修 改 特 定 物 品 的 信 息 删 除 特 定 物 品 的 信 息 插 入 物 品 信 息 统 计 指 定 品 牌 物 品 的 数 量 数 据 文 件 载 入 数 据 文 件 输 入 磁 盘 物品信息输入 退 出 系 统进入系统

用c语言编写一个成绩管理系统

程序说明:有N个学生,每个学生的数据包含学号(不重复)、姓名、三门课的成绩及平均成绩,试设计一学生成绩管理系统,使之能提供以下功能:(1)主菜单学生成绩管理系统 1、成绩录入 2、成绩查询 3、成绩统计 4、退出(2)各菜单项功能① 成绩录入:输入学生的学号、姓名及三门课的成绩;② 成绩查询:(至少一种查询方式)。 v 按学号查询学生记录。 v 查询不及格学生的记录。③成绩统计: v 计算学生的平均分; v 根据学生的平均分高低,对学生的数据进行排序后输出; v 对学生单科成绩排序,输出学生姓名与该科成绩;④退出系统:退出整个系统(即主菜单)。(3)结构体数组: #define N 30 struct student {int num; /* 定义学号*/ char name[20]; /* 定义姓名*/ float score[3]; /* 定义存贮三门课成绩的数组*/ float average; /* 定义平均成绩*/ };struct student stu[N]; /* 定义结构体数组,存贮多个学生的记录*/ . #include #include #include struct student { int num; char name[20]; float score[4]; float average; } stu[10000]; long t,max; bool unpass[1000]; FILE *fstu=fopen("stud.dat","at+"); int init() { int no,i; float s[4],ave; char nam[20]; while (!feof(fstu)) { fscanf(fstu,"%d",&no); fscanf(fstu,"%s",nam); fscanf(fstu,"%f%f%f%f",&s[1],&s[2],&s[3],&ave);

学生成绩管理系统(数据结构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语言课程设计学生成绩管理系统

目录 ——学生成绩管理程序题目要求 (2) 设计目的 (2) 总体设计 (3) 详细设计 (3) 调试与测试 (12) 源程序 (14) 总结 (30)

学生成绩管理程序 一.题目要求 1.问题描述: 对在校学生几门课程的考试成绩进行统一管理.每个学生记录包括学号,姓名,年龄,数学,英语,物理成绩,默认以学号为序存放. 2.要求: (1)一个文件按以班为单位存储学生记录. (2)将允许的操作分为四种,以A,B ,C,D,E,F为标志: A:插入一个学生记录; B:修改学生记录; C:删除一个学生记录; D:查找一个学生记录; E:浏览学生成绩: F:退出 3.计算学生的总成绩. 4.按学号排序输出全班学生成绩表 . 二.设计目的 根据题目要求,由于学生信息是存放在文件中,所以应提供文件的输入,输出等操作;在程序中需要浏览学生的信息,应提供显示,查找,排序等操作;另外还应提供键盘式选择菜单实现功能选择.

三.总体设计 根据上面的需求分析,可以将这个系统分为以下模块:输入模块,修改模块,删除模块,查找模块,显示模块. 四.详细设计 1.主函数: 主函数一般设计得比较简单,只提供输入,处理和输出部分的函数调用,其中各功能模块用菜单方式选择. 流程图:

[程序]: //#include "head.h" int menu_select() { char c; printf("\n\n"); printf(" | 1. 增加学生记录 5.统计信息|\n"); printf(" | 2. 查询学生记录 6.打开文件|\n"); printf(" | 3. 修改学生记录7.保存文件|\n"); printf(" | 4. 学生纪录排序8.显示记录|\n"); printf(" | 0. 退出系统|\n"); printf("\n\n"); printf("请选择(0-8):"); c=getchar(); getchar(); return (c-'0'); } 2.输入模块: [分析]: 单独看各数据信息,学号,姓名是字符型,可以采用字符型数组;分数为整数,采用整数;数据信息存放在文件中,一条记录对应一个学生,既符合习惯又方便信息管理. 如果要存放若干学生信息就用结构体数组: void addrecord(student stud[]) { int i=0,j,num; char str[5]; if(numstus!=0) {

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

相关文档
最新文档