目录

C 语言学前班

10分钟入门、10天练习,哪有那么难。根本用不着科班通过上课学几个月。。


程序 = 数据结构 + 算法

  • 数据结构:容器来存储要进行各种操作的数据。
  • 算法:对各种数据进行各种操作(加减乘除,增删改查 + 判(判断)排(排序)复(复位))输出结果来达到计算、控制目的。就像函数 f(x),有输入和输出的盒子,代入 x,计算得到 y = y(x),这个过程,就是算法。吃经验和天赋,需要反复学习和实践,经验出编程思维。

数据结构:基本数据类型

定义一个 存储占用空间 1 字节的 数字,或者叫 变量 a:char a;

定义一个 整形类型(整数)变量,一般占用 4 字节:int d;

定义一个 浮点类型(小数)变量,一般占用 4 字节:float c;

变量可以装填数字,比如 a = 10;c = 3.14; 等等。

算法:顺序、分支和循环

所有的可以归结为算法的问题都可以通过 运算+赋值+顺序+分支+循环 等基本要素完成,支持做到这样的机器可以被称为图灵完备的。

  • 顺序执行:计算 和 赋值。

    • (a^2 + b^2) + c^2,这是计算,这是一个算式,最终计算结果是一个数,这个数 为 0 就为 逻辑上的 假(false),否则为 逻辑上的 真(true)
    • d = 2*c^2;,这是赋值,2*c^2 的值赋给 d,这是一个 语句,以 分号 ; 标识结束,这是要被执行的语句,是行为。
  • 分支 if-else、switch-case、三段式。

    • 1
      2
      3
      4
      5
      6
      7
      
      if( <判断这个式子是否为真> )
      {
          /* 如果为真就执行这里 */
      }else
      {
          /* 不为真就执行这里 */
      }
      
    • 1
      2
      3
      4
      5
      
      switch( 一个整形变量 a )
          case <某一个整数 x>: /* 如果 a 等于 x 就执行这里 */ break;
          case <某一个整数 h>: /* 如果 a 等于 h 就执行这里 */ break;
          case <某一个整数 y>: /* 如果 a 等于 y 就执行这里 */ break;
      default: /* 哪个都不等于就执行这里 */ break;
      
    • 1
      
      a = <这个式子是否为真> ? <如果为 真 就把这里的值赋给 a> : <如果为 假 就把这里的值赋给 a>;
      
  • 循环 while、do-while、for。

    • 1
      2
      3
      4
      5
      
      while( <1、判断这个式子是否为真> )
      {
          2、如果为真就执行这里
          3、执行完毕后,再去 判断 步骤 1 里的 式子是否为真,若为真则接着执行 步骤2,否则跳出这个循环
      }
      
    • 1
      2
      3
      4
      5
      
      for( <1、先执行这里的语句一次> ; <2、再判断这里的式子是否为真> ; <语句2> )
      {
          3、如果步骤 2 中的 式子为  则执行这里
          4、执行完后,再执行 <语句2>,然后再 判断 步骤 2 里面的式子是否为真,如果为真则执行步骤 3,否则跳出这个循环
      }
      

正式开始吧~

现在带着这些印象再去看正经的、完整的、系统的 C 教程,应该会体会到 “行云流水” 的学习感觉吧(大概)。