当前位置:首页 » 编程语言 » 通讯录管理系统c语言

通讯录管理系统c语言

发布时间: 2022-07-28 13:01:42

㈠ 求用c语言编写一个学生通讯录管理系统

/* HELLO.C -- Hello, world */

#include<stdio.h>
struct person
{
char name[8];
char tel[15];
char addr[50];
};
char filename[20]="E:\\txl.txt";
FILE *fp;
void creat();
void output();
void search();
void append();
void modify();
void delete();
main( )

{
int m;
creat();
while(1)
{
printf("\n\t\t*********欢迎使用通讯录信息管理系统*********\n\n");
printf("\n\t\t添加,请按1");
printf("\n\t\t查找,请按2");
printf("\n\t\t修改,请按3");
printf("\n\t\t删除,请按4");
printf("\n\t\t输出,请按5");
printf("\n\t\t退出,请按0\n");
printf("\n\t\t********************************************\n\n");
printf("Please select(0--5):");
scanf("%d",&m);
if(m>=0&&m<=5)
{
switch(m)
{
case 1: append();
break;
case 2: search();
break;
case 3: modify();
break;
case 4: delete();
break;
case 5: output();
break;
case 0: exit();
}
printf("\n\n操作完毕,请再次选择!");
}
else
printf("\n\n选择错误,请再次选择!");
}
}

/*输入模块creat( ): 创建通讯录的子函数。*/
void creat()
{
struct person one;
long s1;
/*printf("\n请输入通讯录文件名:");
scanf("%s",filename); */

if((fp=fopen(filename,"at+"))==NULL)
{
printf("\n不能建立通讯录!");
exit();
}
fprintf(fp,"%-10s%-20s%-50s\n","姓名","电话号码","住址");
printf("\n请输入姓名、电话号码及住址(以0结束)\n");
scanf("%s",one.name);
while(strcmp(one.name,"0"))
{
scanf("%s%s",one.tel,one.addr);
fprintf(fp,"%-10s%-20s%-50s\n",one.name,one.tel,one.addr);
scanf("%s",one.name);
}
fclose(fp);
}

/*输出模块output( ):输出通讯录中联系人通讯信息的子函数*/
void output()
{
struct person one;
if((fp=fopen(filename,"r"))==NULL)
{
printf("\n不能打开通讯录!");
exit();
}
printf("\n\n%20s\n","通 讯 录");
while(!feof(fp))
{
fscanf(fp,"%s%s%s\n",one.name,one.tel,one.addr);
printf("%-10s%-20s%-50s",one.name,one.tel,one.addr);
}
fclose(fp);
}

/*添加模块append( ):向通讯录中添加某人通讯信息的子函数*/
void append()
{
struct person one;
if((fp=fopen(filename,"a"))==NULL)
{
printf("\n不能打开通讯录!");
exit();
}
printf("\n请输入添加的姓名、电话号码及住址\n");
scanf("%s%s%s",one.name,one.tel,one.addr);
fprintf(fp,"%-10s%-20s%-50s\n",one.name,one.tel,one.addr);
fclose(fp);
}

/*查找模块search( ):在通讯录中查找某人通讯信息的子函数*/
void search()
{
int k=0;
char namekey[8];
struct person one;
printf("\n请输入姓名:");
scanf("%s",namekey);
if((fp=fopen(filename,"rb"))==NULL)
{
printf("\n不能打开通讯录!");
exit();
}
while(!feof(fp))
{
fscanf(fp,"%s%s%s\n",one.name,one.tel,one.addr);
if(!strcmp(namekey,one.name))
{
printf("\n\n已查到,记录为:");
printf("\n%-10s%-18s%-50s",one.name,one.tel,one.addr);
k=1;
}
}
if(!k)
printf("\n\n对不起,通讯簿中没有此人的记录。");
fclose(fp);
}

