📄 diaodan.c
字号:
#include<stdio.h>#include<stdlib.h>#include"churu.h"extern char* filename;int new_diaodan() //生成新调单{ taizhang t; diaodan d; int input_rukuid; int ruku_id; char y_n; FILE* fp,*fp_ruku,*fp_ruku2; if(fp_ruku=fopen("./ruku.id","a+")) { fscanf(fp_ruku,"%d",&ruku_id); help(filename,"[z_1]"); //printf("请输入该调单所属入库单编号:\n"); //while(getchar()!='\n'); scanf("%d",&input_rukuid); if(input_rukuid <= ruku_id) { if((fp_ruku2 = fopen("taizhang.dat","r"))==NULL) printf("open taizhang faild"); rewind(fp_ruku2); do { fread(&t,sizeof(t),1,fp_ruku2); }while(t.id != input_rukuid); display_rukubill(t,"The ruku bill "); getchar(); help(filename,"[z_2]"); //printf("是否根据该入库单生成调单?(y/n)\n"); scanf("%c",&y_n); if(y_n == 'y') { getchar(); help(filename,"[z_3]"); // printf("请输入调单编号 :\n"); scanf("%d",&d.diaodan_id); getchar(); help(filename,"[z_4]"); // printf("请输入调用人数 :\n"); scanf("%d",&d.p_num); do { help(filename,"[z_5]"); // printf("请输入调用日期eg:20040809:\n"); scanf("%s",d.d_date); }while(!check_date(d.d_date)); do { help(filename,"[z_6]"); // printf("请输入保管员姓名:\n"); scanf("%s",d.storekepper_name); }while(!check_length(d.storekepper_name,10)); do { help(filename,"[z_7]"); // printf("请输入操作仓库 :\n"); scanf("%s",d.storage); }while(!check_length(d.storage,30)); d.stat = 0; } else return 0; getchar(); help(filename,"[z_8]"); /*8*/ //printf(" 调单输入完毕,是否确认?(y/n) :\n"); scanf("%c",&y_n); if(y_n == 'y') { if((fp = (FILE* )malloc(20))==NULL) printf("malloc is failed"); else if(!(fp=fopen("./diaodan.dat","a+b"))) printf("open is failed"); else { fwrite(&d,sizeof(d),1,fp); help(filename,"[z_9]"); // printf("写入文件\n"); } fclose(fp); } } else //printf("该入库单不存在\n"); help(filename,"[z_10]"); } else help(filename,"[z_11]"); // printf("入库号码文件丢失"); return 0; }/****************************************************************************************************/int modify_diaodan(){ diaodan d1; int id; int ruku_id; int flag = 0; char y_n; FILE* fp1; help(filename,"[z_12]"); //printf("请输入调单编号:"); scanf("%d",&id); if((fp1 = (FILE* )malloc(20))==NULL) printf(" fp1 malloc is failed"); else if(!(fp1=fopen("./diaodan.dat","r+b"))) printf("open is failed"); else while(!feof(fp1)) { fread(&d1,sizeof(d1),1,fp1); if(id == d1.diaodan_id) { flag = 1; break; } } if (flag) { help(filename,"[z_13]"); printf("%d\n",d1.ruku_id); help(filename,"[z_14]"); printf("%d\n",d1.p_num); help(filename,"[z_15]"); printf("%s\n",d1.d_date); help(filename,"[z_16]"); printf("%s\n",d1.storekepper_name); help(filename,"[z_17]"); printf("%s\n",d1.storage); /*printf("入库单编号: %d\n",d1.ruku_id); printf("调用人数 : %d\n",d1.p_num); printf("调用日期 : %s\n",d1.d_date); printf("调用保管 : %s\n",d1.storekepper_name); printf("操作仓库 : %s\n",d1.storage);*//*17*/ if(d1.stat==0) { help(filename,"[z_18]"); // printf("处理中... ..."); } else { help(filename,"[z_19]"); // printf("已处理完毕!\n"); return 10; } getchar(); help(filename,"[z_20]"); //printf("是否签收该调单? (y/n) "); scanf("%c",&y_n); if(y_n == 'y') { d1.stat = 1; fseek(fp1,-sizeof(d1),SEEK_CUR); fwrite(&d1,sizeof(d1),1,fp1); help(filename,"[z_21]"); // printf("更改完毕,该调单作废.\n"); } } else { help(filename,"[z_22]"); // printf("没有该调单\n"); } fclose(fp1); return 0;}/*int main(int argc,char* argv[]){ int i; printf("1.new\n"); printf("2.modify\n"); scanf("%d",&i); switch (i) { case 1: { new_diaodan(); break; } case 2: { modify_diaodan(); break; } } return 0;}*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -