C语言个人财务小管家课程设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

个人小管家应用系统给家庭提供了一个管理个人财务的平台,主要用于对家庭成员收入、支出进行添加、查询、删除、修改以及打印的操作,使得家庭财务收支状况一目了然。

主要功能包括:

(1)主菜单。主要包括收入管理、支出管理和退出;

(2)添加收入记录;

(3)查询收入记录;

(4)删除收入记录;

(5)修改收入记录;

(6)打印收入记录;

(7)添加支出记录;

(8)查询支出记录;

(9)删除支出记录;

(10)修改支出记录;

(11)打印支出记录;

(12)退出系统。

#include

#include

#include

#include

#include

#define SIZE 100

typedef struct

{

long no; /*每一组输入的编号*/

long Number; /*家庭成员编号*/

char Name[20]; /*家庭成员姓名*/

float in; /*家庭成员收入*/

char intime[10]; /*收入时间*/

float out; /*家庭成员支出*/

char outtime[10]; /*支出时间*/

float sum; /*总计*/

}money;

//--------------------------------------------------------------

void dayinshou()

{ FILE *fp;

money Tm;

char Da[40],next;

printf("请输入你要查询的文件名\n");

gets(Da);

fp=fopen(Da,"rb"); /*只读方式打开二进制文件*/

if (fp==NULL)

{

printf("\n打开文件%s失败!按任意键结束!\n",Da);

exit(0);

}

printf("文件全部内容如下:\n\n");

while(fread(&Tm,sizeof(money),1,fp)!=(int)NULL) /*读取文件内容,并判断是否成功*/ { printf("###############################################\n");

printf("\n成员编号:%ld\n",Tm.Number);

printf("成员姓名:%s\n",);

printf("成员收入:%f元\n",Tm.in);

printf("收入时间:%s\n",Tm.intime);

printf("###############################################\n");

printf("\n\n");

}

fclose(fp);

next=getche();

}

//--------------------------------------------------------------------------

void dayinzhi()

{ FILE *fp;

money Tm;

char Da[40],next;

printf("请输入你要查询的文件名\n");

gets(Da);

fp=fopen(Da,"rb"); /*只读方式打开二进制文件*/

if (fp==NULL)

{

printf("\n打开文件%s失败!按任意键结束!\n",Da);

exit(0);

}

printf("文件全部内容如下:\n\n");

while(fread(&Tm,sizeof(money),1,fp)!=(int)NULL) /*读取文件内容,并判断是否成功*/ { printf("###############################################\n");

printf("\n成员编号:%ld\n",Tm.Number);

printf("成员姓名:%s\n",);

printf("成员支出:%f元\n",Tm.out);

printf("支出时间:%s\n",Tm.outtime);

printf("###############################################\n");

printf("\n\n");

}

fclose(fp);

next=getche();

}

//-------------------------------------------------------------------------------

void chaxunzhi() /*按编号查询家庭成员财务支信息记录*/

{

int result;/* "result=1"说明查询成功,反之查找失败*/

money Tm; /*定义进行操作时的临时结构体变量*/

long bianhao,before=0;

char Da[40],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查找成功!\n\n您要查找的家庭成员的信息如下:\n");}

printf("######################################\n");

printf("\n成员编号:%ld\n",Tm.Number);

printf("成员姓名:%s\n",);

printf("成员支出:%f 元\n",Tm.out);

printf("支出时间:%s\n",Tm.outtime);

相关文档
最新文档