/*修改模块modify( ):在通讯录中修改某人通讯信息的子函数*/
void modify()
{
int m,k=0;
long offset;
char namekey[8];
struct person one;
printf("\n请输入姓名:");
scanf("%s",namekey);
if((fp=fopen(filename,"r+"))==NULL)
{
printf("\n不能打开通讯录!");
exit();
}
while(!feof(fp))
{
offset=ftell(fp);
fscanf(fp,"%s%s%s\n",one.name,one.tel,one.addr);
if(!strcmp(namekey,one.name))
{
k=1;
break;
}
}
if(k)
{
printf("\n已查到,记录为:");
printf("\n%-10s%-18s%-50s",one.name,one.tel,one.addr);
printf("\n请输入新姓名、电话号码及住址:");
scanf("%s%s%s",one.name,one.tel,one.addr);
fseek(fp,offset,SEEK_SET);
printf("%ld",ftell(fp));
fprintf(fp,"%-10s%-20s%-50s\n",one.name,one.tel,one.addr);
}
else
printf("\n对不起,通讯录中没有此人的记录。");
fclose(fp);
}

/*删除模块delete( ):在通讯录中删除某人通讯信息的子函数*/
void delete()
{
int m,k=0,flag;
long offset1,offset2;
char namekey[8], valid[4];
struct person one;
printf("\n请输入姓名:");
scanf("%s",namekey);
if((fp=fopen(filename,"r+"))==NULL)
{
printf("\n不能打开通讯录!");
exit();
}
while(!feof(fp))
{
offset1=ftell(fp);
fscanf(fp,"%s%s%s\n",one.name,one.tel,one.addr);
if(!strcmp(namekey,one.name))
{
k=1;
break;
if(k)
{
printf("\n已查到,记录为");
printf("\n%-10s%-18s%-50s",one.name,one.tel,one.addr);
printf("\n确实要删除,按1;不删除,按0:");
scanf("%d",&m);
if(m)
{
fseek(fp,offset1,SEEK_SET);
fprintf(fp,"%-10s%-20s%-50s\n","","","");
}
else
printf("\n对不起,通讯录中没有此人的记录。");
fclose(fp);
}
}
}
}
<PIXTEL_MMI_EBOOK_2005>1###########################################################</PIXTEL_MMI_EBOOK_2005>

㈡ C语言,编写一个简单的通讯录管理系统

#include <string.h>

#include <stdio.h>

#include<stdlib.h>

int cntAddr=0,i,j;

char in[12];

const char * strFmt=" %d %s %s %s %s ";

typedef struct ADDRESSD {

int ID;

char name[12];

char workPlace[12];

char teleOff[12];

char teleHome[12];

}ADDRESS;

ADDRESS addrTmp[100],adTmp;

int load(ADDRESS adr[]){

FILE *fp;

if((fp=fopen("c:\txl.txt","r"))!=NULL){

cntAddr=0;

while(!feof(fp)){

fscanf(fp,"%d %s %s %s %s ",&(adr[cntAddr].ID),adr[cntAddr].name,adr[cntAddr].workPlace,adr[cntAddr].teleOff,adr[cntAddr].teleHome);

++cntAddr;

}

}

fclose(fp);

return cntAddr;

};

void list(ADDRESS addr[],int length){

for(i=0;i<length;++i)printf(strFmt,addr[i].ID,addr[i].name,addr[i].workPlace,addr[i].teleOff,addr[i].teleHome);

}

void display(ADDRESS addr[]){

for(i=0;i<cntAddr;++i)addrTmp[i]=addr[i];

for(i=0;i<cntAddr-1;++i)for(j=i+1;j<cntAddr;++j)if(addrTmp[i].ID>addrTmp[j].ID){adTmp=addrTmp[i];addrTmp[i]=addrTmp[j];addrTmp[j]=adTmp;}

for(i=0;i<cntAddr;++i)printf(strFmt,addrTmp[i].ID,addrTmp[i].name,addrTmp[i].workPlace,addrTmp[i].teleOff,addrTmp[i].teleHome);

}

