大一时期编写的C语言程序,饭卡管理系统。

以下为源码。

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAX 5
struct fanka{
    char number[20];
    char name[20];
    int zhuangtai;
    float yue;
}fanka[MAX];
int count=0;
void jianli();
void maifan();
void xuqian();
void tianjia();
void zhuxiao();
void guashi();
void guashu();
int main()
{int choose;
do {
    system("cls");
    printf("===================饭卡管理系统==================\n");
    printf("\t\t1.建立饭卡文件\n");
    printf("\t\t2.买饭\n");
    printf("\t\t3.续钱\n");
    printf("\t\t4.添加新饭卡\n");
    printf("\t\t5.注销旧饭卡\n");
    printf("\t\t6.设置与解除挂失\n");
    printf("\t\t7.统计挂失饭卡人数\n");
    printf("\t\t0.退出程序\n\n");

fflush(stdin);

printf("请输入功能选项:");
    scanf("%d",&choose);
    switch(choose)
    {
    case 1:jianli();break;
    case 2:maifan();break;
    case 3:xuqian();break;
    case 4:tianjia();break;
    case 5:zhuxiao();break;
    case 6:guashi();break;
    case 7:guashu();break;
    case 0:printf("感谢使用本软件!已正常退出,按任意键结束!\n");break;}
}while(choose!=0);
return 0;
}
void jianli()
{
    char a;
    do
    {
        fflush(stdin);
        printf("\n请输入卡号:");
        gets(fanka[count].number);
        fflush(stdin);
        printf("\n请输入姓名:");
        gets(fanka[count].name);
        fflush(stdin);
        fanka[count].zhuangtai=0;
        fflush(stdin);
        printf("\n请输入饭卡余额:");
        scanf("%f",&fanka[count].yue);
        fflush(stdin);
        printf("     建立完成!    ");
        printf("是否继续?(y/n)?");
        a=getchar();
        count++;
    }while((a=='y')&&(count<=MAX));
}
void guashi()
{
    char temp[20];
    int b,c;

fflush(stdin);

printf("请输入卡号:");
    gets(temp);
    for(c=0;c<count;c++)
    {
       if(strcmp(temp,fanka[c].number)==0)
       break;

}
            fflush(stdin);
    printf("\n请选择功能:1.挂失 2.解除挂失 (1 or 2)?");
    scanf("%d",&b);

if(b==1)
    {
        fanka[c].zhuangtai=1;
        printf("挂失成功!\n");
    }
    if(b==2)
    {
        fanka[c].zhuangtai=0;
        printf("解除挂失成功!");
    }

}
void zhuxiao()
{
    char number[20],c;
    int a,b,i;
    do
    {
        fflush(stdin);
        printf("请输入要删除的卡号:");
        gets(number);
        for(a=0;a<count;a++)
        {
            if(strcmp(number,fanka[a].number)==0)break;
        }
            for(b=a;b<count;b++)
                fanka[b]=fanka[b+1];
            if(a>count)printf("未找到所输入的饭卡!");
            else {
            count--;
            printf("剩余的饭卡为:\n");
            for(i=0;i<count;i++)

printf("%s   %s\n",fanka[i].number,fanka[i].name);
            }
                          fflush(stdin);
            printf("是否继续?(y/n)");

c=getchar();
    }      while(c=='y');
}
void tianjia()
{
    int i;
    char c;
    do
    {
        fflush(stdin);
        printf("\n请输入卡号:");
        gets(fanka[count].number);
        fflush(stdin);
        printf("\n请输入姓名:");
        gets(fanka[count].name);
        fflush(stdin);
        printf("\n请输入饭卡状态,已挂失输入1,未挂失输入0:");
        scanf("%d",&fanka[count].zhuangtai);
        fflush(stdin);
        printf("\n请输入饭卡余额:");
        scanf("%f",&fanka[count].yue);

for(i=0;i<count;i++)
             if(strcmp(fanka[count].number,fanka[i].number)==0)
             {printf("该卡号已被注册,请重新输入!\n");
                break;
             }
        if(i==count)
        {printf("注册成功\n");
        count=count+1;
        }
        printf("是否继续?(y/n)\n");
        fflush(stdin);
        c=getchar();
    }while(c=='y');
        }
