• 大小: 12KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-05-20
  • 语言: C/C++
  • 标签: c++  

资源简介

c++课程设计的一个记账软件,对于一些想开始做一些稍大的c++程序的同学有很大的启示性

资源截图

代码片段和文件信息

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*
*该软件对大家的日常支出进行管理,具体的功能如下:
*
*1.录入功能:对某项支出进行录入,包括支出日期,金额,类别,备注等;
*2.统计功能:能对支出进行多种形式的统计:
* A. 时间段查询:比如2012-1-30到2012-2-20之间的总支出;
* B. 过高支出查询:查询超出N元的天数和具体日期和支出金额;
* C. 按天列出该天的支出明细;
*3.修改功能:对某项支出进行修改;
*4.删除功能:删除该项支出
*
 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

#include
#include
#include
using namespace std;
void check_more();//过高支出查询
void check_by_time_fun();//时间查询函数
void revise_fun();//用户对账单修改函数
void detele_fun();//删除函数
void clear_and_detailed();//按照用户的要求查询某一天的详细账单
void input_fun();//定义增加账单函数
void check(int& yearint& monthint& day);//检查函数,检查年月日的输入是否合法

//定义公用结构体
struct Date
{
int year;
int month;
int day;
};//定义日期结构体

struct Bill
{
Date date;
double amount_of_money;//定义金额
char type;//定义类型
char remark[200];//定义备注
};//定义账单结构体

int main()
{
int ans;
char ans2;
do{
cout <<“* * * 欢迎使用万能记账 * * * *  \n“;
cout <<“* * * * * * * * * * * * * * * * \n“;
cout <<“*                             * \n“;
cout <<“*  1 . 增加账单               * \n“;
cout <<“*  2 . 按时间查询             * \n“;
cout <<“*  3 . 超过金额查询           * \n“;
cout <<“*  4 . 详单查询               * \n“;
cout <<“*  5 . 修改账单               * \n“;
cout <<“*  6 . 删除某一天的账单       * \n“;
cout <<“*  7 . exit                   * \n“; 
cout <<“* * * * * * * * * * * * * * * * \n“;
cout << “请按要求输入:\n“;
cin >> ans;
switch(ans)
{
case 1:
input_fun();
break;
case 2:
check_by_time_fun();
break;
case 3:
check_more();
break;
case 4:
clear_and_detailed();
break;
case 5:
revise_fun();
break;
case 6:
detele_fun();
break;
case 7:
cout << “非常感谢您使用.\n“;

exit(0);
default:
cout <<“you input error!“;
}
cout << “ 您想再次对账单进行修改或查看吗?如果想继续请输入y或者是Y:“;
cin >> ans2;
}while(ans2 == ‘y‘|| ans2 == ‘Y‘);

return 0;
}
 
void input_fun()//用户录入函数
{
ofstream fout;
fout.open(“bill.txt“ios::app);
if(fout.fail())
{
cout << “fout open failed!\n“;
exit(1);
}

Bill bill; //生成结构体变量bill

cout <<“请输入消费账单的时间(****年**月**日)(年月日之间用空格隔开):“;
cin >> bill.date.year >>bill.date.month >>bill.date.day;
check(bill.date.yearbill.date.monthbill.date.day);

cout << “请输入消费金额:“;
cin >> bill.amount_of_money;
cout << “请输入消费类型(以单个英文字母表示):“;
cin >> bill.type;
cout << “请输入该次消费账单的备注(不超过一百个字符):“;
cin.get();
int i=-1;
do{
i++;
cin.get(bill.remark[i]);
}while(bill.remark[i] != 10);

//向文件输出所增加的账单
fout << bill.date.year << “ “;
fout << bill.date.month << “ “;
fout << bill.date.day << “ “;
fout << bill.amount_of_money << “ “;
fout << bill.type << “ “;
for(int j=0;j {
fout << bill.remark[j];
}
fout << endl;

fout.close();

return;
}

//按时间查询
void check_by_time_fun()
{
ifstream fin;

fin.open(“bill.txt“);
if(fin.fail())
{
cout << “

评论

共有 条评论