當前位置:首頁 » 編程語言 » 電話簿c語言

電話簿c語言

發布時間: 2023-02-11 02:00:50

c語言電話簿程序

#include#include#include#defineM500structMan//定義結構體{charName[8];//名字charDepart[20];//工作單位charQQ[10];//QQ號碼charEmail[30];//郵箱};voidtext();//相當於主函數voidtext1();//菜單輸出chartext2();//開始的版權信息輸出intDelete(ManMan[],intSize);//刪除信息voidDisplay(Manman[]);//顯示所有記錄voidgetch();intInsert(ManMan[],intSize);//插入模塊voidModify(ManMan[],intSize);//修改模塊intS_asname(ManMan[],intSize,intn);//查找信息voidS_asqq(ManMan[],intSize);//按QQ查找模塊intSave(ManMan[],intSize);//把數據寫入文件intScan(ManMan[]);//從文本中讀取數據voidmain()//主函數{text();//(這邊純屬蛋疼,最多加長系統運行時間)}voidtext()//相當於主函數{Manman[M];//500人的結構體數組charcontrol=0;//菜單選擇控制變數intsize=0;//保存當前已有的記錄if(text2())//這邊可不要if,直接調用text2,顯示版權信息。{size=Scan(man);//判斷文件是否存在while(1)//菜單生成{text1();//菜單顯示scanf(

❷ c語言電話薄設計:

以完成,成功。圖如下,包括添加、查找、修改、刪除、退出等,可以通過生成的txt文件查看結果

#include<stdio.h>

#include<string.h>

#include<stdlib.h>

structperson

{

charname[8];

chartel[15];

charaddr[50];

};

charfilename[20]="txl.txt";

FILE*fp;

voidoutput();

voidsearch();

voidappend();

voidmodify();

voiddel();

voidmain()

{

intm;

fp=fopen(filename,"w");

fprintf(fp,"%-10s%-20s%-50s ","姓名","電話號碼","住址");

fclose(fp);

while(1)

{

printf(" *********歡迎使用通訊錄信息管理系統********* ");

printf(" 添加,請按1");

printf(" 查找,請按2");

printf(" 修改,請按3");

printf(" 刪除,請按4");

printf(" 輸出,請按5");

printf(" 退出,請按0 ");

printf(" ******************************************** ");

printf("Pleaseselect(0--5):");

scanf("%d",&m);

if(m>=0&&m<=5)

{

switch(m)

{

case1:append();

break;

case2:search();

break;

case3:modify();

break;

case4:del();

break;

case5:output();

break;

case0:exit(0);

}

printf(" 操作完畢,請再次選擇!");

}

else

printf(" 選擇錯誤,請再次選擇!");

}

}

/*輸出模塊output():輸出通訊錄中聯系人通訊信息的子函數*/

voidoutput()

{

structpersonone;

if((fp=fopen(filename,"r"))==NULL)

{

printf(" 不能打開通訊錄!");

exit(0);

}

printf(" %20s ","通訊錄");

while(!feof(fp))

{

fscanf(fp,"%s%s%s ",one.name,one.tel,one.addr);

printf("%-10s%-20s%-50s",one.name,one.tel,one.addr);

}

fclose(fp);

}

/*添加模塊append():向通訊錄中添加某人通訊信息的子函數*/

voidappend()

{

structpersonone;

if((fp=fopen(filename,"a"))==NULL)

{

printf(" 不能打開通訊錄!");

exit(0);

}

printf(" 請輸入添加的姓名、電話號碼及住址 ");

scanf("%s%s%s",one.name,one.tel,one.addr);

fprintf(fp,"%-10s%-20s%-50s ",one.name,one.tel,one.addr);

fclose(fp);

}

/*查找模塊search():在通訊錄中查找某人通訊信息的子函數*/

voidsearch()