void maifan()
{
    int i;
    float m;
    char a;
    char num[20];
    do
    {
        system("cls");
        fflush(stdin);
        printf("\n请输入饭卡号:");
        gets(num);
        fflush(stdin);
        printf("\n请输入饭费:");
        scanf("%f",&m);
        if(m<=0)
            printf("\n请输入正确的饭费\n");
        else
        {

for(i=0;i<count;i++)

if(strcmp(num,fanka[i].number)==0)
            break;

if(i==count)
            printf("未找到该账户\n");
         else if(fanka[i].zhuangtai==1)
            printf("本卡已冻结\n");
         else if(fanka[i].yue<5)
            printf("余额不够,请续钱!\n");
         else
         {
            printf("\n消费前:%5.2f\n",fanka[i].yue);
            fanka[i].yue=fanka[i].yue-m;
            printf("\n消费后:%5.2f\n",fanka[i].yue);
         }
        }
        printf("\n是否继续?\n请输入y或n:");
        fflush(stdin);
        a=getchar();
    }while(a=='y');

}
void xuqian()
{
    int i;
    float m;
    char num[20];
    char a;
    do
    {
        system("cls");
        fflush(stdin);
        printf("\n请输入饭卡号:");
        gets(num);
        fflush(stdin);
        printf("\n请输入续钱额:");
        scanf("%f",&m);
        if(m<=0)
            printf("\n请输入正确的饭费\n");
        else
        {

for(i=0;i<count;i++)
            if(strcmp(num,fanka[i].number)==0)
            break;

if(i==count)
            printf("未找到该账户!\n");
         else if(fanka[i].zhuangtai==1)
            printf("本卡已冻结!\n");
         else
         {
            printf("\n续费前:%5.2f\n",fanka[i].yue);
            fanka[i].yue=fanka[i].yue+m;
            printf("\n续费后:%5.2f\n",fanka[i].yue);
         }
        }
        printf("\n是否继续?\n请输入y或n:");
        fflush(stdin);
        a=getchar();
    }while(a=='y');
}
void guashu()
{
    int i,sum;
    for(i=0,sum=0;i<count;i++)
    if(fanka[i].zhuangtai==1)
    {sum=sum+1;
     printf("\n饭卡号:%s\t姓名:%s\t余额:%5.2f\n",fanka[i].number,fanka[i].name,fanka[i].yue);
    }
    printf("\n挂失饭卡总数:%d\n",sum);
    printf("\n按任意键继续:");
    fflush(stdin);
    getchar();
}

