美文网首页
Android开发学习——Day2(C语言基础一&实战:ATM机

Android开发学习——Day2(C语言基础一&实战:ATM机

作者: 明天_ff | 来源:发表于2019-07-29 23:05 被阅读0次

    学习安排

    在整个Android开发学习中,首先我要先回顾C语言的知识。把C语言学好,培养自己的逻辑思维是十分重要的。虽然在学校开始学习C语言到现在已经快一年了,但是我还是有信心将自己的C语言编程水平再提升一个档次。

    学习目的

    今天C语言主要学习的是初步认识C语言运行过程、基本数据类型、变量的定义与声明、常用的语句和一次具体项目实战:编写一个简易ATM机存取款系统。

    C语言运行过程

    在以前的编程过程中,我仅仅需要写好代码,然后在相应的开发环境中运行就好了。但其实,在非集成化开发环境中要运行一个程序是很复杂的一个过程:

    1.需要在文本编辑器中写好代码;

    2.通过编译器进行预编译/预处理、汇编、编译,将高级语言转化为低级语言;

    3.得到计算机可以识别的二进制数据,链接和运行,显示结果。

    C语言基础知识(一)

    1.程序入口点和主函数:

    1)#include <stdio.h>

    "" 表示编译器会首先从自己的工程里面去查找这个头文件,如果没有,那么会从系统库里面去查找;

    <> 表示编译器会首先从系统库里面去查找这个头文件,如果没有,那么会从当前工程里面去查找。

    2)main函数:任何一个程序必须有一个入口点

    返回值:int 标识这个程序的运行结果:0正常 1失败

     0:程序正常退出,程序的资源自己分配;

     1: 非正常退出,程序会没收运行过程中获取的资源。

    2.基本数据类型:

    int   整型:64位系统里面占4个字节,32位占2个字节

    输出格式:%d  (%02d 不足的补齐  eg:显示"01");

    float   浮点型:占4个字节内存空间

    输出格式:%f  (%.1f 保留1位有效数字);

    double   双精度浮点型:占8个字节内存空间

    输出格式:%f  ;

    long   长整型:占8个字节内存空间

    输出格式:%ld;

    char   字符型:占1个字节内存空间

    输出格式:%c输出字符  %d输出ASCII码值;

    bool    布尔类型:true/false 非零即真 零即假;

    3.变量的定义与声明

    定义一个整形变量,计算机会立刻为我们分配内存空间,如:int a = 1;

    特点:运行时占空间,使用时效率高;

    声明一个整型变量,计算机没有分配内存空间,如:int b 使用的时候才会分配内存空间 b = 20;

    特点:运行时不占空间,使用时速度慢一点;

    4.实战项目

    我们先来看看实现效果:(初始密码为”123456“,初始金额为0)


    输入密码界面

    输入密码:

    进入界面

    存款操作:

    存款界面

    取款操作:

    取款界面

    查询余额操作:

    查询界面

    设置密码操作:


    设置密码界面

    退出操作:

    退出界面

    以上为ATM机模拟系统的全部正常操作,但是在日常生活中,人们不时会遇到一些实际问题,如输入密码错误,取款余额不足等。那么对于我们开发人员来说,就需要将实际情况考虑进程序当中。我们也来看看其实现效果:以输入密码错误为例:

    密码输入错误:输入一次错误会继续弹出“输入密码界面“:

    密码错误界面

    当密码输入错误时不仅会报错,还会记录错误次数,当超过五次时会退出程序:

    冻结界面

    技术

    要实现上述项目效果,编写C语言代码其实并不困难,但有几处关键点需要注意:

    1.退出效果

    代码实现--退出

    用上图红圈中”system("pause");“使打印内容保留,用“exit(0);”使程序退出。

    2.”无限循环“的使用:

    代码实现--无限循环

    代码的其它处理较为常见,全代码如下:

    代码1
    代码2
    代码3
    代码4

    收获感悟

    学习C语言有一种亲切的感觉,毕竟是接触计算机领域的第一们语言,而且数十年经久不衰。很多知识很快就回忆了起来,而且思维能力也有了较大的提升。通过ATM机模拟系统这个实战项目的学习,我对相关知识的理解有更近了一步。不仅如此,从前一些不懂得地方,不会处理的问题,现如今我也能够解决了。

    相关文章

      网友评论

          本文标题:Android开发学习——Day2(C语言基础一&实战:ATM机

          本文链接:https://www.haomeiwen.com/subject/ruwirctx.html