{

intk=0;

charnamekey[8];

structpersonone;

printf(" 請輸入姓名:");

scanf("%s",namekey);

if((fp=fopen(filename,"rb"))==NULL)

{

printf(" 不能打開通訊錄!");

exit(0);

}

while(!feof(fp))

{

fscanf(fp,"%s%s%s ",one.name,one.tel,one.addr);

if(!strcmp(namekey,one.name))

{

printf(" 已查到,記錄為:");

printf(" %-10s%-18s%-50s",one.name,one.tel,one.addr);

k=1;

}

}

if(!k)

printf(" 對不起,通訊簿中沒有此人的記錄。");

fclose(fp);

}

/*修改模塊modify():在通訊錄中修改某人通訊信息的子函數*/

voidmodify()

{

intk=0;

longoffset;

charnamekey[8];

structpersonone;

printf(" 請輸入姓名:");

scanf("%s",namekey);

if((fp=fopen(filename,"r+"))==NULL)

{

printf(" 不能打開通訊錄!");

exit(0);

}

while(!feof(fp))

{

offset=ftell(fp);

fscanf(fp,"%s%s%s ",one.name,one.tel,one.addr);

if(!strcmp(namekey,one.name))

{

k=1;

break;

}

}

if(k)

{

printf(" 已查到,記錄為:");

printf(" %-10s%-18s%-50s",one.name,one.tel,one.addr);

printf(" 請輸入新姓名、電話號碼及住址:");

scanf("%s%s%s",one.name,one.tel,one.addr);

fseek(fp,offset,SEEK_SET);

/*printf("%ld",ftell(fp));*/

fprintf(fp,"%-10s%-20s%-50s ",one.name,one.tel,one.addr);

}

else

printf(" 對不起,通訊錄中沒有此人的記錄。");

fclose(fp);

}

/*刪除模塊delete():在通訊錄中刪除某人通訊信息的子函數*/

voiddel()

{

intm,k=0;

longoffset1;

charnamekey[8];

structpersonone;

printf(" 請輸入姓名:");

scanf("%s",namekey);

if((fp=fopen(filename,"r+"))==NULL)

{

printf(" 不能打開通訊錄!");

exit(0);

}

while(!feof(fp))

{

offset1=ftell(fp);

fscanf(fp,"%s%s%s ",one.name,one.tel,one.addr);

if(!strcmp(namekey,one.name))

{

k=1;

if(k)

{

printf(" 已查到,記錄為");

printf(" %-10s%-18s%-50s",one.name,one.tel,one.addr);

printf(" 確實要刪除,按1;不刪除,按0:");

scanf("%d",&m);

if(m)

{

fseek(fp,offset1,SEEK_SET);//fseek函數用來改變文件指針位置,SEEK_SET為0,表示文件開頭;為1,表示當前位置;為2表示文件結尾;

fprintf(fp,"%-10s%-20s%-50s ","","","");

}

else

printf(" 您已取消對該通訊人信息的修改。 ");

fclose(fp);

}

return;

}

}

if(!k)printf("對不起,通訊錄中沒有此人 ");

}

❸ C語言編寫電話簿求救中。。。。。。緊急

