当前位置:数据分析 > C语言一个简单的商城管理系统

C语言一个简单的商城管理系统

  • 发布:2023-10-04 09:09

/*数据结构:*/
struct shangpin
{
 char name[100];
 炭变好;
 浮金甲;
 浮受甲;
 int kuchun;
 struct shangpin *next;
} /*主模块:*/
#include
#include
#include
#include
#定义 LEN 大小(struct shangpin)
main()
{
 struct shangpin * ins(struct shangpin *);
 struct shangpin * del(struct shangpin *);
 void quer(struct shangpin *);
 void disp(struct shangpin *);
 void savef(struct shangpin *);
 void quit(struct shangpin *);
 无效菜单(无效);
 struct shangpin* init(struct shangpin*);
 struct shangpin *head=NULL;
 int cho;head=init(head);
 
 while(1)
 {
  菜单();
  do
  {
   printf("请输入选择:");
   scanf("%d",&cho);
 
  }同时(cho<1||cho>6);
  switch(cho)
  {
   情况 1:head=ins(head);break;
   情况 2:head=del(head);break;
   情况 3:quer(head);break;
   情况 4:disp(head);break;
情况5:savef(头);休息 ;
情况6:退出(头);
}
}
}
/*默认位置*/
struct shangpin* init(struct shangpin* head)
{
FILE *fp; /*默认值*/
struct shangpin *prev,*cur;
if((fp=fopen("aaa.txt","r"))==NULL) /*默认*/
{
printf("无法打开文件 aaa.txt\ n ”);
getch();
返回0;

}
if ( feof ( fp ))
return ( NULL ) ;
cur=(struct shangpin *)malloc(LEN);
fscanf(fp,"%s%c%f%f%d",cur->姓名,&cur->边号,&cur->金甲,&cur->手甲,&cur->剪切);
头=cur;
prev=cur;
while(!feof(fp))
{
cur=(struct shangpin*)malloc(LEN);
fscanf(fp,"%s%c%f%f%d",cur->姓名,&cur->边号,&cur->金甲,&cur->手甲,&cur->剪切);
上一个->下一个=当前;
prev=cur; }
上一个->下一个=NULL;
返回(头);
} /*无效菜单*/
无效菜单(void)
{
void pristr(void);
clrscr(); /*牧师*/
pristr();
pristr();
printf("尚品C管理系统\n\n\n");
printf(" 1: 插入尚品\n");
printf(" 2: 删除商钉\n");
 printf(" 3: 查找上品\n");
 printf(" 4: 显示所有尚品\n");
printf("5: 保存记录\n");
printf("6: 退出系统\n");
 
 pristr();
 pristr();
 printf("\n\n\n");
}
void pristr(void)
{
 printf("-*-*-*-*-*-*=*-*-*-*-*-*-*-* -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*\n");
}
/*录入模块*/
struct shangpin * ins(struct shangpin *head)
{
 struct shangpin *newn,*t1;
 newn=(struct shangpin *)malloc(LEN);
 printf("请输入商聘信息\n");
 scanf("%s%c%f%f%d",newn->姓名,&newn->边好,&newn->金甲,&newn->手甲,&newn->苦春);
if(head==NULL)
{
 head=newn;
 newn->next=NULL; }
else
{
 t1=头;
 while(t1->下一个!=NULL)
 t1=t1->下一个;
 t1->下一个=新n;
 newn->next=NULL; }
返回(头);
} /*删除模块*/
struct shangpin * del(struct shangpin *head)
{
 struct shangpin *prev,*cur;
 字符名称[100];
int 标志=0;
 printf("\n请输入姓名:");
 scanf("%s",名称);
 if(head==NULL)
 printf("清空聊天\n");
 else if(strcmp(head->name,name)==0)
 {
  cur=head;
  头=头->下一个;
  免费(cur);
  标志=1; }
 else
 {
  cur=head->下一个;
  上一页=头;
  while(cur!=NULL)
  if(strcmp(cur->name,name)==0)
  {
  prev->next=cur->next;
  免费(cur);
  标志=1;
  打破;
  
  }
  其他
  {
   prev=cur;
   cur=cur->下一个; }
 }
  if(flag==1)
  printf("\n节点已删除\n");
  else
  printf("\n 该节点不存在\n");
  get();
  返回(头);
} /*查询模块*/
void quer(struct shangpin *head)
{
 struct shangpin *t=head;
 字符名称[100];
 int 标志=0;
 printf("\n请输入姓名:");
 scanf("%s",名称);
 while(t!=NULL)
 if(strcmp(t->name,name)==0)
 {
  flag=1;
  打破;
 
 }
 否则
 t=t->下一个;
 如果(标志==1)
{
  printf("找到节点\n");
  printf("名字:%s,边号:%c,金甲:%f,手甲:%f,kuchun:%d\n",t->名字,t->边号,t->金甲,t ->shoujia,t->kuchun);
 } else
  printf("找不到节点\n");
  get(); } /* 显示模块*/
void disp(struct shangpin *head)
{
 struct shangpin *t1;
 if(head==NULL)
 {
  printf("空图表\n");
  get();
返回; }
 else
 {
  for(t1=head;t1!=NULL;t1=t1->next)
  printf("%s,%c,%f,%f,%d ",t1->姓名,t1->边号,t1->金甲,t1->手甲,t1->苦春);
  get();
 
 }
}
/*存盘模块*/ void savef(struct shangpin *head)
{
 char s[100];
 文件 *fp;
 struct shangpin *node=head;
 printf("请输入文件名:\n");
 scanf("%s",s);
 if((fp=fopen(s,"w"))==NULL)
 {
  printf("无法打开文件\n");
  get();
返回; }
while(node!=NULL)
 {
fprintf(fp,"%s,%c,%f,%f,%d",node->name,node->边号,node->金甲,node->首甲,node->kuchun);
节点=节点->下一个; }
fclose(fp);
} /*退出模块*/
void quit(struct shangpin *head)
{
char c;
printf("保存结果,y还是n?\n");
scanf(" %c",&c);
if(c=='y')
savef(head);
printf("现在退出管理系统\n");
getch();
退出(0);
}
注意:这个程序还有一个错误,但我不知道该怎么做。好久没有写过C语言程序了。已经一年多了。我不记得其中的很多。想请高手指导一下...

转载于:https://www.sychzs.cn/278891/80979

相关文章