引言随着科技的进步,个人财务管理变得越来越重要。C语言作为一种高效、灵活的编程语言,非常适合用于开发个人收支管理工具。本文将介绍如何使用C语言来创建一个简单的个人收支管理小助手,帮助您更好地管理个人财...
随着科技的进步,个人财务管理变得越来越重要。C语言作为一种高效、灵活的编程语言,非常适合用于开发个人收支管理工具。本文将介绍如何使用C语言来创建一个简单的个人收支管理小助手,帮助您更好地管理个人财务。
在开始编写代码之前,我们需要明确个人收支管理小助手的功能需求:
以下是使用C语言实现个人收支管理小助手的示例代码:
#include
#include
#include
// 定义收支记录结构体
typedef struct { int year; int month; int day; float amount; char type[10]; // 收入/支出 char description[100]; // 描述
} Record;
// 声明函数
void addRecord(Record *records, int *count);
void listRecords(Record *records, int count);
void queryRecords(Record *records, int count);
void statisticsRecords(Record *records, int count);
int main() { Record records[100]; // 存储最多100条记录 int count = 0; // 当前记录数量 int choice; while (1) { printf("1. 添加记录\n"); printf("2. 列出所有记录\n"); printf("3. 查询记录\n"); printf("4. 统计记录\n"); printf("5. 退出\n"); printf("请输入您的选择:"); scanf("%d", &choice); switch (choice) { case 1: addRecord(records, &count); break; case 2: listRecords(records, count); break; case 3: queryRecords(records, count); break; case 4: statisticsRecords(records, count); break; case 5: exit(0); default: printf("无效的选择,请重新输入。\n"); } } return 0;
}
// 添加记录函数
void addRecord(Record *records, int *count) { Record newRecord; printf("请输入年、月、日(格式:2023 4 5):"); scanf("%d %d %d", &newRecord.year, &newRecord.month, &newRecord.day); printf("请输入金额:"); scanf("%f", &newRecord.amount); printf("请输入类型(收入/支出):"); scanf("%s", newRecord.type); printf("请输入描述:"); scanf("%s", newRecord.description); records[*count] = newRecord; (*count)++;
}
// 列出所有记录函数
void listRecords(Record *records, int count) { for (int i = 0; i < count; i++) { printf("日期:%d-%d-%d\n", records[i].year, records[i].month, records[i].day); printf("金额:%.2f\n", records[i].amount); printf("类型:%s\n", records[i].type); printf("描述:%s\n", records[i].description); printf("--------------------------------------------------\n"); }
}
// 查询记录函数
void queryRecords(Record *records, int count) { int year, month, day; printf("请输入查询的年、月、日(格式:2023 4 5):"); scanf("%d %d %d", &year, &month, &day); for (int i = 0; i < count; i++) { if (records[i].year == year && records[i].month == month && records[i].day == day) { printf("日期:%d-%d-%d\n", records[i].year, records[i].month, records[i].day); printf("金额:%.2f\n", records[i].amount); printf("类型:%s\n", records[i].type); printf("描述:%s\n", records[i].description); printf("--------------------------------------------------\n"); } }
}
// 统计记录函数
void statisticsRecords(Record *records, int count) { float income = 0.0; float expense = 0.0; for (int i = 0; i < count; i++) { if (strcmp(records[i].type, "收入") == 0) { income += records[i].amount; } else if (strcmp(records[i].type, "支出") == 0) { expense += records[i].amount; } } printf("总收入:%.2f\n", income); printf("总支出:%.2f\n", expense); printf("净收入:%.2f\n", income - expense);
} gcc -o personal_finance personal_finance.c(假设源文件名为 personal_finance.c)。./personal_finance(在Windows系统中为 personal_finance.exe)。通过以上步骤,我们使用C语言创建了一个简单的个人收支管理小助手。这个工具可以帮助您记录和管理个人财务,从而更好地控制您的开支。随着需求的增加,您可以进一步扩展这个小助手的功能,如添加图表展示、导出数据等。