C语言课程完全用机房,跪求C语言课程设计-“机房上机系统”

呵呵,估计没人回答了。。

不过,还是给你一个作个参考吧。

#include"stdio。h"

#include"stdlib。h"

#include"string。

h"

typedef struct prod

{

char num[10];

char name[10];

char leixing[12];

char guige[10];

char danwei[10];

int sum;

float prize;

char jihuo[12];

char youxiao[12];

struct prod *next;

}PRODUCT,*PLINK;

char *menu[]={" 1。

产品信息的输入: ",

" 2。产品信息的修改:",

" 3。产品信息的删除: ",

" 4。根据产品名称查询: ",

" 5。显示全部产品信息: ",

" 6。

按参考价格从小到大显示产品信息:",

" 7。显示全部过期产品信息: ",

" 8。增加产品信息: ",

" 9。退出系统: "};

int menu_select()

{

char c[3];

int a;

int i;

for(i=0;i10);

return a;

}

void print(PRODUCT *head);

PRODUCT *creat();

PRODUCT *del(PRODUCT *h);

PRODUCT *modify(PRODUCT *h);

void inquire(PRODUCT *h);

void printguoqi(PRODUCT *h);

PRODUCT *insert(PRODUCT *h);

void sortprint(PRODUCT *h);

void main()

{

PRODUCT *head=NULL;

for(;;)

{

switch(menu_select())

{

case 1:head=creat();break;

case 2:head=modify(head);break;

case 3:head=del(head);break;

case 4:inquire(head);break;

case 5:print(head);break;

case 6:sortprint(head);break;

case 7:printguoqi(head);break;

case 8:head=insert(head);break;

case 9:exit(0);

}

}

}

PRODUCT *creat()

