第一章 程序设计和C语言(笔记)
一、程序和程序语言
程序:完成某项事务所预设的活动方式和活动过程。
程序设计:人们描述计算机要做的工作。
对于工作过程的细节动作描述就是一个“程序”。
在一个程序描述中,总有一批预先假定的“基本动作”,是执行程序者能理解和直接完成的。
*程序的进一步细化,叫做“功能分解”,这种逐步细化或者分解的过程,是有关计算机程序设计的讨论中最本质的东西。
二、程序设计语言及其发展
机器语言、汇编语言、高级语言 (编译器 解释器)。
三、程序的功能分解
总结下来就一句话:从上至下,逐层细分。
四、C语言
下面是一个简单的C语言输出
#include <stdio.h>
int main()
{
printf("Hell.c!\n");
}
基本语言含义:
include: 包含。
stdio.h: 标准的输入输出头文件。
int: 整数类型。
main(){}:主函数。
printf();:显示输出函数。
return: 返回。
\n: 换行符。
"=": 把右边的给左边,赋值。
五、C语言的编译和执行
源代码(*.c文件)==> 目标文件(*.obj二进制)==> 连接(*.exe可执行文本)
C语言是一种“自有格式”语言。
注意程序的格式,从写简单的程序养成良好的习惯。
1.4 程序开发过程
一、开发过程
1、分析问题,设计一种解决问题的途径。
2、写出源代码(*.c)。
3、编译连接*.obj——>*.exe。
4、运行可执行程序。
compile:编程。
debug:调试。
二、错误的冲突
1、语法错误:
根据错误提示排除:
1、从错误提示行向上查找。
2、若有多个错误先改第一个。
2、逻辑错误。
三、编译器的提示:
1、Error。
2、warning。警告(分析warning原因)。
四、程序运行中的错误(逻辑错误)
1、读取非安全区域。
2、进入死循环。
3、非法除以0。
4、结果不对。
五、排除程序中的错误
学会用IDE的调试工具
1、追踪。
2、监视。
3、设置断点。
4、中断执行。
最简单、最多使用:插入printf("");
解决问题的过程:
第一步,分析问题,设计一种解决方案。
第二步,用程序语言严格描述这个解决方案。
第三步,在计算机上试用,运行,看能否解决问题。
六、问题与程序
好程序:
1、解决方案比别人好。
2、结构良好,清晰,易于阅读和理解。
3、适应性强。
4、检查程序错误能力。
5、熟悉所用工具和环境。
第一章 程序设计和C语言(笔记)的更多相关文章
- 【C语言】第1章 程序设计与C语言
第1章 程序设计与C语言 程序:一组计算机能识别和执行的 指令. 计算机语言:人和计算机交流信息的.计算机和人都能识别的语言 C语言允许用两种注释方式: //:单行注释 可单独占一行 可出现在一行中其 ...
- 第1章 程序设计和C语言
1.1什么是计算机程序 程序,就是一组计算机能识别和执行的指令.每一条指令使计算机执行特定的操作.只要让计算机执行这个程序,计算机就会“自动地”执行各条指令,有条不紊地进行工作. 1.2什么是计算机语 ...
- 《数学之美》--第一章:文字和语言 vs 数字和信息
PDF下载 第一章 文字和语言 vs 数字和信息 数字.文字和自然语言一样,都是信息的载体,它们之间原本有着天然的联系.语言和数学的产生都是为了同一个目的-记录和传播信息.但是,直到半个多世纪前香农博 ...
- 《大道至简》第一章读后感(java语言伪代码)
中秋放假之际读了建民老师介绍的<大道至简>的第一章,其中以愚公移山的故事形象的介绍向介绍编程的精义.愚公的出现要远远早于计算机发展的历史,甚至早于一些西方国家的文明史.但是,这个故事许是我 ...
- 《HTML与CSS 第一章 认识HTML》读书笔记
一.Web让广播明星黯然失色 要建立Web页面,需要创建用超文本标记语言(HyperText Markup Language,HTML)编写的文件,把它们放在一个Web服务器上 二.Web服务器能做什 ...
- 第一章 Actionscript学习基本知识笔记及flashdevelop软件的安装问题
OOP:封装.继承.多态. Pubilc :完全公开. Internal:包内类成员可以互相访问. Private:仅当前类可以访问. Protected:当前类和当前类的子类可以访问. 被关键词fi ...
- 第一章,初识C语言
1.1 C语言起源 1.2 选择C语言的理由 1.3 C语言的应用范围 1.4 计算机能做什么 1.5 高级计算机语言和编译器 1.6 语言标准 c90,c99,c11. 1.7 使用C语言的7个步骤 ...
- 《app研发录》第一章 重构,夜未眠笔记
1.1 重新规划android的项目结构 重新规划android的目录结构分两步: 1.建立AndroidLib类库,将与业务无关的逻辑转移到AndroidLib. acitivity存放的是 ...
- CSAPP 第一章 计算机系统漫游
第一章 计算机系统漫游 C语言的起源:(系统级编程的首选) C语言与Unix操作系统关系密切 C语言小而简单:其设计由一个人掌控 C语言是为实践目的设计的:其设计用来实现Unix操作系统 C语言程序编 ...
随机推荐
- HTML5盒子模型。
盒子模型. 盒子由 margin.border.padding.content 四部分组成. margin :外边距 border:边框 padding:内边距 (内容与边框的距离) content: ...
- Docker-容器数据卷
docker容器数据卷相当于外置的移动硬盘 docker容器数据卷主要功能是:容器的持久化.容器间继承+共享数据 特点: (1)数据卷可以容器之间共享或重用数据 (2)卷中更改可以直接生效 (3)数据 ...
- LED相关
P10 模组 分辨率32*16 尺寸320*160 间距 10mm P8 模组 分辨率32*16 尺寸256*128 间距 8mm P7.62 模组 分辨率 ...
- 企业级NGINX的重定向rewrite
vim /usr/local/nginx/conf/nginx.conf server { listen 80; server_name www.ftl.com; rewrite ^/(.*) htt ...
- 主存储器与CPU的连接
半导体存储器的读写时间一般在十几至几百毫微秒之间,其芯片集成度高,体积小,片内含有译码器和寄存器等电路.常用的半导体存储器芯片有多字一位片和多字多位片,如16M位容量的芯片可以有16M×1位和4M×4 ...
- 单例模式中的volatile关键字
在之前学习了单例模式在多线程下的设计,疑惑为何要加volatile关键字.加与不加有什么区别呢?这里我们就来研究一下.单例模式的设计可以参考个人总结的这篇文章 背景:在早期的JVM中,synchr ...
- Scala模式匹配和样例类
Scala有一个十分强大的模式匹配机制,可以应用到很多场合:如switch语句.类型检查等.并且Scala还提供了样例类,对模式匹配进行了优化,可以快速进行匹配. 1.字符匹配 def mai ...
- GCD vs NSOperation
GCD is a lightweight way to represent units of work that are going to be executed concurrently. You ...
- java多线程--实现Runnable接口方式
因为java类只能继承一个类可以实现多个接口的特性,所以一般情况下不推荐使用继承Thread类实现多线程,下面是实现Runnable接口方式的简单多线程代码 package text; /** * 多 ...
- python SimpleHTTPServer
Python2 使用的是SimpleHTTPServer python -m SimpleHTTPServer Python3 合并到了http.server python -m http.serve ...