void namesort(ADDRESS addr[],int length){

for(i=0;i<length;++i)addrTmp[i]=addr[i];

for(i=0;i<length-1;++i)for(j=i+1;j<length;++j)if(strcmp(addrTmp[i].name,addrTmp[j].name)>0){adTmp=addrTmp[i];addrTmp[i]=addrTmp[j];addrTmp[j]=adTmp;}

for(i=0;i<length;++i)printf(strFmt,addrTmp[i].ID,addrTmp[i].name,addrTmp[i].workPlace,addrTmp[i].teleOff,addrTmp[i].teleHome);

};

void save(ADDRESS adr[],int length){

FILE *fp;

fp=fopen("c:\txl.txt","w");

for(i=0;i<cntAddr;++i)fprintf(fp,"%d %s %s %s %s ",adr[i].ID,adr[i].name,adr[i].workPlace,adr[i].teleOff,adr[i].teleHome);

fclose(fp);

};

void unitssort(ADDRESS addr[],int length){

for(i=0;i<length;++i)addrTmp[i]=addr[i];

for(i=0;i<length-1;++i)for(j=i+1;j<length;++j)if(strcmp(addrTmp[i].workPlace,addrTmp[j].workPlace)>0){adTmp=addrTmp[i];addrTmp[i]=addrTmp[j];addrTmp[j]=adTmp;}

for(i=0;i<length;++i)printf(strFmt,addrTmp[i].ID,addrTmp[i].name,addrTmp[i].workPlace,addrTmp[i].teleOff,addrTmp[i].teleHome);

};

void namesearch(ADDRESS addr[],int length){

printf("请输入姓名: ");

scanf("%s",&in);

for(i=0;i<length;++i)if(strcmp(addr[i].name,in)==0)printf(strFmt,addr[i].ID,addr[i].name,addr[i].workPlace,addr[i].teleOff,addr[i].teleHome);

};

void unitssearch(ADDRESS adr[],int length){

printf("请输入工作单位: ");

scanf("%s",&in);

for(i=0;i<length;++i)if(strcmp(adr[i].workPlace,in)==0)printf(strFmt,adr[i].ID,adr[i].name,adr[i].workPlace,adr[i].teleOff,adr[i].teleHome);

};

void officenumbersearch(ADDRESS adr[],int length){

printf("请输入办公电话: ");

scanf("%s",&in);

for(i=0;i<length;++i)if(strcmp(adr[i].teleOff,in)==0)printf(strFmt,adr[i].ID,adr[i].name,adr[i].workPlace,adr[i].teleOff,adr[i].teleHome);

};

void homenumbersearch(ADDRESS adr[],int length){

printf("请输入家庭电话: ");

scanf("%s",&in);

for(i=0;i<length;++i)if(strcmp(adr[i].teleHome,in)==0)printf(strFmt,adr[i].ID,adr[i].name,adr[i].workPlace,adr[i].teleOff,adr[i].teleHome);

};

int delet(ADDRESS adr[],int length){

printf("要修改第几条记录: ");

scanf("%d",&j);

for(i=j;i<length-1;++i)adr[i]=adr[i+1];

return --length;

};

void rewrite(ADDRESS adr[],int length){

printf("要修改第几条记录: ");

scanf("%d",&j);

printf("请输入ID: ");

scanf("%d",&i);

adr[j].ID=i;

printf("请输入姓名: ");

scanf("%s",in);

strcpy(adr[j].name,in);

printf("请输入工作单位: ");

scanf("%s",in);

strcpy(adr[j].workPlace,in);

printf("请输入办公电话: ");

scanf("%s",in);

strcpy(adr[j].teleOff,in);

printf("请输入家庭电话: ");

scanf("%s",in);

strcpy(adr[j].teleHome,in);

};

int add(ADDRESS adr[],int length){

printf("请输入ID: ");

scanf("%d",&i);

adr[length].ID=i;

printf("请输入姓名: ");

scanf("%s",in);

strcpy(adr[length].name,in);

printf("请输入工作单位: ");

scanf("%s",in);

strcpy(adr[length].workPlace,in);

printf("请输入办公电话: ");

scanf("%s",in);

strcpy(adr[length].teleOff,in);

printf("请输入家庭电话: ");

scanf("%s",in);

strcpy(adr[length].teleHome,in);

return ++cntAddr;

};

