学了一学期C语言程序设计,期末需要完成一份课程设计;以下为我的期末课程设计,特向大家分享一下。本人初学菜鸟,代码中难免会有错误,请大家谅解,我还在努力学习中。
一、课程设计思路
C语言的控制和数据结构丰富灵活,语句表达简洁高效,并且程序结构很清晰。为了实现对C语言的结构、指针和文件的综合运用,因此利用账单管理的基本操作来表现他们。功能包括添加账单、罗列账单、操作账单和账户余额。
二、代码实现
#include<stdio.h> //包含头文件
#include<stdlib.h>
#include<string.h>
long size;
int inputchoice(){ //功能选择函数
int Choice;
printf("请输入您的操作数:\n");
printf("\t\t(1)Add a cash log.\t\t(2)List all cash log.\n");
printf("\t\t(3)Check balance.\t\t(4)Operate a cash log.\n\t\t(0)End program.\n");
scanf("%d",&Choice);
return Choice;
}
typedef struct LogData{ //定义账单存储数据的结构
char Time[20],Do[20],Who[20];
double charge;
struct LogData *next;
}Snode,*Slink;
Slink head=NULL;
long getlogcount(FILE *fp){ //统计文件里的字节数量
long begin,end,logcount;
fseek(fp,0L,SEEK_SET);
begin=ftell(fp);
fseek(fp,size,SEEK_END);
end=ftell(fp);
logcount=(end-begin)/size-1;
return logcount;
}
void AddNewLog(){ //功能函数,添加新帐单
int num=1;
struct LogData Thing;
FILE *fp;
if((fp=fopen("MoneyNote.txt","a"))==NULL){
printf("Open Error!\n");
exit(0);
}