void
add()
{

TEL
*p1,*p2;

p1=(TEL*)malloc(sizeof(TEL));

printf("請輸入姓名
電話!\n");

scanf("%s
%s",p1->name,p1->phonenumber);

p1->next=NULL;

if(head==NULL)

{

head=(TEL
*)malloc(sizeof(TEL));

head->next=p1;

}

else

{

for(p2=head;p2
!=
NULL;
p2=p2->next)

{

if
(p2->next
==
NULL)

break;

}

p2->next=p1;

}

printf("添加成功!");
}
void
del()
{

TEL
*p5,*p6;

p5=p6=head;

char
dname[20];

printf("請輸入要刪除的姓名!\n");

scanf("%s",dname);

while(p5
!=
NULL)

{

p6
=
p5->next;

if
(NULL
==
p6)

{

return;

}

if(strcmp(p6->name,dname)==0)

{

p5->next=p6->next;

free(p6);

print();

return;

}

p5=p5->next;

}
}
void
main()
{

char
key;

menu();

while(1)

{

printf("請選擇:");

scanf("%c",&key);

switch(key)

{case'a':add();
break;

case
'p':print();break;

case
'd':del();break;

case
's':search();break;

default:printf("輸入錯誤!請重新輸入!\n");break;

}

fflush(stdin);

}
}

❹ C語言結構體加指針寫電話簿,改錯

#include<string.h>

#include<stdio.h>

#include<stdlib.h>

#include<malloc.h>

struct people

{ char name[100];

char num[100];

struct people* next;

};

struct people* head;

struct people* p;

void inputpeo()

{ //插入頭節點後

while(1)

{ struct people* newpeople = (people*) malloc(sizeof(people));

p = head;

printf("輸入姓名: ");

scanf("%s", newpeople->name);

printf("輸入電話: ");

scanf("%s", newpeople->num);

newpeople->next = head->next ;

head->next = newpeople;

printf("按任意鍵接著輸入,按R返回目錄 ");

getchar();

char ch = getchar();

if(ch == 'R' || ch == 'r')

{ break;

}

}

}

void showpeo()

{ for(p = head; p != NULL; p = p->next)

{ if(p != head)

{ printf("姓名:%s 電話:%s ", p->name, p->num);

}

}

}

void deletepeo(people *peo)

{ people *q = head->next;

for(p = head; q != NULL; q = q->next, p = p->next)

{ if(strcmp(q->name , peo->name ) == 0)

{ p->next = q->next ;

free(q);

}

}

if(q == NULL) printf("未找到聯系人 ");

}

void find(people *peo)

{ for(p = head; p != NULL; p = p->next)

{ if(p != head)

{ if(strcmp(p->name , peo->name ) == 0)

{ printf("姓名:%s 電話:%s ", p->name , p->num );

return ;

}

}

}

if(p == NULL) printf("沒找到聯系人 ");

}

void change(people *peo)

{ for(p = head; p != NULL; p = p->next)

{ if(p != head)

{ if(strcmp(p->name , peo->name ) == 0)

{ printf("姓名:%s 電話:%s ", p->name , p->num );

printf("現將電話修改為: ");

scanf("%s", p->num );

return ;

}

}

}

if(p == NULL) printf("沒找到聯系人 ");

}

void menu()

{ printf("輸入1錄入聯系人 ");

printf("輸入2顯示聯系人 ");

printf("輸入3刪除聯系人 ");

printf("輸入4查找聯系人 ");

printf("輸入5修改聯系人 ");

printf("輸入6退出系統 ");

}

int main()

{ head = (people*) malloc(sizeof(people));

head->next = NULL;//定義了一個可以指向結構體的指針

menu();

int n;

scanf("%d", &n);

while (n != 6)

{ people *peo = (people*) malloc(sizeof(people));


switch (n)

{ case 1://1.錄入信息

inputpeo();

break;

case 2://2.顯示信息

showpeo();

break;

case 3://3.刪除信息

printf("輸入需要刪除的人的名字: ");

scanf("%s", peo->name );

deletepeo(peo);

break;

case 4://4.查找信息

printf("輸入需要查找的人的名字: ");

scanf("%s", peo->name);

find(peo);

break;

case 5://5.修改信息

printf("輸入需要修改的人的名字: ");

scanf("%s", peo->name);

change(peo);

break;

default:

printf("輸入錯誤,重新輸入 ");

break;

}

menu();

scanf("%d", &n);

}

printf("結束");

return 0;

}

❺ C語言用結構體編寫電話簿

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int len=0,j,q,u, x,n=0,i=0,s;
int b;
int c;
void sb()
{
printf("\t&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&\n");
printf("\t& &\n");
printf("\t& 通 訊 錄 管 理 系 統 &\n");
printf("\t& &\n");
printf("\t& 主菜單 &\n");
printf("\t& &\n");
printf("\t& <1>添加聯系人 &\n");
printf("\t& <2>瀏覽已有聯系人 &\n");
printf("\t& <3>修改聯系人信息 &\n"); //菜單界面
printf("\t& <4>刪除聯系人 &\n");
printf("\t& <5>查詢聯系人 &\n");
printf("\t& <6>退出 &\n");
printf("\t& &\n");
printf("\t& &\n");
printf("\t&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&\n");
}

struct person
{int num[100];
char name[30];
char jiguan[20];
char phone1[30];
char phone2[30];
char e_mail[40];
}a[100];

void shuru()
{
printf("請輸入聯系人信息,輸入'#'返回\n");
while(1)
{system("cls");
sb();
printf("請輸入聯系人姓名:\n");
scanf("%s",&a[i].name);
printf("請輸入籍貫:\n");
scanf("%s",&a[i].jiguan);
printf("請輸入號碼1:\n");
scanf("%s",&a[i].phone1);
printf("請輸入號碼2:\n");
scanf("%s",&a[i].phone2);
printf("請輸入郵箱:\n");
scanf("%s",&a[i].e_mail);
a[i].num[i]=i+1;
len=len+1; //添加聯系人
i=i+1;
system("cls");
sb();
printf("\n");
printf("添加成功!\n輸入'1'繼續添加,輸入'0'返回主菜單\n");
scanf("%d",&b);
if(b==0){system("cls");
sb();break;}
}
printf("已添加%d個聯系人\n",len);
printf("請選擇菜單功能:");
}

void tt()
{
printf("\t******************************************************************\n");
printf("\t* *\n");
printf("\t* ~☆~ 此程序由小山B同學獨自編寫,此程序解釋權歸小山B所有。 *\n");
printf("\t* 請用戶使用時遵守《版權法》及相關法律法規,不得以任何名義 *\n"); //開始界面
printf("\t* 復制、傳播此程序代碼。版權所有,侵權必究! *\n");
printf("\t* *\n");
printf("\t******************************************************************\n");

printf("\t選擇1代表用戶同意以上條約並繼續使用,選擇2退出界面。\n");

}

void ss()
{
jixu:
system("cls");
sb();
printf("\n");
printf("已有聯系人:\n");
for(j=0;j<len;j++)
printf("%d\t%s\t%s\n",j+1,a[j].name,a[j].phone1); //瀏覽聯系人
printf("\n");
printf("輸入對應編號查看詳細信息,輸入'0'返回主菜單\n");
scanf("%d",&i);
if(i==0){system("cls");
sb();printf("請選擇菜單功能:\n");return ;}
system("cls");
sb();
printf("\t姓名:\t%s\n\t籍貫:\t%s\n\tphone1:\t%s\n\tphone2:\t%s\n\te-mail:\t%s\n",a[i-1].name,a[i-1].jiguan,a[i-1].phone1,a[i-1].phone2,a[i-1].e_mail);
printf("\n輸入'9'返回上一頁,輸入'0'返回主菜單,\n");
scanf("%d",&c);
if(c==9){goto jixu;}
else{
system("cls");
sb();
printf("請選擇菜單功能:\n");}
}

void shanchu()
{ system("cls");
sb();
printf("已有聯系人:\n");
for(j=0;j<len;j++)
printf("%d\t%s\t%s\n",j+1,a[j].name,a[j].phone1); //刪除聯系人
printf("\n");
printf("請選擇需要刪除的聯系人編號:");
scanf("%d",&x);
for(s=x;s<=len;s++)
a[s-1]=a[s];
len=len-1;
system("cls");
sb();
printf("刪除成功!\n");
printf("請選擇菜單功能:\n");

}

void xiugai()
{
system("cls");
sb();
printf("已有聯系人:\n");
for(j=0;j<len;j++)
printf("%d\t%s\t%s\n",j+1,a[j].name,a[j].phone1); //修改聯系人
printf("\n");
printf("請選擇需要修改的聯系人編號:");
scanf("%d",&x);
system("cls");
sb();
printf("\n(1)\t%s\n(2)\t%s\n(3)\t%s\n(4)\t%s\n(5)\t%s\n",a[x-1].name,a[x-1].jiguan,a[x-1].phone1,a[x-1].phone2,a[x-1].e_mail);
printf("\n請輸入需要修改的信息編號:\n");
scanf("%d",&c);
if(c==1){printf("請輸入新姓名:\n");scanf("%s",a[x-1].name);}
if(c==2){printf("請輸入新籍貫:\n");scanf("%s",a[x-1].jiguan);}
if(c==3){printf("請輸入新號碼:\n");scanf("%s",a[x-1].phone1);}
if(c==4){printf("請輸入新號碼:\n");scanf("%s",a[x-1].phone2);}
if(c==5){printf("請輸入新郵箱:\n");scanf("%s",a[x-1].e_mail);}
system("cls");
sb();
printf("修改成功!\n");
printf("請選擇菜單功能:\n");

}

void chaxun()
{int v,p;
char t[20];hehe:
system("cls");
sb();
printf("請選擇查詢方式:\n");
printf("\n");
printf("1.通過姓名查詢\t2.通過號碼查詢\n\n9.返回主菜單\n");
scanf("%d",&v);
p=v; //查詢聯系人
if(p==1)
{system("cls");
sb();
printf("請輸入查詢的姓名:\n");
scanf("%s",t);

for(i=0;i<len;i++)
if(strcmp(t,a[i].name)==0)
{system("cls");sb();
printf("\t姓名:\t%s\n\t籍貫:\t%s\n\tphone1:\t%s\n\tphone2:\t%s\n\te-mail:\t%s\n",a[i].name,a[i].jiguan,a[i].phone1,a[i].phone2,a[i].e_mail);
printf("\n輸入'9'返回上一頁,輸入'0'返回主菜單,\n");
scanf("%d",&c);
if(c==9){goto hehe;}
else{
system("cls");
sb();
printf("請選擇菜單功能:\n"); return;}
}
}

if(p==2)
{system("cls");
sb();printf("請輸入查詢的號碼:\n");
scanf("%s",t);

for(i=0;i<len;i++)
if(strcmp(t,a[i].phone1)==0)
{system("cls");sb();
printf("姓名:\t%s\n籍貫:\t%s\nphone1:\t%s\nphone2:\t%s\ne-mail:\t%s\n",a[i].name,a[i].jiguan,a[i].phone1,a[i].phone2,a[i].e_mail);
printf("\n輸入'9'返回上一頁,輸入'0'返回主菜單,\n");
scanf("%d",&c);
if(c==9){goto hehe;}
else{system("cls");sb();printf("請選擇菜單功能:\n");return;}}

for(i=0;i<len;i++)
if(strcmp(t,a[i].phone2)==0)
{system("cls");sb();
printf("姓名:\t%s\n籍貫:\t%s\nphone1:\t%s\nphone2:\t%s\ne-mail:\t%s\n",a[i].name,a[i].jiguan,a[i].phone1,a[i].phone2,a[i].e_mail);
printf("\n輸入'9'返回上一頁,輸入'0'返回主菜單,\n");
scanf("%d",&c);
if(c==9){goto hehe;}
else{system("cls");sb();printf("請選擇菜單功能:\n");return;}}
}

if(p==9){system("cls");sb();printf("請選擇菜單功能:\n");return;}
else{printf("輸入錯誤!\n請重新輸入,或輸入9返回主菜單\n");goto hehe;}

}

void main()
{int g;
tt();
scanf("%d",&g);
if(g==1){ system("cls");
printf("");
sb();
printf("請選擇菜單功能:");

scanf("%d",&u);
q=u;
while(q!=6) //主函數
{
if(q==1) { system("cls"); sb(); shuru();}
if(q==2) { ss(); }
if(q==3) { xiugai(); }
if(q==4) { shanchu(); }
if(q==5) { chaxun(); }

scanf("%d",&q);
}

system("cls");
sb();
printf("感謝使用!\n");

}

else{ system("cls");
printf("感謝使用!\n");}

}

這是我很久之前寫的了。。。你挑著改就行了,功能都沒什麼問題

❻ c語言程序設計 電話簿管理系統

intmain()
{
LinkQueueQ;
initAddressBook(Q);

intflag=0;
while(flag!=8)
{
printf("※※※※※主※※※※※菜※※※※※單※※※※※ ");
printf("※1、增加聯系人2、刪除聯系人※ ");
printf("※3、修改聯系人4、清空通訊錄※ ");
printf("※5、查找聯系人6、按組顯示※ ");
printf("※7、顯示全部聯系人8、退出※ ");
printf("※※※※※※※※※※※※※※※※※※※※※※※ ");
printf("請輸入編號(1-8): ");
scanf("%d",&flag);
if(flag<1||flag>8)
{
printf("輸入錯誤請重新輸入! ");
continue;
}
else
{
switch(flag){
case1:
if(enAddressBook(Q))
printf("增加聯系人成功! ");
else
printf("增加聯系人失敗! ");
break;
case2:
if(delPerson(Q))
printf("刪除聯系人成功! ");
else
printf("聯系人刪除失敗! ");
break;
case3:
if(update(Q))
printf("修改聯系人成功! ");
else
printf("修改聯系人失敗! ");
break;
case4:
if(clearAddressBook(Q))
printf("通訊錄已清空! ");
else
printf("通訊錄清空失敗! ");
break;
case5:
findByName(Q);
break;
case6:
findByGroup(Q);
break;
case7:
disAll(Q);
break;
case8:
system("cls");
break;
}
}
}
printf("※※※※※感謝您使用本系統!※※※※※※ ");
return0;
}
//初始化通訊錄

voidinitAddressBook(LinkQueue&Q)
{
Q.front=Q.rear=(QNode*)malloc(sizeof(QNode));
if(!Q.front)
exit(1);
else
Q.front->next=NULL;

}
//清空通訊錄
boolclearAddressBook(LinkQueue&Q)
{
system("cls");
while(addressBookLength(Q)!=0)
{
QNode*p;
p=Q.front->next;
Q.front->next=p->next;
if(p==Q.rear)
Q.rear=Q.front;
free(p);
}
returntrue;
}
//通訊錄當前人數
intaddressBookLength(LinkQueue&Q)
{
inti=0;
QNode*p;
p=Q.front;
if(Q.front==Q.rear)
i=0;
else
{
while(p!=Q.rear)
{
p=p->next;
i++;
}
}
returni;
}
//刪除聯系人
booldelPerson(LinkQueue&Q)
{
char_name[20];
system("cls");
printf("請輸入要刪除的聯系人的姓名: ");
scanf("%s",_name);
QNode*p,*q;
if(Q.front==Q.rear)
{
printf("通訊錄為空! ");
returnfalse;
}
else
{
p=Q.front;
q=Q.front->next;
while(q!=Q.rear){
if(strcmp(q->name,_name)==0)
{
p->next=q->next;
free(q);//刪除節點
returntrue;
}
else
{
p=p->next;
q=q->next;
}
}
if((strcmp(q->name,_name)==0))
{
free(q);
Q.front=Q.rear;
returntrue;
}
else
{
printf("無此聯系人! ");
returnfalse;
}
}
}
//查找聯系人
boolfindByName(LinkQueue&Q)
{
system("cls");
if(Q.front==Q.rear)
{
printf("手機中無聯系人! ");
returnfalse;
}
else
{
char_name[20];
printf("請輸入要查詢的聯系人姓名: ");
scanf("%s",_name);
QNode*p;
p=Q.front->next;
while(p->next!=NULL)
{
if(strcmp(p->name,_name)==0)
{
printf("姓名:%s號碼:%s分組:%s ",p->name,p->tel,p->group);
returntrue;
}
p=p->next;
}
if(strcmp(p->name,_name)==0){
printf("姓名:%s號碼:%s分組:%s ",p->name,p->tel,p->group);
returntrue;
}
else
{
printf("查無此人! ");
returnfalse;
}
}
}
//按組顯示聯系人
boolfindByGroup(LinkQueue&Q)
{
system("cls");
if(Q.front==Q.rear)
{
printf("手機中無聯系人! ");
returnfalse;
}
else
{
char_group[20];
printf("請輸入要查詢的分組: ");
scanf("%s",_group);
QNode*p;
p=Q.front->next;
while(p->next!=NULL)
{
if(strcmp(p->group,_group)==0)
{
printf("姓名:%s號碼:%s ",p->name,p->tel);
}
p=p->next;
}
if(strcmp(p->group,_group)==0){
printf("姓名:%s號碼:%s ",p->name,p->tel);
returntrue;
}
else
{
printf("無此分組! ");
returnfalse;
}
}
}
//增加聯系人
boolenAddressBook(LinkQueue&Q)
{
system("cls");
QNode*p;
p=(QNode*)malloc(sizeof(QNode));
if(!p)
returnfalse;
else
{
printf("請輸入聯系人姓名: ");
scanf("%s",p->name);
printf("請輸入聯系人號碼: ");
scanf("%s",&p->tel);
printf("請輸入聯系人分組: ");
scanf("%s",p->group);
if(Q.front->next==NULL)
{
Q.front->next=p;
Q.rear=p;
Q.rear->next=NULL;
}
else
{
p->next=NULL;
Q.rear->next=p;
Q.rear=p;
}
returntrue;
}
}
//修改聯系人
boolupdate(LinkQueue&Q)
{
system("cls");
if(Q.front==Q.rear)
{
printf("手機中無聯系人! ");
returnfalse;
}
else
{
char_name[20];
printf("請輸入要修改的聯系人姓名: ");
scanf("%s",_name);
QNode*p;
p=Q.front->next;
while(p->next!=NULL)
{
if(strcmp(p->name,_name)==0)
{
printf("請輸入新聯系人姓名: ");
scanf("%s",p->name);
printf("請輸入新聯系人號碼: ");
scanf("%s",&p->tel);
printf("請輸入新聯系人分組: ");
scanf("%s",p->group);
returntrue;
}
p=p->next;
}
if(strcmp(p->name,_name)==0){
printf("請輸入新聯系人姓名: ");
scanf("%s",p->name);
printf("請輸入新聯系人號碼: ");
scanf("%s",&p->tel);
printf("請輸入新聯系人分組: ");
scanf("%s",p->group);
returntrue;
}
else
{
printf("查無此人! ");
returnfalse;
}
}
}
//顯示所有聯系人
voiddisAll(LinkQueue&Q)
{
system("cls");
inti=0;
QNode*p;
p=Q.front->next;
if(Q.front==Q.rear)
printf("無聯系人! ");
else
{
printf("姓名號碼分組 ");
while(p!=NULL){
printf("%15s%15s%15s ",p->name,p->tel,p->group);
p=p->next;
}
}
}

❼ 電話簿 C語言 查詢環節

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

typedefstructbook{
charname[20];
charnum[11];//11位寬度不夠啊!
structbook*next;
}Book;

intmain(){
Book*insert(Book*head,char*name,char*num);
Book*create(Book*head);
voidshow(Book*head);
intsearch(Book*head,char*name);
Book*p;
p=(Book*)malloc(sizeof(Book));
p->next=NULL;
create(p);
charname[20];
charnum[11];
intn;
while(1){
printf("******************* ");
printf("請輸入操作菜單的序號 ");
printf("1:查找聯系人電話: ");
printf("2:插入聯系人電話: ");
printf("3:刪除聯系人電話: ");
printf("4:顯示所有聯系人電話: ");
printf("0:退出: ");
printf("******************* ");
scanf("%d",&n);
switch(n){
case1:
printf("請輸入要查找的聯系人姓名:");
scanf("%s",name);
if(search(p,name)==0)printf("查找到了! ");
elseprintf("沒有此聯系人!");
break;
case2:
printf("請輸入聯系人的姓名:");
scanf("%s",name);
printf("請輸入聯系人的電話號碼");
scanf("%s",num);
insert(p,name,num);
break;
case3:break;
case4:show(p);break;
case0:exit(0);
}
}
return1;
}

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:582
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:876
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:571
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:757
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:673
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1000
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:244
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:103
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:795
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:701