\n",head->num);
printf("名称:%s\n",head->name);
printf("型号:%s\n",head->model);
printf("厂家:%s\n",head->factory);
printf("生产日期:%s\n",head->buy_date);
return;
}
head = head->next;
}
printf("查找失败,没有找到设备编号!");
}
//从文件读取设备信息
Equipment* fscanE(){
Equipment *head1 = (Equipment*)malloc(sizeof(Equipment));
head1->next = NULL;
Equipment *current = head1;
FILE *fp = fopen("data.txt","r");
while(!feof(fp)){
Equipment *newnode = (Equipment*)malloc(sizeof(Equipment));
fscanf(fp,"%d\n",&;newnode->num);
fscanf(fp,"%s\n",newnode->name);
fscanf(fp,"%s\n",newnode->model);
fscanf(fp,"%s\n",newnode->factory);
fscanf(fp,"%s\n",newnode->buy_date);
current->next = newnode;
newnode->next = NULL;
current = current->next;
}
fclose(fp);
return head1;
}
//维修信息管理
void repairEquipment(){
int num;
int oper;
char time[16];
printf("请输入维修操作(1~2):\n1.记录\t2.查找\n");
scanf("%d",&;oper);
getchar();
switch(oper){
case 1:{
FILE *fp = fopen("myfile.txt","a");
printf("请输入维修编号:");
scanf("%d",&;num);
printf("请输入维修时间(xxxx-xx-xx):");
scanf("%s",&;time);
fprintf(fp,"%d\n",num);
fprintf(fp,"%s\n",time);
fflush(fp);
fclose(fp);
printf("记录成功!");
break;
}case 2:{
int t = 0;
printf("请输入查找编号:");
scanf("%d",&;num);
int rnum;
FILE *fp = fopen("myfile.txt","
r");
while(!feof(fp)){
fscanf(fp,"%d\n",&;rnum);
fscanf(fp,"%s\n",&;time);
if(rnum==num){
printf("编号:%d,维修时间:%s\n",rnum,time);
t = 1;
}
}
if(t==0){
printf("
查询错误,没有找到维修记录!");
}
fclose(fp);
break;
}
default:{
printf("输入有误,操作失败!");
}
}
}
//输出设备信息
列表 void printList(Equipment *head){
if(head->next==NULL){
printf("没有设备,请先录入设备!");
return;
}
Equipment *current = head->next;
printf("=====================================================\n");
printf(" 编号 名称 型号 厂家 生产日期 \n");
while(current){
printf("\t%d\t%s\t%s\t%s\t%s\n",current->num,current->name,current->model,current->factory,current->buy_date);
current = current->next;
}
printf("===================================================\n");
}
//检查设备编号是否相同
int checkNum(Equipment *head, int num){
if(head->next==NULL) return 0;
Equipment *current = hea