void (){

FILE *fp,*fc;

printf("请输入新文件名(路径中的反斜杠用\表示) ");

scanf("%s",&in);

if((fp=fopen("c:\txl.txt","r"))!=NULL){

fc=fopen(in,"w");

while(!feof(fp)){

fscanf(fp,"%d %s %s %s %s ",&(adTmp.ID),adTmp.name,adTmp.workPlace,adTmp.teleOff,adTmp.teleHome);

fprintf(fc,"%d %s %s %s %s ",adTmp.ID,adTmp.name,adTmp.workPlace,adTmp.teleOff,adTmp.teleHome);

}

fclose(fc);

}

fclose(fp);

};

int enter(ADDRESS adr[]){

cntAddr=0;

printf("请按次序输入数据,结束按CTRL+z: ");

while(1){

printf("请输入ID: ");

if(scanf("%d",&i)==EOF)break;

adr[cntAddr].ID=i;

printf("请输入姓名: ");

if(scanf("%s",in)==EOF)break;

strcpy(adr[cntAddr].name,in);

printf("请输入工作单位: ");

if(scanf("%s",in)==EOF)break;

strcpy(adr[cntAddr].workPlace,in);

printf("请输入办公电话: ");

if(scanf("%s",in)==EOF)break;

strcpy(adr[cntAddr].teleOff,in);

printf("请输入家庭电话: ");

if(scanf("%s",in)==EOF)break;

strcpy(adr[cntAddr].teleHome,in);

++cntAddr;

}

return cntAddr;

};

void showpaixu(ADDRESS adr[],int length)

{

int choice;

menu1:

system("cls");

printf(" *************************通讯录信息管理系统************************* ");

printf(" 1. 全部显示通讯录信息 ");

printf(" 2. 按序号显示通讯录信息 ");

printf(" 3. 按姓名排序 ");

printf(" 4. 按工作单位排序 ");

printf(" 0. 返回上一级菜单 ");

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

printf(" 请选择(0~4) ");

scanf("%d",&choice);

switch(choice)

{

case 1:

list(adr,length);

printf(" 请按任意键返回... ");

system("pause");

break; /*显示全部记录*/

case 2:

display(adr);

printf(" 请按任意键返回... ");

system("pause");break; /*按序号显示记录*/

case 3:

namesort(adr,length);

printf(" 请按任意键返回... ");

system("pause");

break; /*按姓名排序*/

case 4:

unitssort(adr,length);

printf(" 请按任意键返回... ");

system("pause");

break; /*按工作单位排序*/

case 0: return;

}

goto menu1;

}

/*通讯录信息查找功能*/

void chazhao(ADDRESS adr[],int length)

{

int choice;

menu2:

system("cls");

printf(" *************************通讯录信息管理系统************************* ");

printf(" 1. 通过姓名查找 ");

printf(" 2. 通过工作单位查找 ");

printf(" 3. 通过办公电话查找 ");

printf(" 4. 通过家庭电话查找 ");

printf(" 0. 返回上一级菜单 ");

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

printf(" 请选择(0~4) ");

scanf("%d",&choice);

switch(choice)

{

case 1:

namesearch(adr,length);

printf(" 请按任意键返回... ");

system("pause");

break; /*按姓名查找记录*/

case 2:

unitssearch(adr,length);

printf(" 请按任意键返回... ");

system("pause");

break; /*按工作单位查找记录*/

case 3:

officenumbersearch(adr,length);

printf(" 请按任意键返回... ");

system("pause");

break; /*按办公电话查找记录*/

case 4:

homenumbersearch(adr,length);

printf(" 请按任意键返回... ");

system("pause");

break; /*按住宅电话查找记录*/

case 0: return;

}

goto menu2;

}

/*通讯录信息变更功能*/

void biangeng(ADDRESS adr[],int length)