C语言 饭卡管理系统相关推荐

  1. c语言饭卡管理系统_C语言饭卡管理系统(附代码).doc

    C语言饭卡管理系统(附代码) C语言饭卡管理系统,代码超简单,纯c语言基础知识,本人大一时期自己打的代码与实验报告(作图是直接word,可直接修改,不需安装visio),上传只为赚取百度财富值,支持原 ...

  2. c语言饭卡管理系统链表文件,C语言《学生信息管理系统》链表+文件操作

    今天带来的是一个链表版本的<学生信息管理系统>,功能包括:添加.显示.查询.删除.保存.读取,等功能模块,链表是C语言的进阶内容,希望大家好好学习,这里的代码可能会有一些瑕疵,希望大家提供 ...

  3. mysql食堂系统E R图_饭卡管理系统学生E-R图

    - 2 - 1.1 可行性分析 1.1.1 项目背景 近年来学生食堂饭卡的使用给高校餐饮管理带来了一次革命, 从结算方式到账户管理, 从卫生便捷到数据统计等,不仅给就餐者带来了方便,也使餐饮结算手段发 ...

  4. Java课程设计——饭卡管理系统(javaSwing、JavaFX、MySQL)附源代码

    项目名:饭卡管理系统 @author :第四维度 创建时间:2021-6-21 描述:这是一个涉及 MySQL + IDEA + Jdk8 + swing + javaFX 的项目,能实现对数据库的增 ...

  5. c语言饭卡服务程序设计思路,C语言设计—饭卡管理程序.doc

    C语言设计-饭卡管理程序 C语言课程设计报告饭卡管理程序 完成日期:2009年12月 [题目描述]该程序为饭卡管理程序,具有下列功能:(1) 录入某位持卡人的基本信息?教师:职工号?姓名?院系?金额; ...

  6. 饭卡管理程序c语言代码,C++ 简单饭卡管理系统

    此小应用是基于类和链表的 /***********Person.h****************/ #include #include"Main.h" #ifndef PERSO ...

  7. 基于java+ssm+vue的校园卡一卡通饭卡管理系统

    计算机网络如果结合使用信息管理系统,能够提高管理员管理的效率,改善服务质量.优秀的校园一卡通管理系统能够更有效管理用户校园卡信息业务规范,帮助管理者更加有效管理用户校园卡信息,可以帮助提高克服人工管理 ...

  8. 饭卡管理的C语言实现

    实际上,这个是大一上学期与室友一起做的C语言结课作业,当作我的成长记录吧,中间肯定还有很多青涩与生疏的地方,有人看到请轻虐: #include<stdio.h> #include<s ...

  9. [易语言] 【源码】百宝云之注册/充值/开卡管理系统

    百宝云之 注册/充值/开卡管理系统 1.源码中包含哪些部分? 本源码中分为 百宝云服务器端代码与 本地客户端代码以及 一个附带的数据库.   主要实现了: 用户注册.登录.充值.设置公告.管理开卡等功 ...

  10. 小程序+云开发+cms实现校园管理系统,含图书借阅,饭卡充值,宿舍维修,校园资讯等功能

    一,老规矩先看效果图 小程序端 1,首页 2,校园资讯 3,新闻详情 4,个人中心 5,宿舍维修 6,宿舍维修订单 7,饭卡充值 8,支付 可选择充值金额,由于我们这里没有开通微信支付,所以这里是模拟 ...

最新文章

  1. DynamicProgramming动态规划整理
  2. 浪潮集团执行总裁王柏华:这次人工智能产业发展大潮“是真的”
  3. python和c哪个好学-c语言和python哪个容易
  4. SQL Server 触发器学习总结
  5. 图像处理和计算机视觉中的经典论文
  6. 位运算判断奇偶数_位运算符判断奇偶
  7. sql server 之函数小技巧 整数类型为空是用空字符串替代实现
  8. 高达82 fps的实时文本检测,华科AAAI2020提出可微分二值化模块
  9. 使用PHP对word文档进行操作的方法
  10. android实例教程_Android ConstraintLayout示例教程
  11. Xcode 工程文件打开不出来, cannot be opened because the project file cannot be parsed.
  12. GitHub上收录400余篇任正非的讲话稿
  13. css 3d环形,CSS3 飞行的3D圆环
  14. 用python编写倒计时_python如何倒计时
  15. 真牛皮!wsl安装位置
  16. Redis 客户端哪家强? Lettuce手下见真香!
  17. Volatility3内存取证工具使用详解
  18. ArcGIS教程:确定空间关系
  19. 大型施工程机械设备资产管理融资租赁方案
  20. 二叉平衡树之AVL树【手动实现代码】

热门文章

  1. vue微信扫码登录过程
  2. 文件编码 ANSI、GBK、GB2312、MS936、MS932、SJIS、Windows-31 、EUC-JP 、EBCDIC 等等之间的区别与联系
  3. 全球与中国调频广播发射机市场深度研究分析报告
  4. java视频上传方法_java大视频上传实现
  5. 《Windows游戏编程大师技巧》一、学海无涯
  6. 车联网网络安全技术研究
  7. java计算机毕业设计Vue.js网上书城管理系统设计与实现服务端源码+mysql数据库+系统+lw文档+部署
  8. Delphi基础教程第一季
  9. hbuildx微信开发者工具-微信小程序测试
  10. 【免公众号】新版盲盒交友程序源码盲盒交友系统一元交友