C程序设计笔记1-5章,简介/数据类型/结构

原创 2017年01月03日 21:32:49

[TOP]

选择《C程序设计》作为自己C的入门书,感觉前面几章还是比较容易理解的。粗读一遍,不求甚解。

简介

常识类

机器语言->(<-汇编程序)汇编语言->(<-编译程序)高级语言
高级语言时期->非结构化->结构化->面向对象
8个byte=1字节 0~255
整数存放:补码形式(以1字节为例)
正数 即二进制存放 如5 00000101
负数 取绝对值的二进制,取反(0变1,1变0),再加1 如-5 11111011

历史

起源BCPL(1967Martin Richards)->B(1970Ken Thompson)->C(1972D.M.Ritchie)
标准C89->C99

基本

程序结构

  1. 源程序文件

    1.1 预处理指令
    1.2 全局声明
    1.3 函数定义

  2. 函数
    2.1 函数首部
    2.2 函数体
  3. 程序是从main函数开始执行的
  4. 输入输出不是C语言提供的而是库内置函数完成的

运行步骤

输入程序->编译->连接处理->运行可执行程序

程序设计

  1. 问题分析
  2. 设计算法
  3. 编写程序
  4. 编译连接
  5. 运行,分析结果
  6. 编写程序文档

算法

data structure 程序中要制定用到那些数据以及这些数据的类型和数据的组织形式
algorithm 对操作的描述
data structure + algorithm = program

算法是程序的灵魂,数据结构是程序的肉体

算法特性

  1. 有穷
  2. 确定 每个步骤不能模棱两可
  3. 有0或多个输入
  4. 有至少1个输出
  5. 有效性 比如1/0是无效的

算法的表示

  1. 自然语言描述 可以理解为一般客户说他想要啥样的产品/结果
  2. 流程图 初中即学过的流程图
    #####三种基本结构
  3. 顺序结构
  4. 选择结构
  5. 循环结构
    3.1 while
    3.2 until(do…while)
  6. N-S流程图 无需箭头,更美观
  7. 伪代码描述 没有语法能懂逻辑就行为交流而生
  8. 计算机语言描述 即使用各语言来实现

程序设计基本方法

  1. 自顶向下 先想要达到什么目的,要干什么
  2. 逐步细化 再想分成几步走,怎么走
  3. 模块化设计 每一步最好各自分开,不要出现一步走错全部重来
  4. 结构化编码 遵循基本结构使更逻辑更清晰

数据结构

  1. 常量 # define
  2. 变量
  3. 常变量 C99 例const int a=3

    符号常量在预编译的时候就把符号替换为值了,而常变量的名字是占存储单元的。

  4. 标识符 即各种名字

数据类型

数据类型

运算符

运算符的优先级

运算符种类
  1. 算数运算符 +-*/
  2. 关系运算符 <>==>=<=!=
  3. 逻辑运算符 !&&||
  4. 位运算符 >> << ~ | ^ &
  5. 赋值运算符 =
  6. 条件运算符 ?:
  7. 逗号运算符 ,
  8. 指针运算符 * &
  9. 求字节数运算符 sizeof
  10. 强制类型转换运算符 (类型)
  11. 成员运算符 . ->
  12. 下标运算符 []
  13. 其他 函数调用运算符()

C语句种类

1.控制语句
1.1 if…else…
1.2 for()…
1.3 while()…
1.4 do…while()…
1.5 continue
1.6 break
1.7 switch
1.8 return
1.9 goto
2. 函数调用
3. 表达式
4. 空语句
5. 复合语句

输入输出

printf
常用格式:d,o,x,u,c,s,f,e
例 %m.nf m为数据宽度 n为小叔位数
scanf
putchar/getchar

选择结构

if…else…
关系运算符和关系表达式
逻辑运算符和逻辑表达式
条件运算符和条件表达式
结构嵌套
switch

循环结构

while
do…while
for()…
循环嵌套

改变循环状态

break 终止
continue 结束本次(本圈)循环

后记 一遍读完觉得貌似学到什么又觉得什么也没学到,一篇读书笔记是必要的。C语言是走向高级大招技能的前置技能点,务必研究扎实。

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

C程序设计笔记1-5章,简介/数据类型/结构

[TOP] 选择《C程序设计》作为自己C的入门书,感觉前面几章还是比较容易理解的。粗读一遍,不求甚解。 简介常识类机器语言->((非结构化->结构化->面向对象 8个byte=1字节 0~25...

C语言程序设计教程笔记_复杂数据类型_结构体

实际应用中会有一些不同数据类型组成的数据实体,这些不同的数据类型的数据项是相互联系的,应该组成一个有机的整体。如果用单独的数据项来表示,就不能体现数据的整体性,不便于操作。 C中使用结构体这...

精选:深入理解 Docker 内部原理及网络配置

网络绝对是任何系统的核心,对于容器而言也是如此。Docker 作为目前最火的轻量级容器技术,有很多令人称道的功能,如 Docker 的镜像管理。然而,Docker的网络一直以来都比较薄弱,所以我们有必要深入了解Docker的网络知识,以满足更高的网络需求。

C++数据结构与程序设计:程序设计原理

1.对于小程序可以先运行程序,再进行修改,不过大的程序从一开始就要小心,妥善地组织,清晰地书写和全面的理解。否则以后可能连接不上项目的其他部分。 2.测试和验证程序,保证程序的正确性,还要维护程序的...

C程序设计笔记9-10章 结构体/IO

结构体 structre看完简介,觉得与PHP中关联数组尤其是object是一样的。定义struct Student{ int num; char name[20]; char...

《C程序设计语言》笔记----第四章 函数与程序结构

第4章函数与程序结构Ø         如果函数定义中省略了返回值类型,则默认为int类型。 Ø       ...

数据结构看书笔记(一)--数据结构简介

关于数据结构的一些根本的术语的了解

数据结构笔记1

1.线性表  文件结构 list.h//list.h       #ifndef _LIST_H    #define _LIST_H //条件编译语句 ...

初学python(二) 变量

目录: 一、整形 二、浮点数 三、字符串 四、布尔值 五、空值简单介绍什么是数据类型: 数据类型在数据结构中的定义是一个值的集合以及定义在这...

C语言程序设计教程笔记_复杂数据类型_数组

在实际中需要处理的数据是复杂多样的。一方面需要处理的数据量可能很大,另一方面,数据之间可能存在某种关系,比如学生学号和姓名的关系     为了简单方便地描述现实中更加复杂的数据,像其他高级语言一样C...

windows程序设计1~5章

 1.随着新程序的启动运行和早先启动的程序运行结束,内存被截成七零八碎的。操作系统必须能够把空闲的内存空间重新整合起来。这就要求系统把内存中的程序块和数据块搬来搬去。 2.其实wind...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)