C 언어 구현 주소록 관리 시스템

13663 단어 C 언어통신 록
본 논문 의 사례 는 C 언어 가 주소록 관리 시스템 을 실현 하 는 구체 적 인 코드 를 공유 하여 여러분 께 참고 하 시기 바 랍 니 다.구체 적 인 내용 은 다음 과 같 습 니 다.
도구:Visual C++6.0
설명:
본 시스템 은 C 언어 를 바탕 으로 학급 통신 록 관리 시스템 을 실현 하고 대학 1 학년 때 C 언어 를 배우 기 위해 입문 한 과정 디자인 입 니 다.기능 은 증가,삭제,조사,수정 등 을 포함 하여 초보 자 들 이 연습 하기에 매우 적합 하 다.주소록 에 포 함 된 개인 정 보 는 이름,학 번,성별,본적,정치 적 면모,휴대 전화 번호,QQ 번호,기숙사 등 이다.주로 포인터,구조 체,링크,파일 읽 기 등 지식 을 사용 했다.
실행 효과:

코드:

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<windows.h>
typedef struct student  //     
{
 char name[20]; //  
 char num[15];  //  
 char sex[10];  //  
 char from[20]; //  
 char political[10]; //    
 char phone[15];  //   
 char QQ[15];   //QQ 
 char dorm[10];  //  
 struct student *next; //     
}stu;
stu *head;

