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 教程,应该会体会到 “行云流水” 的学习感觉吧(大概)。
- b 站视频:C语言入门_搜索_哔哩哔哩-bilibili。
- C 语言教程 | 菜鸟教程 (runoob.com)。
- C语言入门教程,C语言学习教程(非常详细) (biancheng.net)。C语言编译器(C语言编程软件)完全攻略 (biancheng.net)。
- 【规范】万字集大成的C编写规范_Real-Staok的博客-CSDN博客。
- 勤能补拙,熟能生巧。
- 再看 《数据结构与算法》,可参考 【万字总结】数据结构与算法简述和CS综合,保姆级一文打包_Real-Staok的博客-CSDN博客。
- 然后可以学习其它方向,可以参考 【目录贴】软硬件规范化 - 知乎 (zhihu.com)(CSDN 链接)。