C語言程序設計 健身房_第1頁
C語言程序設計 健身房_第2頁
C語言程序設計 健身房_第3頁
已閱讀5頁,還剩13頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

#include<stdio.h>#include<stdlib.h>#include<string.h>#include<conio.h> //getche()用到intt=2用于計數intgym_num=0;structgym_node{charnum[15]; //charname[10];intage;charsex[2];charhobby[20];chartime[10];chartel[15];structgym_node*next;}node;structgym_node*head,*newN,*tail;//---------------------------structgym_node*gym_create()//建立鏈表函數,返回指針的函數{charnum[15]; //會員號charname[10];intage;charsex[2];charhobby[20];chartime[10];chartel[15];if(head==NULL)//創(chuàng)建第一個結點,并輸入數據{printf("開始創(chuàng)建鏈表第一個結點\n");printf("請輸入第1個會員的會員號\t姓名\t年齡\t性別\t運動愛好\t會員卡有效期\t聯(lián)系方式\n");printf("如001蔡徐坤21男籃球2020061769453783\n");printf("請輸入會員號:\n");scanf("%s",num);\n");scanf("%s",name);printf("請輸入會員的年齡:\n");scanf("%d",&age);printf("請輸入會員的性別(男請輸入0;or女請輸入1;):\n");scanf("%s",sex);printf("請輸入會員的運動愛好:\n");scanf("%s",hobby);printf("請輸入會員卡的有效期至:\n");scanf("%s",time);printf("請輸入會員的聯(lián)系方式:\n");scanf("%s",tel);newN=(structgym_node));

