求大家帮帮忙:用c语言编写: 要求编写一个管理QQ会员信息的小项目:

求大家帮帮忙:用c语言编写:要求编写一个管理QQ会员信息的小项目:1、每个QQ会员的信息包含会员名称,性别,年龄,Q币余额和会员期限这五项信息。2、编写添加QQ会员的函数... 求大家帮帮忙:用c语言编写: 要求编写一个管理QQ会员信息的小项目:
1、每个QQ会员的信息包含会员名称,性别,年龄,Q币余额和会员期限这五项信息。
2、编写添加QQ会员的函数。
3、编写查看会员信息的函数,要求能实现按照会员名称查找的功能。
4、打印所有会员信息的函数。
展开
 我来答
百度网友c78508f
2011-03-17 · TA获得超过112个赞
知道小有建树答主
回答量:200
采纳率:0%
帮助的人:167万
展开全部
我写过类似的东西,你自己修改下吧
#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<stdlib.h>
struct persion
{
char name[10];
char tep[20];
}student;
int main()
{
int chose;

struct persion *imf_p=&student;
void input(struct persion *p);
void output(struct persion *p);
void change(struct persion *p);
void del(struct persion *p);
void add(struct persion *p);
void end();
printf("\t\t\t\t\t通讯录\n\n");

do
{
printf("\n请正确选择操作:\n");
printf("\n1.全部重输\n2.查看\n3.修改\n4.删除\n5.添加\n6.退出\n\n请选择:");
scanf("%d",&chose);
switch (chose)
{
case 1:
input(imf_p);
break;
case 2:
output(imf_p);
break;
case 3:
change(imf_p);
break;
case 4:
del(imf_p);
break;
case 5:
add(imf_p);
break;
case 6:
end();
}
}
while (1);
}

void input(struct persion *p) //输入
{

FILE *fp;

fp=fopen("imformation.dat","wb");
printf("请输入名字和电话号码:\n");
printf("\n在姓名处输入<-1>结束!\n\n");
while (1)
{
printf("姓名:");
scanf("%s",p->name);
if (!strcmp(p->name,"-1"))break;
printf("电话号码:");
scanf("%s",p->tep);
fwrite(p,sizeof(struct persion),1,fp);
}

fclose(fp);
printf("输入完成!\n");
system("pause");
system("cls");
}

void output(struct persion *p) //查看
{

FILE*fp;
fp=fopen("imformation.dat","rb");
while (1)
{
fread(p,sizeof(struct persion),1,fp);
if (feof(fp))break;
printf("姓名:%s\n",p->name);
printf("电话:%s\n",p->tep);
}
fclose(fp);
system("pause");
system("cls");
}

void change(struct persion *p) //修改
{
int i=0;
char name_change[10],tep_change[20];
FILE*fp1,*fp2;
printf("请输入要修改的人名:");
scanf("%s",name_change);

fp1=fopen("imformation.dat","rb+");
fp2=fopen("temp","wb+");
while (feof(fp1)==0)
{

fread(p,sizeof(struct persion),1,fp1);
if (!strcmp(p->name,name_change))
{
if (feof(fp1))break;
i=1;
printf("请输入新的号码:");
scanf("%s",tep_change);
strcpy(p->tep,tep_change);
}
if (feof(fp1)==0)
fwrite(p,sizeof(struct persion),1,fp2);
}
fclose(fp2);
fclose(fp1);
remove("imformation.dat");
rename("temp","imformation.dat");
if (i==1)
printf("已成功修改!\n");
if (i==0)
printf("没有搜索到文件!\n");
system("pause");
system("cls");
}

void del(struct persion *p) //删除
{
int i=0;
char name_change[10];
FILE*fp1,*fp2;
printf("请输入要删除的人名:");
scanf("%s",name_change);

fp1=fopen("imformation.dat","rb+");
fp2=fopen("temp","wb+");
while (!feof(fp1))
{
fread(p,sizeof(struct persion),1,fp1);

if (!strcmp(p->name,name_change))
{
i=1;
continue;
}

if (!feof(fp1))
fwrite(p,sizeof(struct persion),1,fp2);
}
fclose(fp2);
fclose(fp1);
remove("imformation.dat");
rename("temp","imformation.dat");
if (i==1)
printf("已完成删除操作!\n");
if (i==0)
printf("没有搜索到名字!\n");
system("pause");
system("cls");
}

void add(struct persion *p) //增加
{
FILE *fp1,*fp2;

fp1=fopen("imformation.dat","rb+");
fp2=fopen("temp","wb+");
while (!feof(fp1))
{
fread(p,sizeof(struct persion),1,fp1);
if (!feof(fp1))
fwrite(p,sizeof(struct persion),1,fp2);
}

printf("请输入要增加的名字和电话号码:\n");
printf("\n在姓名处输入<-1>结束!\n\n");

while (1)
{
printf("姓名:");
scanf("%s",p->name);
if (!strcmp(p->name,"-1"))break;
printf("电话号码:");
scanf("%s",p->tep);
fwrite(p,sizeof(struct persion),1,fp2);
}

fclose(fp1);
fclose(fp2);
remove("imformation.dat");
rename("temp","imformation.dat");
printf("输入完成!\n");
system("pause");
system("cls");
}

void end()
{
exit(0);
}
追问
谢谢~!~!~!
笑一笑年年少
2011-03-17 · TA获得超过522个赞
知道小有建树答主
回答量:969
采纳率:0%
帮助的人:247万
展开全部
你好。有费用支持吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式