{

PRODUCT *p,*h=NULL;

int i;

printf("请输入产品编号时,以#结束:

");

printf("!!!请注意,输入数据时不可以按空格:!!!

");

do

{

p=(PLINK)malloc(sizeof(PRODUCT));

printf("请输入产品编号:

");

scanf("%s",p->num);

if(strcmp(p->num,"#")==0)

break;

printf("请输入产品名称:

");

scanf("%s",p->name);

printf("请输入产品类型编号:

");

scanf("%s",p->leixing);

printf("请输入产品规格:

");

scanf("%s",p->guige);

printf("请输入产品计量单位:

");

scanf("%s",p->danwei);

printf("请输入产品的数量:

");

scanf("%d",&p->sum);

printf("请输入产品的参考价格(可输小数):

");

scanf("%f",&p->prize);

printf("请输入产品进货日期(年。

月。日):

");

scanf("%s",p->jihuo);

printf("请输入产品的有效期:

");

scanf("%s",p->youxiao);

p->next=h;

h=p;

}while(1);

return h;

}

void print(PRODUCT *head)

{

PRODUCT *p;

p=head;

if(p==NULL)printf("|产品编号|名称|产品类型编号|产品规格|计量单位|数量|参考价格|进货日期|有效日期|

");

while(p)

{

printf("|编号|名称|产品类型编号|产品规格|计量单位|数量|参考价格|进货日期|有效日期|

");

printf("|%5s|%4s|%-12s|%8s|%4s|�|�|s|s

",p->num,p->name,p->leixing,p->guige,p->danwei,p->sum,p->prize,p->jihuo,p->youxiao);

p=p->next;

}

}

PRODUCT *del(PRODUCT *h)

{

PRODUCT *p,*q;

char number[10];

printf("请输入你要删除的产品的编号:

");

scanf("%s",number);

if(h==NULL){printf("你要删除的产品不存在!

");return h=NULL;}

p=h;

while(strcmp(number,p->num)&&p)

{q=p;p=p->next;}

if(!strcmp(number,p->num))

{

if(p==h)h=h->next;

else q->next=p->next;

}

return h;

}

PRODUCT *modify(PRODUCT *h)

{

PRODUCT *p,*q;

char number1[10];

printf("请输入你要修改的产品的编号:

");

scanf("%s",number1);

p=h;

while(p)

{

if(strcmp(number1,p->num)==0)

{

printf("你要修改的产品信息如下:

");

printf("|编号|名称|产品类型编号|产品规格|计量单位|数量|参考价格|进货日期|有效日期|

");

printf("|%5s|%4s|%-12s|%8s|%4s|�|�|s|s

",p->num,p->name,p->leixing,p->guige,p->danwei,p->sum,p->prize,p->jihuo,p->youxiao);

printf("请重新填写此产品的信息:

");

printf("请输入产品编号:

");

scanf("%s",p->num);

printf("请输入产品名称:

");

scanf("%s",p->name);

printf("请输入产品类型编号:

");

scanf("%s",p->leixing);

printf("请输入产品规格:

");

scanf("%s",p->guige);

printf("请输入产品计量单位:

");

scanf("%s",p->danwei);

printf("请输入产品的数量:

");

scanf("%d",&p->sum);

printf("请输入产品的参考价格(可输小数):

");

scanf("%f",&p->prize);

printf("请输入产品进货日期(年。

月。日):

");

scanf("%s",p->jihuo);

printf("请输入产品的有效期:

");

scanf("%s",p->youxiao);

printf("修改产品信息成功!

");

break;

}

}

printf("你要修改的产品信息不存在!!

");

return h;

}

void inquire(PRODUCT *h)

{

PRODUCT *p;

char number2[10];

printf("请输入你要查询的产品的名称:

");

scanf("%s",number2);

p=h;

while(p)

{

if(strcmp(number2,p->name)==0)

{

printf("|编号|名称|产品类型编号|产品规格|计量单位|数量|参考价格|进货日期|有效日期|

");

printf("|%5s|%4s|%-12s|%8s|%4s|�|�|s|s

",p->num,p->name,p->leixing,p->guige,p->danwei,p->sum,p->prize,p->jihuo,p->youxiao);

break;

}

p=p->next;

}

printf("你要查询的产品信息不在库存中!!!

");

}

void printguoqi(PRODUCT *h)

{

PRODUCT *p;

int i=0;

if(h==NULL)printf("对不起!!您的仓库中还没有产品!

");

else

{

p=h;

while(p)

{

if(strcmp(p->jihuo,p->youxiao)>0)

{

printf("|编号|名称|产品类型编号|产品规格|计量单位|数量|参考价格|进货日期|有效日期|

");

printf("|%5s|%4s|%-12s|%8s|%4s|�|�|s|s

",p->num,p->name,p->leixing,p->guige,p->danwei,p->sum,p->prize,p->jihuo,p->youxiao);

i ;

}

p=p->next;

}

if(i==0)printf("您的库存中的产品都还没有过期!!!

");

}

}

PRODUCT *insert(PRODUCT *h)

{

PRODUCT *r;

do

{

r=(PLINK)malloc(sizeof(PRODUCT));

printf("请输入产品编号:

");

scanf("%s",r->num);

if(strcmp(r->num,"#")==0)

break;

printf("请输入产品名称:

");

scanf("%s",r->name);

printf("请输入产品类型编号:

");

scanf("%s",r->leixing);

printf("请输入产品规格:

");

scanf("%s",r->guige);

printf("请输入产品计量单位:

");

scanf("%s",r->danwei);

printf("请输入产品的数量:

");

scanf("%d",&r->sum);

printf("请输入产品的参考价格(可输小数):

");

scanf("%f",&r->prize);

printf("请输入产品进货日期(年。

月。

日):

");

scanf("%s",r->jihuo);

printf("请输入产品的有效期:

");

scanf("%s",r->youxiao);

r->next=h;

h=r;

}while(1);

return h;

}

void sortprint(PRODUCT *h)

{

PRODUCT *p,*q,*t,*h1;

h1=h->next;

h->next=NULL;

while(h1!=NULL)

{

t=h1;

h1=h1->next;

p=h;

q=h;

while(t->prize>p->prize&&p!=NULL)

{

q=p;

p=p->next;

}

if(p==q)

{

t->next=p;

h=t;

}

else

{

t->next=p;

q->next=t;

}

}

print(h);

printf("排序成功!!!

");

}。

全部

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C语言课程设计--超市进销存管理信息系统 超市进销存管理信息系统是一个涉及超市商品进货、销售和库存管理的重要工具。在这个系统中,我们使用C语言设计一个简单而有效的管理系统,方便超市员工对商品进行管理和统计。 首先,我们需要设计一个用户界面,让员工可以通过输入指令来操作系统。这包括进货,销售和库存查询等功能。通过C语言的控制台输入输出功能,我们可以让用户通过简单的命令来完成各项操作。 其次,对于进货和销售的数据,我们需要设计合适的数据结构和算法来储存和处理这些信息。通过C语言中的数组和链表等数据结构,我们可以很容易地对商品进行储存和操作。 另外,在库存管理方面,我们也需要设计相应的算法来实现商品的入库和出库操作。同时,还需要设计一些统计算法来实现对库存的统计和报表生成,方便管理人员进行经营决策。 最后,为了保证系统的稳定和安全,我们还需要考虑一些异常处理和错误检测的机制。通过C语言中的异常处理和错误处理功能,我们可以优化系统的稳定性和用户体验。 通过这样的设计,我们可以利用C语言开发一个简单而实用的超市进销存管理信息系统,帮助超市员工更好地管理商品和库存。同时,这也为学习者提供了一个实际的项目练习机会,提高了他们的实际编程能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值