gym_node *)malloc(sizeof(structstrcpy(newN->num,num);strcpy(newN->name,name);strcpy(newN->sex,sex);strcpy(newN->hobby,hobby);strcpy(newN->time,time);strcpy(newN->tel,tel);newN->age=age;newN->next=NULL; //給next指針賦值head=newN; //頭指針指向第一個結tail=newN; //讓尾指針指向新結點}//繼續(xù)創(chuàng)建后續(xù)結點,并輸入數據while(1){printf("請依次輸入第%dprintf("(如果會員號為0,則輸入結束)\n");printf("請輸入會員號:\n");scanf("%s",num);if(strcmp(num,"0")==0)//出循環(huán){ t--;break;}else//循環(huán)創(chuàng)建鏈表新結點{printf("請輸入會員的名字:\n");scanf("%s",name);printf("請輸入會員的年齡:\n");scanf("%d",&age);printf("請輸入會員的性別(男請輸入0;or女請輸入1;):\n");scanf("%s",sex);printf("請輸入會員的運動愛好:\n");scanf("%s",hobby);printf("請輸入會員卡的有效期至:\n");scanf("%s",time);printf("請輸入會員的聯(lián)系方式:\n");scanf("%s",tel);newN=(struct gym_node *)malloc(sizeof(structgym_node));strcpy(newN->num,num);strcpy(newN->name,name);strcpy(newN->sex,sex);strcpy(newN->hobby,hobby);strcpy(newN->time,time);strcpy(newN->tel,tel);newN->age=age; //給分數賦值newN->next=NULL; //給next指針賦tail->next=newN; //點之后tail=newN; //gym_num++;}}returnhead;//將鏈表的頭指針返回給主調函數}voidgym_print(structgym_node*head) //輸鏈表數據的函數{structgym_node*p=head;//使指針p指向鏈表的第一個結點if(p==NULL) //如果鏈表為空{printf("會員信息為空!\n");return;}printf("會員號\t姓名\t年齡\t性別\t運動愛好\t會員卡有效期\t聯(lián)系方式\n"); //打印表while(p!=NULL){printf("%s\t%s\t%d\t%s\t%s\t\t%s\t%s\n",p->num,p->name,p->age,p->sex,p->hobby,p->time,p->tel);//輸p=p->next; //p}}voidgym_modify(structgym_node*head){charnum[15];structgym_node*p=head;//使指針p指向鏈表的第一個結點if(head==NULL){printf("會員信息為空!\n");return;}printf("請輸入要修改的會員的會員號:");scanf("%s",num);while(p!=NULL&&strcmp(p->num,num)!=0)//查找會員{p=p->next; //p}if(p!=NULL)//如果找到了該學號的會員,則修改{printf("修改會員號為%s的會員",num);printf(printf("( 如 19980802, 蔡 徐 坤 ,21, 男 , 球,20200617,69453783)\n");printf("請輸入修改后會員號:\n");scanf("%s",p->num);printf("請輸入修改后會員的名字:\n");scanf("%s",p->name);printf("請輸入修改后會員的年齡:\n");scanf("%d",&p->age);printf("請輸入修改后會員的性別(男請輸入0;or女請輸入1;):\n");scanf("%s",p->sex);printf("請輸入修改后會員的運動愛好:\n");scanf("%s",p->hobby);printf("請輸入修改后會員卡的有效期至:\n");scanf("%s",p->time);printf("請輸入修改后會員的聯(lián)系方式:\n");scanf("%s",p->tel);}else{printf("未找到該會員號的會員!\n");}}structgym_node*gym_delete(structgym_node*head)//刪除函數{charnum[15];structgym_node*p=head,*p1;if(p==NULL){printf("會員信息為空!\n");returnhead;}printf("請輸入要刪除的會員的會員號:");scanf("%s",num);while(p!=NULL&&strcmp(p->num,num)!=0)//查找要刪除的會員{p1=p; //pp1p=p->next; //p}if(p!=NULL)//找到了該學號的會員{if(p==head){head=p->next;}else{p1->next=p->next;}free(p);//刪除,釋放gym_num--;printf("已經刪除該會員!");}else{printf("未找到該學號的會員!\n");}returnhead;}voidgym_name(structgym_node*head);voidgym_num1(structgym_node*head);voidgym_select(structgym_node*head){inta;printf("請選則查詢的方法:(會員號輸0;or姓名輸1;)\n");scanf("%d",&a);if(a!=0)gym_name(head);elsegym_num1(head);}voidgym_num1(structgym_node*head)//會員號查找{charnum[15];structgym_node*p=head;//使指針p指向鏈表的第一個結點if(head==NULL){printf("會員信息為空!\n");return;}printf("請輸入要查找的會員的會員號:");scanf("%s",num);whilepNULL&&strcmp(p->num,num)!=0)//查找會員{pp->next; //p}if(p!=NULL){printf("會員號\t姓名\t年齡\t性別\t運動愛好\t會員卡有效期\t聯(lián)系方式\n"); //打印表while(p!=NULL){printf("%s\t%s\t%d\t%s\t%s\t\t%s\t%s\n",p->num,p->name,p->age,p->sex,p->hobby,p->time,p->tel);break;//輸}}else{printf("未找到該會員號的會員!\n");}}//姓名查找voidgym_name(structgym_node*head){charname[15];structgym_node*p=head;//使指針p指向鏈表的第一個結點if(head==NULL){printf("會員信息為空!\n");return;}printf("請輸入要查找的會員的姓名:");scanf("%s",name);while(p!=NULL&&strcmp(p->name,name)!=0)//查找會員{pp->next; //p}if(p!=NULL){printf("會員號\t姓名\t年齡\t性別\t運動愛好\t會員卡有效期\t聯(lián)系方式\n"); //打印表while(p!=NULL){printf("%s\t%s\t%d\t%s\t%s\t\t%s\t%s\n",p->num,p->name,p->age,p->sex,p->hobby,p->time,p->tel);break;//輸}}else{printf("未找到該會員號的會員!\n");}}voidgym_sort(structgym_node*head) //輸鏈表數據的函數{inti=0,k,j;structgym_type{charnum[15]; //charname[10];intage;charsex[2];charhobby[20];chartime[10];chartel[20];};structgym_typegym[100];structgym_node使指針p指向鏈表的第一個結點if(head==NULL) //如果鏈表為空{printf("會員信息為空!\n");return;}//printf("會員號\t姓名\t年齡\t性別\t運動愛\t會員卡有效期\t聯(lián)系方式\n"); //打印表頭while(p!=NULL){strcpy(gym[i].num,p->num);strcpy(gym[i].name,p->name);strcpy(gym[i].tel,p->tel);strcpy(gym[i].sex,p->sex);strcpy(gym[i].hobby,p->hobby);strcpy(gym[i].time,p->time);gym[i].age=p->age;p=p->next;i++;}for(k=0;k<i;k++)for(j=k+1;j<i;j++)if(strcmp(gym[j].time,gym[k].time)>0){gym[99]=gym[k];gym[k]=gym[j];gym[j]=gym[99];}printf("會員號\t姓名\t年齡\t性別\t運動愛好\t會員卡有效期\t聯(lián)系方式\n");for(k=0;k<i;k++){printf("%s\t%s\t%d\t%s\t%s\t\t%s\t%s\n",gym[k].num,gym[k].name,gym[k].age,gym[k].sex,gym[k].hobby,gym[k].time,gym[k].tel);}}voidmain(){intchoice; //操作菜單項的編號printf("\n----------------------系統(tǒng)運行-----------------------\n");while(1){printf("\n\t\t\t歡迎使用健身房會員管理系統(tǒng)\n");printf("---------------------------------------------

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論