학급 일상 업무 관리 시스템

2623 단어 데이터 구조
학급 일상 업무 관리 시스템
[문제 설명]
단일 체인 표 로 표 시 된 질서 있 는 학급 일상 업무 시스템 에서 시스템 의 구축, 인원 의 삭제, 조회 와 인원 의 보존 을 실현 한다.
(1) 일상 반 업무 데이터 (학 번, 성명, 전화, 연령, 출근, 상벌 포함) 를 단일 체인 표 로 저장 합 니 다.
(2) 단일 체인 표 의 데 이 터 를 학 번 에 따라 정렬 한다.
(3) 작업 결 과 를 파일 에 저장 합 니 다. 
 데이터 에 포 함 된 학 번 은 네 자리 정수 이 며, 휴대 전화 번 호 는 반드시 13 자리 여야 한다.
#include
#include
#define N 20
typedef struct{
	int num;
	char name[N];
	char tel[13]; 
	int age;
	int kaoqin;
	int jiangfa;
}Student;
typedef struct LNode{
	Student stu;
	struct LNode *next;
}LNode,*LinkList; 
void InitList(LinkList &L){
	LinkList pre,p;
	Student s;
	int i,n;
	printf("      :");
	scanf("%d",&n);
	printf("  %d      (4 )、  、  (13 )、  、  (1/0)、  (1/0)
",n); L=pre=(LinkList)malloc(sizeof(LNode)); for(i=0;istu=s; pre->next=p; pre=p; } pre->next=NULL; } void Sort(LinkList &L){ LinkList p,q,k; Student s; p=L->next; while(p){ k=p; q=p->next; while(q){ if(q->stu.numstu.num){ k=q; } q=q->next; } if(k!=p){ s=p->stu; p->stu=k->stu; k->stu=s; } p=p->next; } } void Save(LinkList L){ LinkList p; FILE *fp; fp=fopen("student.txt","w"); p=L->next; while(p){ fprintf(fp,"%d %s %s %d %d %d
",p->stu.num,p->stu.name,p->stu.tel,p->stu.age,p->stu.kaoqin,p->stu.jiangfa); p=p->next; } fclose(fp); } void Chaxun(LinkList L){ int n; LinkList p,q; printf(" :"); scanf("%d",&n); p=L->next; while(p&&p->stu.num!=n){ p=p->next; } printf("%d %s %s %d %d %d
",p->stu.num,p->stu.name,p->stu.tel,p->stu.age,p->stu.kaoqin,p->stu.jiangfa); } void Insert(LinkList &L){ LinkList p,q; Student s; printf(" (4 )、 、 (13 )、 、 (1/0)、 (1/0)
"); scanf("%d %s %s%d%d%d",&s.num,s.name,s.tel,&s.age,&s.kaoqin,&s.jiangfa); p=L; while(p->next&&p->next->stu.numnext; } q=(LinkList)malloc(sizeof(LNode)); q->stu=s; q->next=p->next; p->next=q; } void Delete(LinkList &L){ int n; LinkList p,q; printf(" :"); scanf("%d",&n); p=L; while(p->next&&p->next->stu.num!=n){ p=p->next; } p->next=p->next->next; } int main(){ LinkList L; InitList(L); Sort(L); Save(L); Insert(L); Save(L); Delete(L); Save(L); Chaxun(L); return 0; }

좋은 웹페이지 즐겨찾기