void print() //   
{
 system("cls");
 printf("


"); printf(" ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
"); printf(" ***********************************************************
"); printf(" \t\t\t
"); printf("
"); printf(" \t\t1. "); printf("\t\t2.
"); printf(" \t\t3. "); printf("\t\t4.
"); printf(" \t\t5. "); printf("\t\t6.
"); printf(" \t\t7. "); printf("\t\t8.
"); printf(" ***********************************************************
"); printf(" ~~~~~ ~~~~~~~~~~ ~~~~~~~~~~ ~~~~~~~~~~ ~~~~~~~~~~9~~~~~
"); printf(" -----------------------------------------------------------

"); } void input(stu *p1) // { printf(" :"); scanf("%s",&p1->name); printf(" :"); scanf("%s",&p1->num); printf(" :"); scanf("%s",&p1->sex); printf(" :"); scanf("%s",&p1->from); printf(" :"); scanf("%s",&p1->political); printf(" :"); scanf("%s",&p1->phone); printf("QQ :"); scanf("%s",&p1->QQ); printf(" :"); scanf("%s",&p1->dorm); } stu * inputdata() // { stu *p1,*p2; int i=1; p1=(stu *)malloc(sizeof(stu)); if(p1!=NULL) { head=p1; printf("
\t\t\t☆☆☆ ☆☆☆
"); printf("------------------------------------------------------------------
"); printf(" “ok”
"); while(i) { printf(" :"); scanf("%s",&p1->name); if(strcmp(p1->name,"ok")==0) { printf("
!
"); printf("========================================================================
"); i=0; p2->next=NULL; free(p1); p1=p2; } else { printf(" :"); scanf("%s",&p1->num); printf(" :"); scanf("%s",&p1->sex); printf(" :"); scanf("%s",&p1->from); printf(" :"); scanf("%s",&p1->political); printf(" :"); scanf("%s",&p1->phone); printf("QQ :"); scanf("%s",&p1->QQ); printf(" :"); scanf("%s",&p1->dorm); printf("=====================================
"); p2=p1; p1=(stu *)malloc(sizeof(stu)); if(p1!=NULL) { p2->next=p1; } } } return(p1->next); } } stu * lookdata(stu *p1) // { printf("
\t\t\t☆☆☆ ☆☆☆
"); printf("----------------------------------------------------------------------
"); while(p1!=NULL) { printf(" :%s
",p1->name); printf(" :%s\t",p1->num); printf(" :%s\t",p1->sex); printf(" :%s\t",p1->from); printf(" :%s\t",p1->political); printf(" :%s\t",p1->phone); printf("QQ :%s\t",p1->QQ); printf(" :%s
",p1->dorm); printf("======================================================================
"); p1=p1->next; } return p1; } void insert() // { int i; char named[20]; stu *p1,*p2,*p3; p1=head; p3=(stu *)malloc(sizeof(stu)); p3->next=NULL; printf("
\t\t\t☆☆☆ ☆☆☆
"); printf("----------------------------------------------------------------------
"); printf(" :
"); input(p3); printf("

"); printf("1. \t2. \t3.
"); printf(" :"); scanf("%d",&i); switch(i) { case 1:p3->next=p1; head=p3; break; case 2:while(p1->next!=NULL) { p2=p1; p1=p1->next; } p1->next=p3; break; case 3:printf(" ( ):"); scanf("%s",named); while(strcmp(named,p1->name)!=0) { p2=p1; p1=p1->next; } p2->next=p3; p3->next=p1; break; } printf(" !
"); printf("======================================================================
"); return; } void deleted() // { stu *p1,*p2; char Name[20]; // printf("
\t\t\t☆☆☆ ☆☆☆
"); printf("----------------------------------------------------------------------
"); printf(" :"); scanf("%s",Name); p1=head; if(head==NULL) { printf(" !
"); printf("======================================================================
"); return; } if(strcmp(Name,p1->name)==0) { head=p1->next; printf(" !
"); printf("======================================================================
"); return; } while(p1!=NULL&&(strcmp(Name,p1->name)!=0)) { p2=p1; p1=p1->next; } if(p1==NULL) { printf(" !
"); printf("======================================================================
"); return; } if(p1->next!=NULL) { p1=p1->next; p2->next=p1; printf(" !
"); printf("======================================================================
"); return; } else { p2->next=NULL; printf(" !
"); printf("======================================================================
"); return; } } find(stu *p2) // { char name[20]; int b=0; printf("
\t\t\t☆☆☆ ☆☆☆
"); printf("----------------------------------------------------------------------
"); printf(" :"); scanf("%s",name); while(p2!=NULL) { if(strcmp(name,p2->name)==0) { printf("
"); printf(" :%s
",p2->name); printf(" :%s\t",p2->num); printf(" :%s\t",p2->sex); printf(" :%s\t",p2->from); printf(" :%s\t",p2->political); printf(" :%s\t",p2->phone); printf("QQ :%s\t",p2->QQ); printf(" :%s
",p2->dorm); printf("======================================================================
"); b=1; } p2=p2->next; } if(b==0) { printf("
!
"); } } update(stu *p2) // { char name[20]; int b=0,i; printf("
\t\t\t☆☆☆ ☆☆☆
"); printf("----------------------------------------------------------------------
"); printf(" :"); scanf("%s",name); while(p2!=NULL) { if(strcmp(name,p2->name)==0) { printf("
"); printf(" :%s
",p2->name); printf(" :%s\t",p2->num); printf(" :%s\t",p2->sex); printf(" :%s\t",p2->from); printf(" :%s\t",p2->political); printf(" :%s\t",p2->phone); printf("QQ :%s\t",p2->QQ); printf(" :%s
",p2->dorm); printf("

"); printf("\t1. \t2. \t3. \t4.
\t5. \t6. \t7.QQ\t8.
"); printf("
(1~8):"); scanf("%d",&i); printf("
"); switch(i) { case 1:printf(" :"); scanf("%s",&p2->name); break; case 2:printf(" :"); scanf("%s",&p2->num); break; case 3:printf(" :"); scanf("%s",&p2->sex); break; case 4:printf(" :"); scanf("%s",&p2->from); break; case 5:printf(" :"); scanf("%s",&p2->political); break; case 6:printf(" :"); scanf("%s",&p2->phone); break; case 7:printf("QQ:"); scanf("%s",&p2->QQ); break; case 8:printf(" :"); scanf("%d",&p2->dorm); break; } printf("
!
"); printf("=========================================================================
"); b=1; } p2=p2->next; } if(b==0) { printf(" !
"); } } save(stu *p2) // { FILE *fp; char file[15]; printf("
\t\t\t☆☆☆ ☆☆☆
"); printf("----------------------------------------------------------------------
"); printf(" :"); scanf("%s",file); if((fp=fopen(file,"w"))==NULL) { printf("cannot open this file
"); exit(0); } fprintf(fp," \t \t \t \t \t \tQQ \t
"); while(p2!=NULL) { fprintf(fp,"%s\t",p2->name); fprintf(fp,"%s\t",p2->num); fprintf(fp,"%s\t",p2->sex); fprintf(fp,"%s\t",p2->from); fprintf(fp,"%s\t",p2->political); fprintf(fp,"%s\t",p2->phone); fprintf(fp,"%s\t",p2->QQ); fprintf(fp,"%s
",p2->dorm); p2=p2->next; } printf("
!
"); printf("======================================================================
"); fclose(fp); } void screen() { int i; char s[251]={" ZM ,

\t\t\t ---- ,


\t\tWelcome to use produced by ZM class address book

\t\t management system,sorting,printing"}; printf("
================================================================================
"); printf("


\t\t\t"); for(i=0;s[i]!=NULL;i++) { Sleep(30); printf("%c",s[i]); } printf("







\t\t ~ Hi~ o(* ̄ ̄*)ブ~ ~ ~ ~ ~
"); printf("================================================================================
"); } void main() { int i; system("color 4e"); screen(); Sleep(3000); print(); while(1) { printf(" (1~9):"); loop:scanf("%d",&i); if(i<1||i>9) { printf(" , 1~9 :"); goto loop; } switch(i) { case 1: inputdata(); break; case 2: lookdata(head); break; case 3: insert(); break; case 4: deleted(); break; case 5: find(head); break; case 6: update(head); break; case 7: save(head); break; case 8: print(); break; case 9: exit(1); break; } } }
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기