个人记账系统课程设计报告

个人记账系统课程设计报告
个人记账系统课程设计报告

软件工程学年设计

题目:个人记账系统

院系:计算机科学与技术

班级:计算机班

学号:

姓名:

指导教师:

2011 年 7 月 15 日

摘要

本报告介绍了一个运用C语言知识和DEV C++创建的用于个人财务情况管理的个人记账系统。在该系统中创建了包含增加、删除、修改、查找、插入、浏览、统计的功能总列表,创建序号链接各功能列表,输入收入支出信息情况,增加信息,删除信息,,创建合计排序浏览用户可从总体上浏览个人财务信息情况。

关键词:C语言,DEV c++,个人记账系统

目录

第一章绪论 (4)

1.1 开发背景及意义 (4)

1.2 相关技术背景 (5)

1.3 开发及运行环境 (5)

第二章需求分析........................................ 错误!未定义书签。

2.1 设计目标 (6)

2.2 功能需求 (6)

2.3 可行性分析 (6)

第三章总体设计........................................ 错误!未定义书签。

3.1 设计目标 (7)

3.2 系统结构设计 (7)

3.3 系统功能结构图 (7)

第四章详细设计........................................ 错误!未定义书签。

5.1 基本对象设计 (8)

5.2 系统主程序的设计与实现 (8)

5.3 用户登录功能的设计与实现............................ 错误!未定义书签。

5.4 流水账视图的设计与实现 (9)

5.5 消费结构视图的设计与实现............................ 错误!未定义书签。

5.6 流水账明细视图的设计与实现.......................... 错误!未定义书签。

5.7 账户设置功能的设计与实现............................ 错误!未定义书签。

5.8 消费趋势堆栈图的设计与实现.......................... 错误!未定义书签。

5.9 系统辅助功能的设计与实现............................ 错误!未定义书签。第六章软件测试........................................ 错误!未定义书签。

6.1 系统测试............................................ 错误!未定义书签。

6.2 性能测试............................................ 错误!未定义书签。

6.3 验收测试............................................ 错误!未定义书签。第七章总结............................................ 错误!未定义书签。参考文献................................................ 错误!未定义书签。

第一章绪论

1.1 开发背景及意义

个人理财在我国得到大众的认可和金融机构的重视是近几年的事情。人们对个人理财的重视程度,与我国市场经济制度不断完善、资本市场长足发展、金融产品的日趋丰富以及居民总体收入水平的逐年上升等等是分不开的。但是比起美、日等发达国家,我国人民对于个人理财的理解还处于初级阶段。

但是其实理财并不困难,并非非要依靠个人理财专业人士的建议才能身体力行。只要了解收支状况、设定财务目标、拟定策略、编列预算、执行预算到分析成果这六大步骤,便可以轻松的达成个人的财务管理。至于要如何预估收入掌握支出进而检讨改进则有赖于平日的财务记录,简单的说记账是理财的第一步。

最近越来越多的人具有了记账的习惯,在上班族、学生族既定收入稳定的情况下,采取“节流”的科学理财方式是非常实际的,也符合个人理财统筹的原则。家庭、个人的收入支出结构在日益发生变化,单纯地靠在本子上记录收入支出无法满足对于收入支出结构的统计分析,因此以个人用户为目标的记账软件应运而生。相应的各种面向家庭及个人的理财软件也越来越多。但是众多个人理财软件操作专业,对于个人用户来说功能过于强大,分析数据用语专业也不易理解。因此开发一个操作简便、统计结果直观并对个人用户理财有参考价值的记账软件无疑能为广大个人用户提供方便。

在盛行个人理财的美国,70%以上的家庭都拥有一套自己的理财软件,其中最具影响力的理财软件要数Intuit公司开发的Quiken和微软公司开发的Money 这两款软件。现在,Intuit公司已成为世界最大的理财软件与理财咨询公司,Quiken也成为全世界用户最多的家庭理财软件。欧美家庭平日的财务报表,预算,税务处理,银行账目的查询等等都借助软件的各项功能,使用理财软件帮助家庭打理日常的财务安排已经成为一件很平常的事。但由于金融体制上的巨大差异,在欧美国家使用的个人家庭理财软件却并没有登陆中国市场。

