通讯录管理系统带生日提醒和模拟打电话计费.docx

上传人:b****6 文档编号:5380180 上传时间:2022-12-15 格式:DOCX 页数:21 大小:19KB
下载 相关 举报
通讯录管理系统带生日提醒和模拟打电话计费.docx_第1页
第1页 / 共21页
通讯录管理系统带生日提醒和模拟打电话计费.docx_第2页
第2页 / 共21页
通讯录管理系统带生日提醒和模拟打电话计费.docx_第3页
第3页 / 共21页
通讯录管理系统带生日提醒和模拟打电话计费.docx_第4页
第4页 / 共21页
通讯录管理系统带生日提醒和模拟打电话计费.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

通讯录管理系统带生日提醒和模拟打电话计费.docx

《通讯录管理系统带生日提醒和模拟打电话计费.docx》由会员分享,可在线阅读,更多相关《通讯录管理系统带生日提醒和模拟打电话计费.docx(21页珍藏版)》请在冰豆网上搜索。

通讯录管理系统带生日提醒和模拟打电话计费.docx

通讯录管理系统带生日提醒和模拟打电话计费

通讯录管理系统带生日提醒和模拟打电话计费

以下为源代码,提示,运行前先在E盘建立文本文档count和delete,然后可以直接复制代码到vc++6.0运行,模拟电话是一个单独的程序,把编译出的程序,就是那个exe的文件移动到E盘和以上两个文档相同的位置。

#include

#include

#include

#include

#definecount20

typedefstructBirthday

{

intday;

intmonth;

intyear;

}Birthday;

typedefstructStudent

{

charname[10];

charsex[5];

Birthdaydate;

charphone[40];

charemail[10];

charaddress[10];

charothers[10];

}stud;

FILE*fp;

FILE*fp2;

FILE*fp3;

intn=0;

inti=0;

intq=0;

studs[count];

voidmenu();

voidWRITE();

voidwrite();

voidREAD();

voidread();

voiddisplay(studs);

voidAddinfo();

voidChangeinfo();

voidDelinfo();

voidConsult();

voidRemind();

voidmain()

{

Remind();

menu();

}

voidmenu()