{

int choice;

menu3:

system("cls");

printf(" *************************通讯录信息管理系统************************* ");

printf(" 1. 删除记录 ");

printf(" 2. 修改记录 ");

printf(" 3. 添加记录 ");

printf(" 0. 返回上一级菜单 ");

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

printf(" 请选择(0~3) ");

scanf("%d",&choice);

switch(choice)

{

case 1:

length=delet(adr,length);

save(adr,length);

printf(" 请按任意键返回... ");

getchar();

break; /*删除记录*/

case 2:

rewrite(adr,length);

save(adr,length);

printf(" 请按任意键返回... ");

getchar();

break; /*修改记录*/

case 3:

length=add(adr,length);

save(adr,length);

printf(" 请按任意键返回... ");

getchar();

break; /*插入记录*/

case 0: return;

}

goto menu3;

}

int wenjian(ADDRESS adr[],int length)

{

int choice;

menu4:

system("cls");

printf(" *************************通讯录信息管理系统************************* ");

printf(" 1. 导入文件到通讯录 ");

printf(" 2. 把当前文件复制到新文件上 ");

printf(" 0. 返回上一级菜单 ");

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

printf(" 请选择(0~2) ");

scanf("%d",&choice);

switch(choice)

{

case 1: length=load(adr);

printf("您已经成功的导入文件到通讯录! ");

printf(" 请按任意键返回... ");

system("pause");break;

case 2: ();

printf("复制成功! ");

printf(" 请按任意键返回... ");

system("pause");break;

case 0: return length;

}

goto menu4;

}

/*关于*/

void about()

{

system("color 87");

system("cls");

printf(" 《通讯录信息管理系统》 ");

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

printf(" 版权所有(C) 2009-2010 DIY软件 ");

printf(" 制作人:西北民族大学计算机科学与信息09级计算机3班 王元波 ");

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

printf(" 请按任意键返回主菜单...");

system("pause");

}

/******主函数开始*******/

void main()

{

int choice;

int length; /*保存记录长度*/

ADDRESS adr[100] ; /*定义结构体数组*/

menu:

system("color f9");

system("cls");

printf(" *************************通讯录信息管理系统************************* ");

printf(" 请选择以下通讯录管理功能: ");

printf(" 1. 通讯录信息输入 ");

printf(" 2. 通讯录信息浏览及排序 ");

printf(" 3. 通讯录信息查询 ");

printf(" 4. 通讯录信息更改 ");

printf(" 5. 通讯录及文件操作 ");

printf(" 6. 关于通讯录信息管理系统 ");

printf(" 0. 退出通讯录管理系统 ");

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

printf(" 请选择(0~6) ");

scanf("%d",&choice);

switch(choice)

{

case 1: length=enter(adr);

save(adr,length);

printf(" 请按任意键返回... ");

system("pause");break;/*输入记录*/

case 2: showpaixu(adr,length);break;

case 3: chazhao(adr,length);break;

case 4: biangeng(adr,length);break;

case 5: length=wenjian(adr,length);break;

case 6: about();break;/*关于*/

case 0: return; /*如返回值为则程序结束*/

}

goto menu;

}

拓展资料

C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。



㈢ C语言设计个人通讯录管理系统

1、创建学生社团管理系统的欢迎界面,该欢迎界面以图片的方式呈现,系统启动时再屏幕中居中显示。