但是国内的个人理财服务却刚刚起步,各式各样的个人理财软件也如雨后春笋,数不胜数。至少有上百款的所谓个人理财软件,但实际上99%是个人写的业务小程序,功能比Excel方便一点而已,有的加一点报表功能,充其量叫记账软件。如果个人理财软件仅有告诉你“柴米油盐酱醋茶”这种流水账的功能,Excel 足够了。但真正做到功能强大,技术专业,市场有影响力的,而且形成规模的,国内只有区区两款,成都的财智和深圳的家财通。

总而言之,在不久的将来家庭使用理财软件也将成为国内家庭的必需品。能提供简单明了的功能及操作的记账软件更是被广泛需要。这种软件也会为提升人

们的生活质量发挥它最大的效用。

1.2 相关技术背景

C语言是国内外广泛使用的一种计算机语言,学会使用C语言进行程序设计是计算机工作者的一项基本功。对于我们大学生来说,学习这样一门“C程序设计教程”更是必要的。本课程设计“家庭财务管理系统”就是通过学习《C程序设计》采用Visual C++作为编译环境,是程序编译和运行的。本系统的总体思想基于结构化的程序设计。应用高级语言程序设计中的基本控制结构,如循环和选择,着重实现管理系统的增、删、改、查等典型的管理功能由于主要实现的是管理系统的增、删、改、查等典型功能。程序设计是一门实践性很强的课程,既要掌握概念,又要动手编译,还要上机调试运行,通过这一次的课程设计我们从实践中更进一步的学习和了解C语言,当然由于我们的技术水平有限,在这途中遇到很多问题,程序也未能做到很完美,望见谅!

1.3 开发及运行环境

开发工具:DEV c++

运行环境:WindowsXP/WindowsVista/Win7

第二章需求分析

需求分析是指理解用户需求,就软件功能与客户达成一致,估计软件风险和评估项目代价,最终形成开发计划的一个复杂过程。需求分析就是分析软件用户的需求是什么。如果投入大量的人力、物力、财力和时间开发出的软件却不被人需要,那么所有的投入都是徒劳。本章将详细阐述对于个人记账系统的需求分析。以使得本系统可以尽可能地满足大多数个人用户记录日常收支的需要。

2.1 设计目标

为了做出满足个人用户的需要的符合质量要求的系统,制定以下设计目标: 对于日常收入设parents,school,labor,others分类记录收入。

对于日常支出设clothes,food,house,travel,else分类记录

2.2 功能需求

为满足用户需要,要求本系统有以下功能:

记录日常收支情况的功能。

查找某天的收支情况的功能。

插入忘记的收支的功能。

显示账单的功能。

统计的功能。

2.3 可行性分析

本课题是基于DEVc++环境,实现记账系统的开发。为了使本设计更具可行性,本系统的设计严格按照软件工程的设计思想要求,首先对系统进行了可行性分析。为了使分析更为清晰、完整,设计本系统的时,将可行性分析分为经济可行性、操作可行性、技术可行性三个方面进行分析。

1.经济上可行性:DEVc++是免费开源的软件,使得开发成本大大下降。而且可重用性高,节省了二次开发的费用。资源利用率高,成本低。从成本效益角度考虑十分可行。

2.操作上的可行性:该设计的模块界面简洁,方便快捷,简单易学。即便电脑初学者也可以轻松的操作所有系统的功能。并不需要掌握繁杂的财务专业知识也可以对自己的日常收支有一个大体的把握。

3.技术上的可行性:该设计结合了软件工程和会计学两个专业的知识,通过相关技术的学习和钻研是对大学几年学习内容的很好的串联。在给定的时间一定能完成需求说明要求的功能,并且确保软件运行速度及性能均达到用户期望。

软件总体设计是把需求分析阶段得到的需求转变成符合成本和质量要求的、抽象的系统实现方案的过程。从需求分析到总体设计,是一个逐渐扩充模型的过程。系统总体设计确定实现系统的策略和目标系统的高层结构。确定设计中的类、关联、接口形式及实现操作的算法。符合传统面向对象设计的准则:模块化,抽象,信息隐藏,低耦合,高内聚。

3.1 设计目标

本系统为个人用户提供一个记录日常收支情况,并得到相应统计结果的平台,主要实现以下目标:

提供日常收支情况记录查看及修改的功能。

备份账目信息。

3.2 系统结构设计

