C|C语言课程设计(连锁超市会员消费记录管理系统)

3天时间做的,全部都是自己敲的代码
博客原文链接

#include #include #include struct Data { //卡号、姓名、时间、消费额、消费地点、消费类型 //增、删、改、浏览、查询、搜索 char id[50]; char name[50]; char date[50]; char consumption[50]; char where[50]; char category[50]; }; void view(); void del(int n); void change(int n); void add(); void find(); int login(); int main() { int y; for (y = 0; y < 99999; y++) { if (login() == 1) { system("cls"); break; } system("cls"); printf("\033[41; 37m***************登录错误:账号或者密码错误,请重试************************\n\n\n\033[0m"); } for (y = 0; y < 9999; y++) { //开始界面 printf("┌------连锁超市会员消费记录管理系统-----┐\n"); printf("||\n"); printf("|①浏览|\n"); printf("|②添加|\n"); printf("|③更改|\n"); printf("|④删除|\n"); printf("|⑤搜索|\n"); printf("|⑥退出|\n"); printf("||\n"); printf("└-------------------------------------┘\n"); printf("*********************************************************\n"); printf("######请输入数字进行相应的操作#######\n"); //接受输入数字进行处理 int number; printf("请输入:"); scanf("%d", &number); system("cls"); if (number == 6) { break; } //预处理信息 // int hao; switch (number) { case 1://浏览 view(); break; case 2://添加 add(); break; case 3://更改 view(); printf("\n请选择你要更改数据的序号:"); scanf("%d", &hao); change(hao); break; case 4://删除 view(); printf("\n请选择你要删除数据的序号:"); scanf("%d", &hao); del(hao); break; case 5://搜索 find(); break; case 6: break; } system("pause"); system("cls"); } return 0; }void view() { char a[1000]; FILE* file = fopen("infor.txt", "a+"); printf("\n序号 卡号姓名 时间 消费额 消费地点 消费类型\n"); printf("---------------------------------------------\n"); /*while ((ch = getc(file)) != EOF) { putchar(ch); }*/ int i; for (i = 1; i < 666; i++) { if (fgets(a, 100, file) != NULL) { printf(" %d%s", i, a); } else { break; } } fclose(file); } void add() { struct Data temp; FILE* file = fopen("infor.txt", "a+"); printf("请依次输入:\n卡号 姓名 时间 消费额 消费地点 消费类型\n"); printf("---------------------------------------------\n"); scanf("%s %s %s %s %s %s", &temp.id, &temp.name, &temp.date, &temp.consumption, &temp.where, &temp.category); fprintf(file, "%s %s %s %s %s %s\n", temp.id, temp.name, temp.date, temp.consumption, temp.where, temp.category); printf("\033[41; 37m添加成功\n\033[0m"); fclose(file); }void change(int n) { char a[50]; int i; FILE* file = fopen("infor.txt", "a+"); for (i = 1; i < 666; i++) { if (fgets(a, 100, file) != NULL) { if (i == n) { break; } } } fclose(file); //对字符串进行处理,切割字符串 char str[99][99]; char* temp = strtok(a, " "); while (temp) { //printf("%s\n", temp); strcpy(str[i], temp); //后面的是要拷贝的内容 i++; temp = strtok(NULL, " "); } system("cls"); printf("您选择的项是:\n"); printf("序号 卡号 姓名 时间 消费额 消费地点 消费类型\n"); printf("--------------------------------------------\n"); for (i = 0; i < 6; i++) { printf("%s ", str[i]); } printf("\n请问您要更改什么值?\n"); printf("--------------------------------------------------------\n"); printf("1.卡号2.姓名3.时间4.消费额5.消费地点6.消费类型\n--------------------------------------------------------\n请选择序号:"); int num; char new_str[100]; scanf("%d", &num); printf("请输入新的值:"); scanf("%s", &new_str); switch (num) { case 1: strcpy(str[0], new_str); break; case 2: strcpy(str[1], new_str); break; case 3: strcpy(str[2], new_str); break; case 4: strcpy(str[3], new_str); break; case 5: strcpy(str[4], new_str); break; case 6: strcpy(str[5], new_str); break; } del(n); FILE* new_file = fopen("infor.txt", "a+"); for (i = 0; i < 6; i++) { fprintf(new_file, "%s", str[i]); if (i != 6) { fprintf(new_file, " "); } } fclose(new_file); }void del(int n) { char a[50][50]; int x = 0, i; FILE* file = fopen("infor.txt", "r+"); for (i = 1; i < 666; i++) { if (fgets(a[x], 100, file) != NULL) { if (i != n) { x++; } } else { break; } } fclose(file); FILE* file_temp = fopen("infor.txt", "w"); fprintf(file_temp, ""); fclose(file_temp); FILE* temp = fopen("infor.txt", "a+"); for (i = 0; i < x; i++) { fprintf(temp, "%s", a[i]); } printf("\033[41; 37m************操作成功************\n\n\033[0m"); fclose(temp); }void find() { printf("请输入关键词:"); char ss[100]; char ch; int i = 0; char* ret; scanf("%s", &ss); char a[50]; int s = 0; FILE* file = fopen("infor.txt", "r+"); printf("\n搜索结果: \n"); printf("\n卡号 姓名 时间 消费额 消费地点 消费类型\n"); printf("--------------------------------------------\n"); for (i = 1; i < 666; i++) { if (fgets(a, 100, file) != NULL) { ret = strstr(a, ss); if (ret != NULL) { printf("%s", a); printf("--------------------------------------------\n"); s = 1; } else { continue; } } else { break; } } if (s == 0) { printf("\033[41; 37m没有找到相关信息\n\033[0m"); } fclose(file); } int login() { printf("┌------连锁超市会员消费记录管理系统---┐\n"); printf("||\n"); printf("|请先登录|\n"); printf("||\n"); printf("||\n"); printf("|请输入您的账号和密码|\n"); printf("||\n"); printf("||\n"); printf("||\n"); printf("└-------------------------------------┘\n"); printf("*********************************************************\n"); char sys_name[20] = { "admin" }; char sys_password[20] = { "123456" }; char name[20]; char password[20]; printf("\n\n"); printf("账号:"); scanf("%s", name); printf("密码:"); scanf("%s", password); if (strcmp(sys_name, name) == 0 && strcmp(sys_password, password) == 0) { return 1; } else { return 0; } }

【C|C语言课程设计(连锁超市会员消费记录管理系统)】

    推荐阅读