{

intchoice;

intsign=0;

do

{

printf("\n#############################欢迎使用#############################\n");

printf("\n1>>>>>>>>>>>>>>>>>>添加信息<<<<<<<<<<<<<<<<<<<<<");

printf("\n2>>>>>>>>>>>>>>>>>>修改信息<<<<<<<<<<<<<<<<<<<<<");

printf("\n3>>>>>>>>>>>>>>>>>>删除信息<<<<<<<<<<<<<<<<<<<<<");

printf("\n4>>>>>>>>>>>>>>>>>>查询信息<<<<<<<<<<<<<<<<<<<<<");

printf("\n5>>>>>>>>>>>>>>>>>>退出系统<<<<<<<<<<<<<<<<<<<<<");

printf("\n6>>>>>>>>>>>>>>>>>>模拟电话计费系统<<<<<<<<<<<<<<<<<<<<<");

printf("\n\n请输入您的选择[1~6]:

\n");

scanf("%d",&choice);

switch(choice)

{

case1:

Addinfo();

sign=1;

break;

case2:

Changeinfo();

sign=1;

break;

case3:

Delinfo();

sign=1;

break;

case4:

Consult();

sign=1;

break;

case5:

sign=0;

case6:

system("E:

\\mndh.exe");

sign=1;

break;

default:

printf("\n请重新选择!

!

!

");

}

}while(sign);

system("cls");

printf("\n\n\n\n\n\n◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆");

printf("\n\n感谢你使用通信录管理系统!

!

!

!

!

!

\n\n\n");

printf("◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆\n\n");

getchar();

getchar();

}

voidWRITE()

{

FILE*fp2;

if((fp2=fopen("E:

\\count.txt","w"))==NULL)

{

printf("无法创建文件!

\n");

getchar();

return;

}

fprintf(fp2,"%d",n);

fclose(fp2);

}

voidwrite()

{

FILE*fp3;

if((fp3=fopen("E:

\\delete.txt","w"))==NULL)

{

printf("无法创建文件!

\n");

getchar();

return;

}

fprintf(fp3,"%d",q);

fclose(fp3);

}

voidread()

{

FILE*fp3;

if((fp3=fopen("E:

\\delete.txt","rb+"))==NULL)

{

printf("无法打开文件!

\n\n");

getchar();

return;

}

fscanf(fp3,"%d",&q);

fclose(fp3);

}

voidREAD()

{

if((fp2=fopen("E:

\\count.txt","rb+"))==NULL)

{

printf("无法打开文件!

\n\n");

getchar();

return;

}

fscanf(fp2,"%d",&n);

fclose(fp2);

}

voiddisplay(studs)

{

printf("$$$$$$$$$$$$$$$$$$$通信录信息$$$$$$$$$$$$$$$$$$$$");

printf("\n姓名:

%s",s.name);

printf("\n性别:

%s",s.sex);

printf("\n生日:

%d%d%d",s.date.year,s.date.month,s.date.day);

printf("\n电话:

%s",s.phone);

printf("\n邮箱地址:

%s",s.email);

printf("\n住址:

%s",s.address);

printf("\n备注:

%s",s.others);

}

voidAddinfo()

{

charc;

READ();

read();

printf("您已有联系人:

");

fscanf(fp2,"%d",&n);

fprintf(stdout,"%d",n);

printf("\n");

if(!

fp2)

{

printf("打开文件时出错!

!

!

");

exit

(1);

}

printf("\n欢迎使用通信录管理系统!

!

!

");

do

{

fp=fopen("E:

\\stud.dat","ab+");

getchar();

printf("\n请输入姓名:

");

gets(s[i].name);

printf("\n请输入性别(male/fmale):

");

gets(s[i].sex);

printf("\n请输入生日(年/月/日):

");

scanf("%d%d%d",&s[i].date.year,&s[i].date.month,&s[i].date.day);

getchar();

printf("\n请输入电话:

");

gets(s[i].phone);

printf("\n请输入邮箱地址:

");

gets(s[i].email);

printf("\n请输入居住地:

");

gets(s[i].address);

printf("\n请输入备注(friend/common):

");

gets(s[i].others);

fwrite(&s[i],sizeof(s[i]),1,fp);

fclose(fp);

n++;

i++;

printf("\n是否继续新建('Y'or'N')?

\n");

scanf("%c",&c);

}while(c=='Y'||c=='y');

WRITE();

printf("\n添加成功!

!

!

\n");

system("cls");

}

voidChangeinfo()

{

inth=0,j=1,t,choice,sign=0;

FILE*fp;

charnum[20];

charname[20];

printf("\t1、按号码查找\n");

printf("\t2、按姓名查找\n");

printf("请选择...........\n");

scanf("%d",&t);

switch(t)

{

case1:

while(j==1)

{

READ();

fp=fopen("E:

\\stud.dat","rb+");

printf("请输入想查找的电话号码:

\n");

scanf("%s",num);

for(h=0;h

{

fread(&s[h],sizeof(s[h]),1,fp);

if(!

strcmp(num,s[h].phone))

{

printf("\n您想修改的内容:

1.姓名2.号码3.生日4.居住地5.邮箱地址6.备注\n");

scanf("%d",&choice);

switch(choice)

{

case1:

sign=1;

printf("请输入修改后的姓名:

\n");

getchar();

gets(s[h].name);

fseek(fp,-sizeof(s[h]),1);

fwrite(&s[h],sizeof(s[h]),1,fp);

fclose(fp);

break;

case2:

sign=1;

printf("请输入修改后的号码:

\n");

getchar();

gets(s[h].phone);

fseek(fp,-sizeof(s[h]),1);

fwrite(&s[h],sizeof(s[h]),1,fp);

fclose(fp);

break;

case3:

printf("请输入修改后的生日:

\n");

sign=1;

getchar();

scanf("%d%d%d",&s[h].date.year,&s[h].date.month,&s[h].date.day);

fseek(fp,-sizeof(s[h]),1);

fwrite(&s[h],sizeof(s[h]),1,fp);

fclose(fp);

break;

case4:

printf("请输入修改后的居住地:

\n");

sign=1;

getchar();

gets(s[h].address);

fseek(fp,-sizeof(s[h]),1);

fwrite(&s[h],sizeof(s[h]),1,fp);

fclose(fp);

break;

case5:

printf("请输入修改后的邮箱:

\n");

sign=1;

getchar();

gets(s[h].email);

fseek(fp,-sizeof(s[h]),1);

fwrite(&s[h],sizeof(s[h]),1,fp);

fclose(fp);

break;

case6:

printf("请输入修改后的备注:

\n");

sign=1;

getchar();

gets(s[h].others);

fseek(fp,-sizeof(s[h]),1);

fwrite(&s[h],sizeof(s[h]),1,fp);

fclose(fp);

break;

}

printf("\n*****************修改后的通讯录*****************\n");

display(s[h]);

j=0;

break;

}

fclose(fp);

}

if(strcmp(num,s[h].phone)&&sign==0)

{

printf("\n你输入的号码有误!

!

!

\n请重新输入\n");

j=1;

}

}

case2:

while(j==1)

{

READ();

printf("请输入想查找的姓名:

\n");

scanf("%s",name);

fp=fopen("E:

\\stud.dat","rb");

for(h=0;h

{

fread(&s[h],sizeof(s[h]),1,fp);

if(!

strcmp(name,s[h].name))

{

printf("\n您想修改的内容:

1.姓名2.号码3.生日4.居住地5.邮箱地址6.备注\n");

scanf("%d",&choice);

switch(choice)

{

case1:

sign=1;

printf("请输入修改后的姓名:

\n");

getchar();

gets(s[h].name);

fseek(fp,-sizeof(s[h]),1);

fwrite(&s[h],sizeof(s[h]),1,fp);

fclose(fp);

break;

case2:

sign=1;

printf("请输入修改后的号码:

\n");

getchar();

gets(s[h].phone);

fseek(fp,-sizeof(s[h]),1);

fwrite(&s[h],sizeof(s[h]),1,fp);

fclose(fp);

break;

case3:

printf("请输入修改后的生日:

\n");

sign=1;

getchar();

scanf("%d%d%d",&s[h].date.year,&s[h].date.month,&s[h].date.day);

fseek(fp,-sizeof(s[h]),1);

fwrite(&s[h],sizeof(s[h]),1,fp);

fclose(fp);

break;

case4:

printf("请输入修改后的居住地:

\n");

sign=1;

getchar();

gets(s[h].address);

fseek(fp,-sizeof(s[h]),1);

fwrite(&s[h],sizeof(s[h]),1,fp);

fclose(fp);

break;

case5:

printf("请输入修改后的邮箱:

\n");

sign=1;

getchar();

gets(s[h].email);

fseek(fp,-sizeof(s[h]),1);

fwrite(&s[h],sizeof(s[h]),1,fp);

fclose(fp);

break;

case6:

printf("请输入修改后的备注:

\n");

sign=1;

getchar();

gets(s[h].others);

fseek(fp,-sizeof(s[h]),1);

fwrite(&s[h],sizeof(s[h]),1,fp);

fclose(fp);

break;

}

printf("*****************修改后的通讯录*****************\n");

display(s[h]);

j=0;

break;

}

}

if(strcmp(name,s[h].name)&&sign==0)

{

printf("你输入的姓名有误!

!

!

\n请重新输入\n");

j=1;

}

h=0;

}

fclose(fp);

}

menu();

}

voidDelinfo()

{

intj=1,h=0,k,sign=0;

charname[20];

READ();

read();

FILE*fp;

fp=fopen("E:

\\stud.dat","rb");

printf("请输入想删除的姓名:

\n");

while(j==1)

{

FILE*fp;

scanf("%s",name);

fp=fopen("E:

\\stud.dat","rb");

while(!

feof(fp))

{

fread(&s[h],sizeof(s[h]),1,fp);

if(!

strcmp(name,s[h].name))

{

for(k=h;k

{

fseek(fp,-sizeof(s[h]),1);

fwrite(&s[h+1],sizeof(s[h]),1,fp);

}

n--;

WRITE();

q++;

write();

j=0;

sign=1;

break;

}

}

if(strcmp(name,s[h].name)&&sign==0)

{

printf("你输入的姓名有误!

!

!

\n请重新输入\n");

j=1;

}

h=0;

}

fclose(fp);

printf("删除成功!

!

!

!

!

!

!

");

}

voidConsult()

{

intnum,j=1,h=0,con=1,sign=0;

charch;

charname[20];

charaddress[20];

charsex[2];

charphonecall[40];

FILE*fp;

READ();

if(n==0)

{

printf("\n您目前还没有联系人!

!

!

\n");

menu();

return;

}

fp=fopen("E:

\\stud.dat","rb");

do

{

j=1;

sign=0;

printf("\t1、按号码查找\n");

printf("\t2、按姓名查找\n");

printf("\t3、按地址查找\n");

printf("\t4、按性别查找\n");

printf("请选择...........\n");

scanf("%d",&num);

switch(num)

{

case1:

while(j==1)

{

fp=fopen("E:

\\stud.dat","rb");

printf("请输入想查找的电话号码:

\n");

scanf("%s",phonecall);

for(;h

{

fread(&s[h],sizeof(s[h]),1,fp);

if(!

strcmp(phonecall,s[h].phone))

{

display(s[h]);

j=0;

sign=1;

h=0;

}

}

if(strcmp(phonecall,s[h].phone)&&sign==0)

{

printf("\n你输入的号码有误!

!

!

\n请重新输入\n");

j=1;

h=0;

}

}

fclose(fp);

printf("\n您想继续查找吗?

(YORN)\n");

getchar();

scanf("%c",&ch);

if(ch=='Y'||ch=='y')

con=1;

else

con=0;

break;

case2:

while(j==1)

{

fp=fopen("E:

\\stud.dat","rb+")

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1