2019-07-29 Day2 C语言基础学习——银行自助提款机demo

目的

今天对C语言基础部分进行了学习,分别是数据类型,选择结构和循环结构,在初学C语言时,可能会遇到有些问题理解不透,或者表达方式与以往数学学习中不同,这就要求不气馁,而不明白的地方多问多想,鼓足勇气进行学习,这不但是学习c语言,也时对任何一门学科学习的不二门法。最初接触C语言时要弄清楚各种变量的定义方法,特别是常用的类型,int、float、char等等,还要掌握各种类型的输入、输出格式。在对函数的学习过程中,一定要弄明白函数的作用和具体格式。值得强调的是在写循环程序时,一定要弄清楚循环的条件。

技术

  1. “”表示编译器首先从自己的工程里面去查找这个有文件。如果没有,那么会从系统库里面去寻找;<>表示编译器会首先从系统库里面去查找这个头文件。如果没有,那么会从当前工程里面去查找
  2. 程序运行过程:
    预编译/预处理 将头文件进行展开->完整的程序
    汇编 将高级语言转化为汇编语言 Mov sq1,sq2
    编译 得到二进制数据
    链接 1.0 2.0 3.0 —>可以执行的程序.exe
    运行
  3. if语句的三种形式以及其使用方法
  4. for语句的形式以及其使用方法
  5. 以while语句实现循环
  6. 以switch语句实现选择

如何使用技术

if语句的三种形式以及其使用方法

1.if (condition) {statement}

if(a>b){
     t=a;
     a=b;
     b=t;
}

如果a大于b,则通过变量t,实现变量a和变量b互换值

2.if (condition) {statement} else {statement}

if(x>0){
     y=1;   
}else{
     y=2;
}

此表示如果x大于0,y就等于1;反之,y就等于2

3.if (condition) {statement} else if (condition) {statement}

if(nember>500){ 
     cost=0.15;
}else if (number>300){
     cost=0.10;
}

for语句的形式以及其使用方法

for(循环控制变量的初始化;条件;变化)
和数组相关 并且需要知道当前是第几次

for (int i = 0; i < 4; i++)
    {
        printf("Hello Would!");
        }

以while语句实现循环

while(条件)
不关心当前是第几次

while(i<=100)
    {
        sum=sum+i;
        i++;
}

以switch语句实现选择

switch (a)
            {
                case 1:printf("请输入取款金额:");
                break;
                case 2:printf("请输入存款金额:\n");
                break;
                case 3:printf("设置密码\n");
                break;
                case 4:printf("退出\n");
                break;
                default:printf("输入不合法 请重新输入:");
                break;
                } 

实际使用

运用今天学到的知识,写一个关于银行自动提款机的demo

#include "stdafx.h"
#include "iostream"

int _tmain(int argc, _TCHAR* argv[])
{/*
   变量的作用域 从定义到结束的作用范围
   局部变量
   */
    int a;
    int password = 123456;
    int money;
    int savemoney = 3000000;
    int b,new_password1,new_password2;
    //欢迎界面
    printf("*************\n");
    printf("  欢迎光临   \n");
    printf("*************\n");
    printf("请输入密码:");
    scanf_s("%d",&password);
        //显示操作
    for (int i = 0; i < 4; )
    {
        if(password != 123456){
            printf("密码错误 还有%d次机会 请重新输入:",(4-i));
            scanf_s("%d",&password);
            i++;
        }else if(password == 123456){
            begin:
            printf("1.取款\n");
            printf("2.存款\n");
            printf("3.设置密码\n");
            printf("4.退出\n");
            scanf_s("%d",&a);
            switch (a)
            {
                case 1:printf("请输入取款金额:\n");
                    scanf_s("%d",&money);
                    if ((savemoney-money)>=0)
                    {
                        printf("取款成功\n");
                        printf("余额为%d\n",(savemoney-money));
                        printf("将要返回上一级");
                        goto begin;
                    }else{
                        printf("余额不足 是否返回上一级\n");
                        printf("返回请按1  退出请按2");
                        scanf_s("%d",&b);
                        if (b == 1)
                        {
                            goto begin;
                        }else{
                            goto ending;
                        }
                    }
                system("pause");
                return 0;
                case 2:printf("请输入存款金额:\n");
                    scanf_s("%d",&money);
                    printf("存款成功 当前余额为:%d\n",(savemoney+money));
                    printf("将要返回上一级");
                    goto begin;
                system("pause");
                return 0;
                case 3:printf("设置密码\n");
                    printf("请输入原始密码:");
                    scanf_s("%d",password);
                    bottom:
                    if (password != 123456)
                    {
                        printf("密码错误 将返回上一级");
                        goto begin;
                    }else{
                        printf("请设置密码:");
                        scanf_s("%d",&new_password1);
                    }
                    printf("请确认密码:");
                    scanf_s("%d",&new_password2);
                    if (new_password1 == new_password2)
                    {
                        printf("密码设置成功 即将返回上一级");
                        goto begin;
                    }else{
                        printf("两次密码不一致 请重新设置:");
                        goto bottom;
                    }

                system("pause");
                return 0;
                case 4:printf("退出\n");
                system("pause");
                return 0;
                default:printf("输入不合法 请重新输入:");
                system("pause");
                return 0;
                } 
        }
        }
    ending:
    system("pause");
    return 0;
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 注:这是第三遍读《C语言深度解剖》,想想好像自从大学开始就没读完过几本书,其中谭浩强的那本《C语言程序设计(第四版...
    HavenXie阅读 5,780评论 1 6
  • 判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(...
    苏州丸子阅读 6,483评论 0 0
  • 自行创建一个员工信息表info,里面记录着员工姓名,年龄,地址以及工资,下面的实验要使用。 mysql> crea...
    张伟科阅读 5,224评论 0 2
  • 在C语言中,五种基本数据类型存储空间长度的排列顺序是: A)char B)char=int<=float C)ch...
    夏天再来阅读 9,043评论 0 2
  • 长春,今天阴天,让我在被子里多赖了四十分钟才起,现在八点过一分,我端正的坐在电脑前想倾诉此刻的心情,这要是在家,三...
    一个谎话精的自白阅读 2,548评论 0 1

友情链接更多精彩内容