个人记账系统面向的用户主要是个人用户,用户只要记录流水账信息便可经过测算得到相应的统计结果,结合实际调查的其他资料可以得出系统的主要功能和辅助功能,并进行主控界面及基本对象的设计。根据上述分析,结合用户的具体需求,确定系统主要包括四大功能,分别是流水账、统计报表。

3.3 系统功能结构图

具体系统结构如下图:

个人记账系统

新增流水账

流水账查找流水账

排序流水账

统计保存读取文件

软件详细设计是软件工程的重要阶段,软件详细设计细化了高层的体系结构设计,将软件结构中的主要部件划分为能独立编码、编译和测试的软件单元,并进行软件单元的设计,并最终将影响软件实现的成败。优秀的详细设计在提高编码质量、保证开发周期、节约开发成本等各方面都起着非常重要的作用,是一个软件项目成功的关键保证。本章将按照设计实现的顺序介绍各个单元的设计与实现情况。

4.1基本对象设计

按照面向对象的分析与设计方法的基本思想,“万物皆对象”,把“对象”作为解决问题的重心。根据个人记账系统的具体情况分析主要对象有流水账、统计数据等。

1.流水账对象

流水账对象代表用户所记录的每一笔账目。每一笔账目信息包括账目发生的年月日信息,账目所属的消费或收入的详细类别,账目名称和金额。

2.统计数据对象

本来其实统计数据对象可以不设立,因为全部的统计数据都可以通过计算得到。但是考虑到用户查询较为频繁,为了避免每次查询均要计算一次,特别设立了统计数据对象。实际上,用于保存计算结果的数据量比较小,牺牲了这些许的空间却能换来整个系统的高性能,这无疑是很值得的。统计数据对象包含了消费结构所需要的各项收支的统计计算结果。

4.2系统主程序的设计与实现

在设计系统主程序时,着重考虑项目的核心功能,并围绕核心功能进行设计。显然本项目的核心功能就是记账。用户需要很方便的进行记账活动,并且可以快速看到记账结果。经过反复考虑设计系统的主控界面如图5-1所示。

4.3流水账视图的设计与实现

1.输入数据创建链表

实现代码如下:

APtr creat()

