C语言课设-药品管理系统(含代码)

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

在这里插入图片描述
用到的知识点

  • 文件操作,fopen,fclose,fprintf,fscanf,fread,fwirte函数等
    在这里插入图片描述
  • 链表操作,头插法,尾插法,增删节点
  • window.h里system(color XX),用来美化黑框框
    函数原型:int system (const char* command);功 能: 发出一个DOS命令,用于执行系统命令
    颜色属性由两个十六进制数字指定 – 第一个为背景,第二个则为前景。每个数字可以为以下任何值之一
    在这里插入图片描述

我写的是药品管理系统,比较好的方面是我分成了三个端,每个端实现的功能的不相同,软件管理端对应一个地区的某品牌总负责人,分药店管理端供当地加盟该药店的商家使用,用户端对应顾客。比较新颖的地方有顾客端客户买药品时候可以获得一个随机的六位数取货码,记录购买时间可供查看等等。
思维图
可以实现
1.总药店对加盟药店的管理;
2.加盟药店对药品的增添、删除、修改、排序等功能;
3.客户端对药品提前预定,持取货码到加盟药店领取药品的功能。

功能函数的调用关系图

在这里插入图片描述
几个比较容易错的点:
1.隐藏密码的实现


int Hidden_password(char str[NUMBER] )  //隐藏密码 
{
 char input_password[NUMBER] = {'\0'}; // 防止里面本身残留垃圾 
 int i;
 char ch;
 fflush(stdin);
 for(i = 0 ; i < NUMBER ; ){
  ch = getch();
  if ( (ch == '\b')  &&  (i == 0 ) ){
   ;
  }
  else if ( (ch == '\b')  &&  i != 0  ){ 
   putchar('\b');
   putchar(' ');
   putchar('\b');
   i--;
  }
  else if( ( i == NUMBER - 1 ) && ( ch != '\r') ){ // 超过NUMBER位,出错 
   
   printf("\n              很抱歉,密码需要小于等于20位... \n"); 
   getch();
   return 1 ;
  }
  else if( ch == '\r'){
   break;
  }
  else{
   input_password[i] = ch;
   i++;
   printf("*");
  }
 }
 strcpy(str, input_password);
 return 0;
}

2获取购买/本地时间

 
void acquisition_time(void)//获取时间并写入 
{
 FILE *fp;
 if( (fp = fopen(STR,"a+") ) == NULL ){ 
  printf("              文件打开失败\n");
  exit(EXIT_FAILURE);
 }
    time_t timep;
    struct tm *p;
    time (&timep);
    p=gmtime(&timep);
 fprintf(fp,"%d-",1900+p->tm_year);/*获取当前年份,从1900开始,所以要加1900*/ 
 fprintf(fp,"%d-",1+p->tm_mon);/*获取当前月份,范围是0-11,所以要加1*/ 
 fprintf(fp,"%d-",p->tm_mday);/*获取当前月份日数,范围是1-31*/   
 fprintf(fp,"%d-",8+p->tm_hour);/*获取当前时,这里获取西方的时间,刚好相差八个小时*/ 
 fprintf(fp,"%d-",p->tm_min); /*获取当前分*/
 fprintf(fp,"%d\n",p->tm_sec); /*获取当前秒*/
 fclose(fp);
}

3获取6位随机数

int Get_the_pick_up_code(void) // 100000-999999 
{
    int rad = 0;  //随机数
    srand(time(NULL)); 
    rad = rand()%900000+100000;  //获得随机数
 return rad;
}

代码一共一千多行,有点多,我删了,需要的留下邮箱= =

  • 34
    点赞
  • 120
    收藏
    觉得还不错? 一键收藏
  • 214
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值