㈣ 用C语言. 编写一个“通讯录管理系统”程序

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct worker
{
char name[30]; //name职工姓名
char ID[10]; //ID职工编号
char sex[3];
int birth;
int tel;
char ec[10];
char addr[30];
char cheng[10];
int year;
};
int dq(struct worker wo[]);
void show();
void bc(struct worker wo[]);
void add();
void see();
void search();
void ghcz();
void xmcz();
void del();
void ghxg();
void reserve();
//void back();
struct worker wo[100]; //保存所有的职工信息
int Number=0; //记录总的职工人数
int main()
{
int choose=0;
system("color 1e");//更改背景颜色
while(1)
{
show();
printf("\t\t====>请选择:");
scanf("%d",&choose);
system("cls");//清屏
switch(choose)
{
case 0: exit(0);//退出
break;
case 1: add();
back();//添加职工信息
break;
case 2: see();
back();//查看职工信息
break;
case 3: search();
back();
break;
case 4: del();
back();
break;
case 5:ghxg();
back();
break;
case 6:reserve();
back();
break;
default:
back();
break;
}
fflush(stdin);//?清空输入缓冲区,通常是为了确保不影响后面的数据读取
getchar();
system("cls");//清屏
}
}
int dq(struct worker wo[])//怎么初始化?打开文件出现乱码。这个不肯定,可能是二进制文件,而你是用文本文档的方式打开的
{
FILE *fp=NULL;
int i=0;
fp=fopen("C://worker.dat","rb");
while(fread(&wo[i],sizeof(struct worker),1,fp))//?从woker.dat文件读取数据到结构体数组wo[], 一次读取一个工人的全部数据
i++;
fclose(fp);
return i;
}
void show() //程序主界面函数
{
printf("\n");
printf("\t****************职工工资管理系统****************\n\n");

printf("\t***************[1] 添加职工信息*****************\n");

printf("\t***************[2] 查看职工信息*****************\n");

printf("\t***************[3] 查找职工信息*****************\n");

printf("\t***************{4] 删除职工信息*****************\n");<br> <br> printf("\t***************[5] 修改职工信息*****************\n");<br> <br> printf("\t***************[6] 保 存 数 据*****************\n");<br> <br> printf("\t***************[7] 作 者 信 息*****************\n");<br> <br> printf("\t***************[0] 退 出 系 统*****************\n\n");<br>}
void bc(struct worker *wo)
{
FILE *fp=NULL;
fp=fopen("C://worker.dat","ab+");
fwrite(wo,sizeof(struct worker),1,fp);
fclose(fp);
}
//添加职工信息
void add()
{
int numberTemp=0;
int i=0;
struct worker temp;
printf("请输入要添加职工个数:");
scanf("%d",&numberTemp);
for(i=0;i<numberTemp;i++)
{
printf("输入第%d个职工信息\n",i+1);
printf("姓名:");
scanf("%s",temp.name);
printf("职工编号:");
scanf("%s",temp.ID);
printf("性别:");
scanf("%s",temp.sex);
printf("出生日期:");
scanf("%d",&temp.birth);
printf("电话:");
scanf("%d",&temp.tel);
printf("学历:");
scanf("%s",&temp.ec);
printf("住址:");
scanf("%s",&temp.addr);
printf("职称:");
scanf("%s",&temp.cheng);
wo[Number++]=temp; //写入到数组
bc(&temp); //写入到文件
}
printf("添加成功\n");
}
//查看职工信息
void see()
{
int i=0;
printf("以下是全部职工\n");
//printf("姓名\n职工编号\n性别\n出生日期\n电话\n学历\n住址\n职称\n");
while(i<Number)
{
printf("姓名;%s\n职工编号:%s\n性别:%s\n出生日期:%d\n电话:%d\n学历:%s\n住址:%s\n职称:%s\n",wo[i].name,wo[i].ID,wo[i].sex,wo[i].birth,wo[i].tel,wo[i].ec,wo[i].cheng);
i++;
}
}
//查找职工信息
void search()
{
int n=0;
printf("1 按姓名查找\n");
printf("2 按职工编号查找\n");
scanf("%d",&n);
switch(n)
{
case 1: xmcz();
break;
case 2: ghcz();
break;
default: printf("输入错误!\n");
break;
}
}
void xmcz()//按姓名查找
{
char name[30];
int i=0;
printf("请输入要查找职工姓名:");
scanf("%s",name);
system("cls");
for (i=0;i<Number;i++)
{
if (strcmp(name,wo[i].name)==0)
{
printf("姓名;%s\n职工编号:%s\n性别:%s\n出生日期:%d\n电话:%d\n学历:%s\n住址:%s\n职称:%s\n",wo[i].name,wo[i].ID,wo[i].sex,wo[i].birth,wo[i].tel,wo[i].ec,wo[i].cheng);
i++;
}
}
}
void ghcz()//按职工编号查找
{
char id[10];
int i=0;
printf("请输入要查找职工职工编号:");
scanf("%s",id);
system("cls");
for (i=0;i<Number;i++)
{
if (strcmp(id,wo[i].ID)==0)
{
printf("姓名;%s\n职工编号:%s\n性别:%s\n出生日期:%d\n电话:%d\n学历:%s\n住址:%s\n职称:%s\n",wo[i].name,wo[i].ID,wo[i].sex,wo[i].birth,wo[i].tel,wo[i].ec,wo[i].cheng);
i++;
}
}
}
//删除职工信息
void del()