{

APtr cPtr;

int num;

printf("输入的序号为0时代表输入记录结束\n");

printf("输入序号:");

scanf("%d",&num);

if (num==0)

return NULL;

else

{

cPtr=(APtr)malloc(sizeof(Account));

cPtr->num=num;

printf("输入日期,格式为****.**.** :");

scanf("%s",cPtr->date);

printf("输入in或out表示收入和支出:");

scanf("%s",cPtr->in_out);

printf("输入金额:");

scanf("%f",&cPtr->amount);

printf("输入门类,收入有parents、school、labor、others\n"

"支出有:clothes、food、house、travel、else:");

scanf("%s",cPtr->kind);

printf("输入余额:");

scanf("%f",&cPtr->remain);

cPtr->next=creat();

return cPtr;

}

2.显示账单

实现代码如下:

void print(APtr headPtr)

{

if(headPtr==NULL)

{printf("链表为空\n");

return;}

else

{

if (headPtr->next==NULL)

printf("%d\t%-10s\t%-5s\t\t%5.2f\t\t%-10s\t%5.2f\n",headPtr->num,

headPtr->date,headPtr->in_out,headPtr->amount,headPtr->kind,headPtr->remain);

else

{

printf("%d\t%-10s\t%-5s\t\t%5.2f\t\t%-10s\t%5.2f\n",headPtr->num,

headPtr->date,headPtr->in_out,headPtr->amount,headPtr->kind,headPtr->remain);

print(headPtr->next);

}

}

}

3.删除记录

实现代码如下:

APtr del(APtr headPtr)

{

APtr p1;

APtr p2;

int n,i;

char date[12];

if(headPtr==NULL)

{

printf("no list!");

return (headPtr);

}

printf("选择删除方式,输入序号:\n");

printf("1.按序号删除一条记录\n"

"2.按时间删除一条记录\n"

"3.删除全部记录\n");

scanf("%d",&i);

if(i==1)

{

printf("输入要删除的记录序号:");

scanf("%d",&n);

p1=headPtr;

while(p1->num!=n&&p1->next!=NULL)

{

p2=p1;

p1=p1->next;

}

if(p1->num==n) //p1的num等于n

{

if(p1==headPtr)

{

headPtr=headPtr->next;

}

else

{

p2->next=p1->next;

}

free(p1);

printf("删除成功\n");

}

else

printf("记录不存在,序号错误\n");

}

else if(i==2)

{ printf("输入要删除记录的日期:");

scanf("%s",date);

p1=headPtr;

while(strcmp(date,p1->date)!=0&& p1->next!=NULL) {

p2=p1;

p1=p1->next;

}

if(strcmp(date,p1->date)==0)

{

if(p1==headPtr)

{

headPtr=headPtr->next;

}

else

{

p2->next=p1->next;

}

free(p1);

printf("删除成功\n");

}

else

printf("记录不存在\n");

}

else if(i==3)

{

while(headPtr!=NULL)

{

p1=headPtr;

headPtr=headPtr->next;

free(p1);

}

printf("删除成功\n");

}

return(headPtr);

}

4.账单查找

实现代码如下:

/*4.按num查询*/

APtr num_search(APtr headPtr,int num)

{

APtr cPtr;

printf("%3s\t%-10s\t%-8s\t%-10s\t%-10s\t%-10s\n",

"No.","date","in_out","amount","kind","remain");

if (headPtr->num==num)

printf("%d\t%-10s\t%-5s\t\t%5.2f\t\t%-10s\t%5.2f\n",headPtr->num,

headPtr->date,headPtr->in_out,headPtr->amount,headPtr->kind,headPtr->remain);

else

{

cPtr=headPtr;

while (cPtr!=NULL&&cPtr->num!=num)

{

cPtr=cPtr->next;

}

if (cPtr!=NULL)

{

printf("%d\t%-10s\t%-5s\t\t%5.2f\t\t%-10s\t%5.2f\n",cPtr->num,

cPtr->date,cPtr->in_out,cPtr->amount,cPtr->kind,cPtr->remain);

return cPtr;

}

else

printf("该条记录不存在\n");

}

return cPtr;

}

/*5.按date查询*/

void date_search(APtr headPtr,char date[])

{

APtr cPtr;

int m=0;

printf("%3s\t%-10s\t%-8s\t%-10s\t%-10s\t%-10s\n",

"No.","date","in_out","amount","kind","remain");

cPtr=headPtr;

while(cPtr!=NULL)

{

if (strcmp(cPtr->date,date)==0)

{

printf("%d\t%-10s\t%-5s\t\t%5.2f\t\t%-10s\t%5.2f\n",cPtr->num,

cPtr->date,cPtr->in_out,cPtr->amount,cPtr->kind,cPtr->remain);

m=m+1;

}

cPtr=cPtr->next;

}

if(m==0)

{

printf("该条记录不存在\n");

}

}

5.账单排序浏览

实现代码如下:

void date_sort(APtr *sPtr)

{

APtr pPtr=NULL,cPtr=NULL,t1Ptr=NULL,t2Ptr=NULL;

int i,j;

for (i=0;i

{

pPtr=*sPtr;

cPtr=(*sPtr)->next;

for (j=0;j

{

if (strcmp(pPtr->date,cPtr->date)>0&&pPtr==*sPtr)

{

pPtr->next=cPtr->next;

cPtr->next=pPtr;

t1Ptr=pPtr;

pPtr=cPtr;

cPtr=t1Ptr;

*sPtr=pPtr;

}

else

{

if (strcmp(pPtr->date,cPtr->date)>0)

{

t1Ptr->next=cPtr;

cPtr->next=pPtr;

pPtr->next=t2Ptr;

t1Ptr=pPtr;

pPtr=cPtr;

cPtr=t1Ptr;

}

}

if (cPtr->next!=NULL)

{

t1Ptr=pPtr;

pPtr=cPtr;

cPtr=cPtr->next;

t2Ptr=cPtr->next;

}

}

}

}

void amount_sort(APtr *sPtr)

{

APtr pPtr=NULL,cPtr=NULL,t1Ptr=NULL,t2Ptr=NULL;

int i,j;

for (i=0;i

{

pPtr=*sPtr;

cPtr=(*sPtr)->next;

for (j=0;j

{

if (pPtr->amount>cPtr->amount&&pPtr==*sPtr)

{

pPtr->next=cPtr->next;

cPtr->next=pPtr;

t1Ptr=pPtr;

pPtr=cPtr;

cPtr=t1Ptr;

*sPtr=pPtr;

}

else

{

if (pPtr->amount>cPtr->amount)

{

t1Ptr->next=cPtr;

cPtr->next=pPtr;

pPtr->next=t2Ptr;

t1Ptr=pPtr;

pPtr=cPtr;

cPtr=t1Ptr;

}

}

if (cPtr->next!=NULL)

{

t1Ptr=pPtr;

pPtr=cPtr;

cPtr=cPtr->next;

t2Ptr=cPtr->next;

}

}

}

}

6.统计

实现代码如下:

/*9.统计各类数据*/

void Stat(APtr headPtr)

{

int choice;

char IO[4],kind[30],date[12];

printf("请选择项目序号:\n");

printf("1总收入和总支出\n"

"2各门类总计统计\n"

"3月度总计\n"

"4各门类多占总量的比例\n");

scanf("%d",&choice);

switch(choice)

{

case 1:printf("计算总收入请输入in,计算总支出请输入out\n");

scanf("%s",IO);

IO_total(headPtr,IO);

break;

case 2:

printf("统计收入输入in,统计支出输入out:");

scanf("%s",IO);

printf("请输入要统计的kind类型:");

scanf("%s",kind);

kind_total(headPtr,kind,IO);

break;

case 3:

printf("统计收入输入in,统计支出输入out:");

scanf("%s",IO);

printf("请输入要统计的年月,格式****.**:");

scanf("%s",date);

mon_total(headPtr,date,IO);

break;

case 4:printf("统计收入输入in,统计支出输入out:");

scanf("%s",IO);

printf("请输入要统计的kind类型:");

scanf("%s",kind);

proportion(headPtr,kind,IO);

break;

}

}

/*各门类总计统计*/

float kind_total(APtr headPtr,char kind[],char IO[])

{

FILE *fp;

float sum=0;

char str[20];

APtr cPtr=headPtr;

while(cPtr!=NULL)

{

if(strcmp(kind,cPtr->kind)==0&&strcmp(IO,cPtr->in_out)==0)

{

sum+=cPtr->amount;

}

cPtr=cPtr->next;

}

printf("%s类的%s统计结果为:%f\n",kind,IO,sum);

printf("保存结果,输入要保存的文件名:");

scanf("%s",str);

if((fp=fopen(str,"a"))==NULL)

{

printf("文件打不开,无法保存\n");

}

else

{

fprintf(fp,"%s","The result is ");

fprintf(fp,"%s\t%s\t%f\n",kind,IO,sum);

printf("保存成功\n");

}

return sum;

}

/*总收入总支出*/

float IO_total(APtr headPtr,char IO[])

{

float sum=0;

char str[20];

APtr cPtr=headPtr;

FILE *fp;

while(cPtr!=NULL)

{

if(strcmp(cPtr->in_out,IO)==0)

{

sum+=cPtr->amount;

}

cPtr=cPtr->next;

}

printf("%s的结果为:%f\n",IO,sum);

printf("保存结果,输入要保存的文件名:");

scanf("%s",str);

if((fp=fopen(str,"a"))==NULL)

{

printf("文件打不开,无法保存\n");

}

else

{

fprintf(fp,"%s","The result is ");

fprintf(fp,"%s\t%f\n",IO,sum);

printf("保存成功\n");

}

return sum;

}

/*月度开销*/

void mon_total(APtr headPtr,char date[],char IO[])

{

FILE *fp;

char str[20];

float sum=0;

APtr cPtr=headPtr;

while(cPtr!=NULL)

{

if(strcmp(cPtr->in_out,IO)==0&&strncmp(cPtr->date,date,7)==0)

{

sum+=cPtr->amount;

}

cPtr=cPtr->next;

}

printf("%s该月%s总计为:%f\n",date,IO,sum);

printf("保存结果,输入要保存的文件名:");

scanf("%s",str);

if((fp=fopen(str,"a"))==NULL)

{

printf("文件打不开,无法保存\n");

}

else

{

fprintf(fp,"%s","The result is ");

fprintf(fp,"%s\t%s\t%f\n",date,IO,sum);

printf("保存成功\n");

}

}

/*各门类所占比例*/

void proportion(APtr headPtr,char kind[],char IO[]) {

FILE *fp;

float pro,a,b;

char str[20];

a=kind_total(headPtr,kind,IO);

b=IO_total(headPtr,IO);

pro=a/b;

printf("%s类所占%s比例为:%f\n",kind,IO,pro);

printf("保存结果,输入要保存的文件名:");

scanf("%s",str);

if((fp=fopen(str,"a"))==NULL)

{

printf("文件打不开,无法保存\n");

}

else

{

fprintf(fp,"%s","The result is ");

fprintf(fp,"%s/%s\t%f\n",kind,IO,pro);

printf("保存成功\n");

}

}

个人记帐软件系统设计

个人记帐软件Personal Accounting Software 系统设计 北京菲易博思技术有限公司 2010年5月

背景 随着经济的飞速发展,Money已经在人们的心目中发生了翻天覆地的变化,一分钱掰成八瓣花的日期早已成为上一代人的记忆,现在的八零后,甚至九零后,关心的问题是如何更有效的花钱。 在西方欧美国家,财务管理(Financial Management)已经成为常识,更兼有强大的金融工具,使得对于Money的管理得心应手。而国内的情况却几乎一片空白,几乎所有和财务相关的东西,似乎都和企业有关,而和个人无关。 当然,西方欧美国家在金融领域已经实现了高度发达的电子货币,人们可以非常方便的记录自己的日常开支,所需要的仅仅是进行汇总和分析而已。而在国内,日常琐碎的收支账目记录本身就是一项非常繁杂的工作。但是财务管理的基础工作,却无法离开日常这些数据的录入。 随着手机在国内的普及,采用手机这种随身工具进行数据录入,可以大大增加个人财务管理的可行性。 市场分析 2009年中国手机用户净增1亿,达到7.4亿的规模。而2012年时,北美的智能手机用户将超过传统手机用户。所以保守估计,中国的智能手机用户有1亿。 需求分析 个人财务管理(Personal Accounting Software,PAS)是一款运行于智能手机平台的面向个人、家庭以及团体,提供资金支出的日常记录、共享、统计等财务管理功能。

软件的用户是指除了企业以外的资金支出实体,比如个人、家庭或者团体。这些用户在进行资金支出行为时,由于缺乏有效的计划手段,会导致大量的不合理支出,从而产生资金浪费。对于个人而言,资金的浪费会导致个人计划往往无法得到实现,日久天长会对个人的生活、事业产生严重的影响。而对于家庭用户和团体用户而言,除了产生大量不合理支出以外,还会导致家庭、团体成员之间产生矛盾,从而影响到团体的整体利益。 软件的功能注重于对资金支出的管理,包括录入、查询、统计等。对于家庭和团体用户,还能够将团体成员之间的数据进行步和合并(通过蓝牙等方式),或者能够在一个团体成员进行操作时,通过短消息(SMS)等方式对其他成员进行实时通知。 软件对资金支出管理是按照“项目”来进行管理的。用户一般需要维护一个五个左右的项目,比如交通、通信、服装、学习、伙食等等。每一项费用的开支,都应该纳入到一个项目中。 对用户而言,还可能存在有多个账本的需求。例如对于个人的开支,需要有一个个人账本;而和一同租房的朋友的共同开支,则需要有一个住房费用账本;在上班午餐时,又因为和同事一起吃饭,而需要维护一个吃饭的账本。 用户功能列表: 1、账本的增、删、改; 2、账本的数据导入、导出; 3、账本的共享 4、账本的同步合并; 5、帐目的录入、修改、删除及查询功能; 6、项目的管理功能; 7、费用统计功能;

个人课程设计报告

个人课程设计报告 个人课程设计之后怎么样写相关的报告呢?各位,我们看看下面的相关范文,大家一起阅读吧! 个人课程设计报告篇一首先我们由衷的感谢老师提供给我们这样一个锻炼自己的机会,经过这四周的学习,本次课程设计即将结束,总的来说,经过这门课的学习收获还是相当大的。回顾这段时间的课程设计,至今我仍感慨万分。的确,从选材到开始制作,从理论到实践,在四周的实训日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。 通过这次课程设计使我们都更加懂得并亲身体会到了理论与实际相结合的重要性,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从实践中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到很多问题,可以说是困难重重,并且在设计的过程中发现了自己的很多不足之处,发现自己对之前所学过的知识理解得不够深刻,掌握得不够牢固,有待加强。 生活就是这样,汗水预示着结果但是也见证着收获,劳动是人类生存、生活永恒不变的话题,通过实训,我才真正领略到“艰苦奋斗”这一词的真正含义。我想说,设计确实

有些辛苦,但苦中也有乐,在如今单一的理论学习中,很少有机会能有实践的机会,但我们可以。而且设计也是一个团队的任务,一起的工作可以让我们有说有笑,相互帮助,配合默契,多少欢乐在这里洒下。我想说,之前的时间确实很累,但当我们看到自己所做的劳动成果时,心中也不免产生兴奋。也许有人不喜欢这类的工作,也许有人认为编程的工作有些枯燥,但我们认为无论干什么,只要人生活的有意义就够了,而且这也是最主要的,社会需要我们,我们也可以为社会而工作。 我们的工作是一个团队的工作,团队需要个人,个人也离不开团队,必须发扬团结协作的精神,某个人的离群都可能导致整项工作的失败。实训中只有一个人知道原理是远远不够的,必须让每个人都知道,否则一个人的错误,就有可能导致整个项目失败,团结协作是我们实训成功的一项非常重要的保证。而这次实习也正好锻炼我们这一点,这也是非常宝贵的。 虽然我们的课程设计在规定的时间内按时完成了任务,但是,由于知识和经验的欠缺,整个系统的开发功能还不算太完善,在设计的过程中也遇到了很多困难,比如由于早期的需求分析不充分,给后来系统的具体实现带来了很大的困难,所以中间做了一部分的无用功,但通过我们的不懈努力和老师、同学的帮助,设计才得以圆满按时的完成,所以仅

网页制作课程设计报告

网页制作课程设计报告 学院: 专业班级: 姓名: 学号: 成绩: 阅卷教师:

目录 1.设计目的 (1) 2.设计思想 (1) 2.1网站整体结构规划思想 (1) 2.2 主页设计思想 (1) 2.3子页的设计思想 (1) 3网页详细设计分析 (1) 4结论 (2)

1.设计目的 阐述该个人网站的设计意图和创意,简单介绍自己的个人网站。 2.设计思想 阐述网站的整体设计思想,包括: 2.1网站整体结构规划思想 要求阐述网站整体结构的选择、设计的思想,绘制网站结构草图。 2.2 主页设计思想 要求对主页的布局思路进行阐述和分析。 2.3子页的设计思想 要求对子页的设计以及网页对象的选取思路进行阐述和分析。 3网页详细设计分析 要求选取一张网页,对网页的设计实现过程进行阐述和分析,详细说明制作该网页的步骤,所使用的网页对象以及该网页对象的操作方法。

4结论 对整个设计报告做归纳性总结,并分析设计过程中的困难及如何解决的,最后提出展望。 一、设计目的 本课程的设计目的是通过实践使同学们经历Dreamweaver cs3开发的全过程和受到一次综合训练,以便能较全面地理解、掌握和综合运用所学的知识。结合具体的开发案例,理解并初步掌握运用Dreamweaver cs3可视化开发工具进行网页开发的方法;了解网页设计制作过程。通过设计达到掌握网页设计、制作的技巧。了解和熟悉网页设计的基础知识和实现技巧。根据题目的要求,给出网页设计方案,可以按要求,利用合适图文素材设计制作符合要求的网页设计作品。熟练掌握Photoshop cs3、Dreamweaver cs3等软件的的操作和应用。增强动手实践能力,进一步加强自身综合素

个人账本管理系统设计报告

目录 摘要 (1) 第1章开发的背景 (2) 第2章系统设计 (3) 2.1系统需求分析 (3) 2.2 系统功能模块 (3) 2.3 系统功能设计 (4) 2.4 数据库设计 (4) 2.4.1数据库需求分析 (4) 2.4.2数据库逻辑结构设计 (5) 第3章系统的设计与实现 (6) 3.1 启动界面(JSplashWindow) (6) 3.2 用户选择界面(main) (7) 3.3 登录界面(Login) (8) 3.4 主界面(Index) (8) 3.5 支出明细界面(payInfo) (10) 3.6 支出添加界面(payAdd) (11) 3.7 支出修改界面(paymodify) (11) 3.8 支出删除界面(paydelete1) (13) 3.9 支出查询界面(paySearch) (13) 3.10 数据库配置 (14) 第4章开发工具简介 (15) 4.1 JCreator Pro (15) 4.2 Microsoft Access 2003 (15) 第5章设计总结与体会 (16) 参考文献 (17)

摘要 针对现在高校很多学生都进行记账的现状,采用Java和SQL SERVER2000工具,设计并开发了个人帐本管理系统,该系统能帮助用户进行日常理财。用户通过使用该系统,可以方便的进行日常的收入支出统计和查询。 该系统界面友好,功能完善,简单实用。 关键字:信息系统,学生管理,个人帐本,J2SE 。

第1章开发的背景 一个有经济头脑的人,在日常生活和投资中,都会对自己的支出和开销做到心里有数,以便于制定出自己的一套理财计划,达到合理的经济统筹,有理财习惯的人可以从以往的统计中看到自己主要消费方向,看出自己的消费是否合理。之所谓巧妇难为无米之炊,如果自己想要理财,先决条件得要有财”才行。如何才能有财呢?开源节流呀!有计划的用钱,再将节流下来的钱去用于理财,这样不就行了吗?那又怎么样来“开源”呢?记账是个好办法[4],它有针对性地罗列、统计计算资源信息[3]。从查阅资料来看,一些比较发达国家人的生活中对理财有着很严格的计划,因此国外的理财系统总体来说比较普遍,做的也比较完善.国内的理财系统主要偏重于办公财务软件,而个人理财和家庭理财方面的比较少,因此需要开发相关的系统软件,从而达到引导理性消费,合理安排收支[5]。 进行账目的统计,如果是手动统计的话,首先,如果每天统计的话,用于统计的账本和记录会越来越多,不利于保管,容易造成丢失;其次,随着纪录的增多,如果要查找以前的记录,会变的越来越困难。因此,需要一个功能比较完善的记账系统来代替传统的手工统计。

个人博客_课程设计报告

目录 第一章概述 (1) 1.1 本课题的研究背景 (1) 1.2 本课题的研究意义 (1) 1.3 现行研究存在的问题及解决办法 (1) 1.3.1 需求分析问题 (1) 1.3.2 代码实现问题 (2) 第二章系统分析 (3) 2.1 系统需求分析 (3) 2.2 采用的关键技术介绍 (3) 2.2.1 https://www.360docs.net/doc/3b13784035.html,简介 (3) 2.2.2 Access数据库简介 (4) 2.3 可行性分析 (4) 2.3.1 技术可行性 (4) 2.3.2 操作可行性 (4) 第三章系统概要设计 (6) 3.1 系统总体设计 (6) 3.1.1 运行环境 (6) 3.1.2 系统流程 (6) 3.1.3 系统结构 (7) 3.2 系统接口的概要设计 (8) 3.2.1 用户接口 (8) 3.3 数据库概要设计 (9) 3.3.1 逻辑结构设计 (9) 3.3.2 物理结构设计 (10) 第四章系统详细设计 (11) 4.1 系统界面的详细设计 (11) 4.1.1 普通用户首页的详细设计 (11) 4.1.2 留言界面的详细设计 (11) 4.1.3 后台首页的详细设计 (12) 4.2 数据库详细设计 (13) 4.2.1 表的详细设计 (13) 第五章系统实现 (15) 5.1 系统开发环境 (15) 5.2 系统实现 (15) 5.2.1 客户端系统实现 (15) 5.2.2 后台管理系统实现 (17)

5.3 系统运行环境要求 (17) 5.3.1 服务器端要求 (17) 5.3.2 客户端要求 (18) 5.4 系统部署 (18) 5.4.1数据库设置 (18) 5.4.2 服务器端运行设置步骤 (18) 第六章性能测试与分析 (19) 6.1 测试实例(测试集)的研究与选择 (19) 第七章课程设计总结 (20) 7.1 课程设计心得体会 (20) 参考文献 (21)

WEB个人主页课程设计

Web应用开发技术 实验报告 专业:计算机科学与技术 班级: 学号: 姓名:

一、设计题目 个人网站 二、目的 1、本次设计是学生在学完ASP动态网站开发课程后的一次实践性很强的课程设计,是对ASP进行动态网站开发所学知识的综合运用。 2、掌握使用ASP技术进行网站开发设计。 3、通过本次实习,使学生加深所学知识内容的理解,并能积极地调动学生的学习兴趣,结合实际应用操作环境,真正做到理论与实际相结合。 三、功能需求描述 此网站可以对主人留言,来发表自己的心情,也可以把自己的联系方式写入其中,达到和睦相处、心灵的驿站的目的等。 四、总体设计

五、详细设计 (一)、我的主页 此页面为网站的主页,通过发布新心情,点击通讯录可以查看通讯录好友信息,点击留言板可以查看好友留言。 主要代码: 个人空间