zoukankan      html  css  js  c++  java
  • C语言学习的第一章

    首先,学习编写程序要先知道什么是程序,我们为什么要写程序?

    程序就是为了让计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合。程序里有很多算法,算法是解决问题的具体方法和步骤,就像我们想要得到个2,就要有个1+1来计算,1+1=2就是一种算法。由各种各样的算法和数据组合成一条一条的指令,然后指令由上到下的执行就成了一个完整的程序。程序有些时候可以帮助我们做很多的事情,对工作学习都能有很多的帮助,能省很多事情。

    打算写一个程序之前最好先画一个流程图,

    流程图直观、清晰,更有利于人们设计与理解算法。

    它使用一组预定义的符号来说明如何执行特定任务

    它能帮你更好的理清思路做好这个程序的框架,剩下的就像填空题一样,填入我们需要的数据或者代码。下面是流程图的基本组成符号。  

    示例

                                                 

    和其他所有的经过历史沉淀出来的优秀产物一样计算机也有它的发展历史。

                                                 

    1.     机器语言

     简介:所有代码里面只有0和1,每一条指令称为“机器指令”。

    优点 :代码能被计算机直接识别,直接对硬件产生作用,程序的执行效率非常高。

             能直接访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/O端口等。

      缺点:程序全是些0和1的指令代码,可读性差,还容易出错,出错以后想查找的话跟重新写一遍差不多了...

               而且对硬件的依赖性很强,因此不同型号计算机的机器语言又不一样。也就是说,如果2台不同型号的机器想实现一样的功能,需要编写2套完全不同的代码

          要熟记所用计算机的全部指令和指令的涵义,指令又多又难记。

    综上所述,机器语言很难掌握和推广,现在除了计算机生产厂家的专业人员外,绝大多数的程序员已经不再去学习机器语言了。

                                                                 

      

    2.     汇编语言

         简介:用英文单词等符号代替机器指令。

         优点:像机器语言一样,可以直接访问、控制计算机的各种硬件设备占用内存少,执行速度快。

      缺点:不同的机器有不同的汇编语言语法和编译器,代码缺乏可移植性,也就是说,一个程序只能在一种机器上运行,换到其他机器上就不能运行,符号非常多、难记,即使是               完成简单的功能也需要大量的汇编语言代码,很容易产生BUG,难于调试,而且必须对硬件非常了解,开发效率很低,周期长且单调。

      现在还在使用的:操作系统内核、驱动程序、单片机程序,软件的加密、解密、破解, 病毒的制作、防治,程序的调试、分析。

    3.     高级语言

     简介:比较接近自然语言。

    优点:简单、易用、易于理解,语法和结构类似于普通英文, 远离对硬件的直接操作,使得一般人经过学习之后都可以编程,而不用太熟悉硬件知识, 一个程序还可以在不同的机         器上运行,具有可移植性,目前正在大量使用。

    缺点:程序不能直接被计算机识别,需要经编译器翻译成二进制指令后,才能运行到计算机上。

    种类:C语言、C++、C#、Java、Objective-C等。

    4.三种语言的简单对比

    分别用机器语言、汇编语言、C语言(高级语言)来写一个计算1+1的程序。

                  机器语言:简直是天书!!!

            10111000  00000001

            00000000  00000101

            00000001  00000000

                  汇编语言:可读性稍微好一点,但是麻烦

              MOV AX,1

              ADD AX,1

                   C语言:精简、通俗易懂

              1+1

    目前学的是C语言,所以下面就简单介绍一下C语言。C 语言是贝尔实验室的 Dennis Ritchie 在1973 年设计的。C 最初用于开发系统级程序。在微机上,有许多性能良好的商品C 语言系统可用。包括Turbo C、Borland等。

    C语言具有一下特点:

    结构化的程序设计语言:层次清晰,便于按模块化方式组织程序,易于调试和维护

    语句简洁:学习时入门相对容易,C 语言很好地总结了其他语言提出的程序库概念

    功能强大:既可用于系统软件的开发,也适合于应用软件的开发。

    移植性好:只要对这种语言稍加修改,便可以适应不同型号机器或各类操作系统。

    C 程序的基本结构:

    #include <stdio.h>        PS:以.h为后缀的文件被称为头文件,可以是 C 程序中现成的标准库文件,也可以是自定义的库文件。

    void main()

    {

       printf("Hello World\n");

    }

    C语言中的注释:

    //单行注释

    /*

    多行注释

    */

    C语言的执行过程:

                                                

    C语言开发过程

                                                     

    示例

    #include <stdio.h>

      int main()

     {

        // \n:换行   \t:制表位

        /*

        printf("************\n"); 

        printf("*\n");

        printf("*\n");

        printf("*\n");

        printf("*\n");

        printf("************\n");

        */

        printf("姓名\t语文\t数学\t英语\n");

        printf("张三\t80\t90\t70\n");

        return 0;  

       }

  • 相关阅读:
    leetcode 78. 子集 JAVA
    leetcode 91. 解码方法 JAVA
    leetcode 75. 颜色分类 JAVA
    leetcode 74 搜索二维矩阵 java
    leetcode 84. 柱状图中最大的矩形 JAVA
    last occurance
    first occurance
    classical binary search
    LC.234.Palindrome Linked List
    LC.142. Linked List Cycle II
  • 原文地址:https://www.cnblogs.com/fengyeyu/p/6588607.html
Copyright © 2011-2022 走看看