资源预览内容
第1页 / 共41页
第2页 / 共41页
第3页 / 共41页
第4页 / 共41页
第5页 / 共41页
第6页 / 共41页
第7页 / 共41页
第8页 / 共41页
第9页 / 共41页
第10页 / 共41页
亲,该文档总共41页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
个人小管家应用系统给家庭提供了一个管理个人财务的平台,主要用于对家庭成员收入、支出进行添加、查询、删除、修改以及打印的操作,使得家庭财务收支状况一目了然。主要功能包括:(1) 主菜单。主要包括收入管理、支出管理和退出;(2) 添加收入记录;(3) 查询收入记录;(4) 删除收入记录;(5) 修改收入记录;(6) 打印收入记录;(7) 添加支出记录;(8) 查询支出记录;(9) 删除支出记录;(10) 修改支出记录;(11) 打印支出记录;(12) 退出系统。#include#include#include#include#include#define SIZE 100typedef structlong no; /*每一组输入的编号*/ long Number; /*家庭成员编号*/ char Name20; /*家庭成员姓名*/ float in; /*家庭成员收入*/ char intime10; /*收入时间*/ float out; /*家庭成员支出*/char outtime10; /*支出时间*/float sum; /*总计*/money;/-void dayinshou() FILE *fp; money Tm; char Da40,next;printf(请输入你要查询的文件名n);gets(Da);fp=fopen(Da,rb); /*只读方式打开二进制文件*/ if (fp=NULL) printf(n打开文件%s失败!按任意键结束!n,Da); exit(0); printf(文件全部内容如下:nn); while(fread(&Tm,sizeof(money),1,fp)!=(int)NULL) /*读取文件内容,并判断是否成功*/ printf(#n); printf(n成员编号:%ldn,Tm.Number); printf(成员姓名:%sn,Tm.Name);printf(成员收入:%f元n,Tm.in);printf(收入时间:%sn,Tm.intime);printf(#n);printf(nn); fclose(fp);next=getche(); /-void dayinzhi() FILE *fp; money Tm; char Da40,next;printf(请输入你要查询的文件名n);gets(Da);fp=fopen(Da,rb); /*只读方式打开二进制文件*/ if (fp=NULL) printf(n打开文件%s失败!按任意键结束!n,Da); exit(0); printf(文件全部内容如下:nn); while(fread(&Tm,sizeof(money),1,fp)!=(int)NULL) /*读取文件内容,并判断是否成功*/ printf(#n); printf(n成员编号:%ldn,Tm.Number); printf(成员姓名:%sn,Tm.Name);printf(成员支出:%f元n,Tm.out);printf(支出时间:%sn,Tm.outtime);printf(#n);printf(nn); fclose(fp);next=getche(); /-void chaxunzhi() /*按编号查询家庭成员财务支信息记录*/ int result;/* result=1说明查询成功,反之查找失败 */ money Tm; /*定义进行操作时的临时结构体变量*/ long bianhao,before=0; char Da40,next; /*Da存储家庭成员财务信息的文件名,next为是否进行下一次操作的选项*/ FILE *fp=NULL; /*提示用户输入要查询的文件名*/ printf(n 请输入存储数据的文件名,按回车键结束。n); gets(Da); /*提示用户输入要查询的家庭成员编号*/begin: result=0;system(cls); printf(请输入要查询的家庭成员编号,按回车键结束。n); scanf(%ld,&bianhao); getchar(); fp=fopen(Da,rb); /*只读方式打开文件*/ if (fp=NULL) printf(n打开文件 %s 失败!按任意键结束!n,Da); exit(0); /*循环查找和输入编号相匹配的家庭成员财务收支信息记录,如果查找到,则输出结果*/ while(feof(fp)=0) /*没有读到文件的结尾*/ if(fread(&Tm,sizeof(money),1,fp)!=(int)NULL) /*判断是否从文件中成功读取数据*/ if (Tm.Number=bianhao) /*文件内容编号和输入编号一致*/ if(before!=Tm.Number)system(cls);printf(n查找成功!nn您要查找的家庭成员的信息如下:n);printf(#n); printf(n成员编号:%ldn,Tm.Number);printf(成员姓名:%sn,Tm.Name);printf(成员支出:%f 元n,Tm.out);printf(支出时间:%sn,Tm.outtime);printf(#n); result=1;/* result=1说明找到了该家庭成员的对应信息.*/before=Tm.Number; fclose(fp); if (result=0) system(cls); printf(对不起!n文件中没有该家庭成员所对应的信息。n); printf(n继续?(是: y/Y,否:n/N)n); next=getche(); putchar(n);system(cls); if(next=y|next=Y) goto begin;/-void chaxunshou() /*按编号查询家庭成员财务收支信息记录*/ int result;/* result=1说明查询成功,反之查找失败 */ money Tm; /*定义进行操作时的临时结构体变量*/ long bianhao,before=0; char Da40,next; /*Da存储家庭成员财务信息的文件名,next为是否进行下一次操作的选项*/ FILE *fp=NULL; /*提示用户输入要查询的文件名*/ printf(n 请输入存储数据的文件名,按回车键结束。n); gets(Da); /*提示用户输入要查询的家庭成员编号*/begin: result=0;system(cls); printf(请输入要查询的家庭成员编号,按回车键结束。n); scanf(%ld,&bianhao); getchar(); fp=fopen(Da,rb); /*只读方式打开文件*/ if (fp=NULL) printf(n打开文件 %s 失败!按任意键结束!n,Da); exit(0); /*循环查找和输入编号相匹配的家庭成员财务收支信息记录,如果查找到,则输出结果*/ while(feof(fp)=0) /*没有读到文件的结尾*/ if(fread(&Tm,sizeof(money),1,fp)!=(int)NULL) /*判断是否从文件中成功读取数据*/ if (Tm.Number=bianhao) /*文件内容编号和输入编号一致*/ if(before!=Tm.Number)system(cls);printf(n查找成功!nn您要查找的家庭成员的信息如下:n);printf(#n); printf(
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号