C语言课程设计论文
学生姓名: 金灿
学生学号: 1310321109
所在班级: 软件一班
任课教师: 熊英
班级财务管理系统
【设计目的】
设计一个班级财务管理系统,该程序具有以下功能:
(1)用户登录:输入用户名和密码,并判断是管理员还是普通成员,管理员和普通成员具有不同的功能选择界面。
(2)录入信息:各项财务信息(包括用途、收入、支出、收入(或支出)时间、总计、使用人等。)。
(3)修改班级成员信息。
(4)删除班级成员信息。
(5)查询班级财务状况。
(6)统计班级财务情况:班级每月共收入、支出各多少,整个学期共收入、支出多少。
(7)分类统计:根据用途对支出进行统计排序输出
【设计思路】
根据要求,班级财务数据以文本文件存放在文件中,故需要提供文件的输入、输出等操作;还需要保存记录以进行修改,删除,查找等操作;另外还应提供键盘式选择菜单实现功能选择。
【总体设计】
班费
班费管理系统
数据输入
数据修改
删除
数据添加
查找
浏览
图1 系统功能模块图
【详细设计】
主函数
主函数设计要求简洁,只提供部分提示语和函数的调用
【程序】
显示一系列功能选项
显示一系列功能选项
输入n,判断n是否是0~7 ?
根据n的值调用各功能模块函数
结束
开始
n
图2. 主函数流程图
附录:源代码
#include
#include
#include
#include
typedef struct income_info
{int number;
double income;
int month;
int day;
int year;
char name[50];
struct income_info * next;
}IncomeLink,* Pointer1;
typedef struct output_info
{int number;
double output;
int month;
int day;
int year;
int use;
char name[50];
struct output_info * next;
}OutputLink,* Pointer2;
int Select(void); //收入和支出管理选择函数
void Insert1(Pointer1 * Head1);
void Insert2(Pointer2 * Head2);
void Search1(Pointer1 Head1);
void Search2(Pointer2 Head2);
void Update1(Pointer1 Head1);
void Update2(Pointer2 Head2);
void Delete1(Pointer1 *Head1);
void Delete2(Pointer2 *Head2);
void Show1(Pointer1 Head1);
void Show2(Pointer2 Head2);
void Count1(Pointer1 Head1);
void Count2(Pointer2 Head2);
int n,k;
int main()
{ void printf_message1();
void menu();
char m[7];char M[7];char num[15];
int i,j;
long sum;
Pointer1 Head1=NULL;
Pointer2 Head2=NULL;
printf("★*********************欢迎使用班级财务管理系统*******************★\n");
printf(" 请输入你的帐号(即你的学号):");
gets(num);
for(i=4;i<10;i++)
m[i-4]=num[i];
m[6]='\0';
for(i=0;i<10;i++)
num[i]=num[i]-48;
sum=num[0]*1000000000+num[1]*100000000+num[2]num[4]*100000+num[5]*10000+num[6]*1000+