{
FILE *fp=NULL;
char id[60];
int i=0;
int j=0;
printf("请输入要删除的职工职工编号:");
scanf("%s",id);
for(i=0;i<Number;i++)
{
if (strcmp(id,wo[i].ID)==0)
{
for (j=i;j<Number-1;j++)
{
wo[j]=wo[j+1];
}
Number--;
}
}
//将剩余数据写入文件 擦除以前的数据
fp=fopen("C://worker.dat","wb");
for (i=0;i<Number;i++)
{
fwrite(&wo[i],sizeof(struct worker),1,fp);
}
fclose(fp);
printf("删除成功;\n");
}
//修改职工信息
void ghxg()//按职工编号修改
{
FILE *fp=NULL;
char id[30];
int i=0;
printf("请输入要修改的职工职工编号:");
scanf("%s",id);
for (i=0;i<Number;i++)
{
if (strcmp(id,wo[i].ID));
else
break;
}
printf("姓名;%s\n职工编号:%s\n性别:%s\n出生日期:%d\n电话:%d\n学历:%s\n住址:%s\n职称:%s\n",wo[i].name,wo[i].ID,wo[i].sex,wo[i].birth,wo[i].tel,wo[i].ec,wo[i].cheng);
i++;
printf("请重新输入该职工信息");
printf("职称:");
scanf("%s",wo[i].cheng);
printf("姓名");
scanf("%s",wo[i].name);
printf("性别");
scanf("%s",wo[i].sex);
printf("职工编号");
scanf("%s",wo[i].ID);
printf("出生日期");
scanf("%d",&wo[i].birth);
printf("电话");
scanf("%d",&wo[i].tel);
printf("学历");
scanf("%s",wo[i].ec);
printf("住址");
scanf("%s",wo[i].addr);

fp=fopen("C://worker.dat","wb");
for (i=0;i<Number;i++)
{
fwrite(&wo[i],sizeof(struct worker),1,fp);
}
fclose(fp);
printf("\t=======>修改成功\n");
}
//保存数据

㈤ 用C语言编写一个通讯录管理系统

C语言编写一个通讯录管理系统的源代码如下:

#include<stdio.h>

#include<string.h>

#include<stdlib.h>

/*定义保存通迅录的信息*/

structfriends

{

charname[20];/*名字*/

charprovince[20];/*省份*/

charcity[20];/*所在城市*/

charnation[20];/*民族*/

charsex[2];/*性别M/F*/

intage;/*年龄*/

}

(5)通讯录管理系统c语言扩展阅读

1、在C++中应该使用inline内连函数替代宏调用,这样既可达到宏调用的目的,又避免了宏调用的弊端。

2、在C语言两个函数的名称不能相同,否则会导致编译错误。在C++中,函数名相同而参数不同的两个函数被解释为重载。

3、在大型程序中,使函数名易于管理和使用,不必绞尽脑汁地去处理函数名。

热点内容
华为的云存储是免费的吗 发布:2025-03-06 11:58:50 浏览:407
c语言中关系运算符 发布:2025-03-06 11:58:01 浏览:265
lsw端口配置错误怎么更改 发布:2025-03-06 11:57:16 浏览:284
建设银行手机银行密码在哪里修改 发布:2025-03-06 11:55:14 浏览:356
气瓶如何存储 发布:2025-03-06 11:51:28 浏览:554
爱奇艺会员怎么改密码 发布:2025-03-06 11:33:44 浏览:61
firefox不缓存 发布:2025-03-06 11:33:43 浏览:467
淘宝密码如何破解 发布:2025-03-06 11:32:56 浏览:594
sqlservereclipse 发布:2025-03-06 11:25:29 浏览:706
linux存放文件 发布:2025-03-06 11:24:47 浏览:447