第1章 程序设计概述
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
的概念
例1-1
一个加法程序。 /* 程序e1-1.c */ main() { int a,b; a=8; b=2000; printf("%d\n",a+b); } 概念 程序行、主函数、数据类型、变量、赋值、表达式、系统函数、 输出、输出格式、函数体、注释。
5.C语言程序的上机实 现
在计算机上实现一个C语言程序通常包括四个阶段:
(1)编辑(Edit):录入并保存编写的C源程序,扩展名一般为“.c”。
(2)编译(Compile):将源程序转化成二进制目标代码(*.obj ) 。 (3)连接(Link):编译所生成的目标文件还不能直接执行,需要通过连 接程序把它和其他目标文件以及系统所提供的库函数进行连接装配,生 成可执行文件才能执行。 (4)运行(Run):执行在连接阶段生成的可执行文件,得到运行结果。
1.2.4标识符与保留字
使用标识符时必须注意
⑴ 标准C不限制标识符的长度,但它受各种版本的C语言 编译系统限制,同时也受到具体机器的限制。 ⑵ 在标识符中,大小写是有区别的。如,max和MAX是 两个不同的标识符。 ⑶ 标识符虽然可由程序员随意定义,但标识符是用于标 识某个量的符号,因此,命名应尽量有相应的意义,以便 阅读理解。 ⑷ 保留字不能用作用户定义的标识符。所谓保留字(也 称关键字)是由C语言规定的具有特定意义的字符串,如 标准输入输出函数名scanf和printf、控制命令字if、 while等都是系统的保留字。
1.2.3 简单的C程序及其包含的概念
程序特点
每个程序都由main()函数构成,由于main()函数的函数 体内容不同,程序也就各自具有了不同的功能。 main()函数的一般结构 main() { 函数体语句 }
1.2.4标识符与保留字
标识符
在程序中使用的变量名、函数名等统称。除库函数的函数名 由系统定义外,其余都由用户自定义。 标识符构成 任何一个标识符只能是由字母(A~Z,a~z)、数字(0~ 9)和下划线“_”构成的字符串,其他符号不能出现在标识 符中,并且标识符的第一个字符必须是字母或下划线。 合法标识符 a BOOK1 max _add num_1 非法标识符 3s 不允许以数字开头 s*T 使用了非法字符“*” book-1 出现非法字符“-”(减号)
要上机实现一个C语言程序,首先需要安装C语言的支持 系统。 ——Turbo C 2.0系统,是一个集成的开发环境。
——Visual C++ 6.0 是目前广为流行的面向对象程序开
1.2.2 C语言的特点
⑴ C语言是一种结构化语言,它层次清晰,便于按模 块化方式组织程序,易于调试和维护。 ⑵ C语言的表现能力和处理能力极强,它不仅具有丰 富的运算符和数据类型,便于实现各类复杂的数据结构, 它还可以直接访问内存的物理地址。 ⑶ 由于C语言实现了对硬件的编程操作,因此C语言 集高级语言和低级语言的功能于一体,既可用于系统软件 的开发,也适合于应用软件的开发。 ⑷ C语言还具有效率高、可移植性强等特点,因此广 泛地移植到了各种类型计算机上,从而形成了多种版本的 C语言。 ⑸ C语言同时具有汇编语言和高级语言的优势。
2.算法
(1)什么是算法
算法就是求解问题的方法,是计算机处理问题所需要的过程。 算法的最终实现是计算机程序。
(2)算法规则
一个算法通常由一系列求解步骤来完成,计算机能够在执行有限的 步骤后给出正确的结果。
(3)算法不唯一
对于同一个问题,可以有多种算法。 (4)算法的常用描述工具有: 流程图法,N-S图法,PAD图法、伪码法等。 (5)算法优劣评价标准 正确性和清晰易懂性永远是一个好算法的基本条件 。
1.2.5 C语言程序的基本特点
⑴ C程序由函数构成,而且每个程序可以有多个函数。 ⑵ 一个源程序不论由多少个函数组成,有且只能有一个 main()函数,即主函数。 ⑶ C程序总是从main()函数开始执行,可以将main()函 数放在程序的任何位置。 ⑷ 每一个语句都必须以分号结尾。 ⑸ C语言中没有专门的输入、输出语句,输入输出是通过 scanf()和printf()两个库函数实现的。 ⑹ C语言程序对字符的大、小写有严格的区别,标识符的 大写形式和小写形式是不一样的。 ⑺ C程序中可以用“/* … */”对任何部分进行注释。
1.1.2 算法
流程图符号、功能
1.1.2 算法
计算100以内的所有偶数和的算法流程图
开始 0 0 i s
i<100 yes s+i i+2 s i
no
输出s
结束
1.1.3程序设计
程序设计 用计算机语言(程序设计语言)实现算法的过程。 编写程序的基本要求 语法上的正确性、逻辑的正确性。 程序评价 可靠性、运行速度、占用存储空间、易懂性 程序设计的两种方式 面向过程的程序设计、面向对象的程序设计、 良好的编程习惯 合理使用注释 要使用含义鲜明的符号名 程序格式化
1.2.3 简单的C程序及其包含的概念
例1-2 一个改进的加法程序 main() { int a,b; printf("Input a,b:"); scanf("%d,%d",&a,&b); printf("a+b=%d\n",a+b); } 例1-3 最简单C程序 main() { printf("Hello,word!\n"); }
1. 计算机语言和程 序
计 算 机 程 序
1.1.1计算机语言和程序
计算机语言 计算机能够理解和识别的软件系统。任何一种计算机语 言都有一定的使用规则,称为语法规则。 计算机语言类型 机器语言、汇编语言、高级语言。 高级语言进一步分为面向过程的程序设计语言和面向对 象的程序设计语言。 计算机程序 按照计算机语言规则组织起来的一组命令。 或者: 计算机能够自动执行的一组指令的集合。
C语言程序设计 第1章 程序设计概述
第1章 程序设计概述
主要内容
1.1 程序设计的基本概念 1.2 C语言概述 1.3 C语言程序的上机实现
1.1 程序设计的基本概念 1.1.1 计算机语言和程序 1.1.2 算法 1.1.3 程序设计 1.1.4 程序的错误和测试 1.1.5 输入和输出
C语言的保留关键字(32个)
char long union const register case else short float void static int double enum extern unsigne d struct signed auto break do if
volatile typedef continu default e for goto
C语言的产生和发展 C语言的特点 简单的C程序及其包含的概念 标识符与保留字 C语言程序的基本特点
1.C语言概述
Bell Labs
贝尔实验室 UNIX操作系统 著名的 K&R组合
Dennis M. Ritchie简介 1941.9.9出生,哈佛大学数学博士。 29岁(1969年)与汤普森合作发明UNIX; 31岁(1972年)设计发明C语言; 32岁(1973年)与K合作用C改写UNIX ; 37岁(1978年) 出版白皮书:The C Programming Language 42岁(1983年)获得图灵奖; 58岁(1999年)获得全美技术勋章; 现年66岁,仍但任朗讯科技公司贝尔实验
4.C语言程序的基本特点:
/* 程序e101.c */ main() { int a,b; a=8; b=2000; printf("%d\n",a+b); }
/* 程序e103.c */ main() { printf("Hello,word!\n ");
/* 程序e102.c */ main() { int a,b; printf("Input a,b:");
室下属的计算机科学研究中心系统软件研究 部主任。
C语言之父,UNIX之父 Dennis M.Ritchie (丹尼斯·利奇) 在1983年两人联合 接受了计算机最高 奖图灵(Turing)奖
丹尼斯·利奇(Dennis M. Ritchie) 和肯·汤普森(Ken Thompson)
1999年4月27日,美国时任总统克林顿在 白宫向他们两人授予全美技术勋章,这是 对他们成就的最高评价。
计 算 机 语 言
计算机语言是计算机能够理解和识别的语言。它通过 一定的方式
任何一种计算机语言都有一定的使用规则,通常称之为语法规则。 向计算机传送操作指令。 计算机语言的种类很多,大体上经过了由低级语言到高级语言的 发展过程,目前广泛使用的高级语言有Pascal、 C、C++、VB、VC++、 Java、Delphi等。 Nicklaus Wirth main() (尼克劳斯· 威茨) 计算机程序是按照计算机语 { Pascal之父 言规则 int i,s; i=1; 组织起来的一组指令。 数据结构+算法=程序 s=0; while(i<1000) 一个用C语言编写的 { s=s+i; 计算 i=i+2; } 1000以内的所有奇数 printf("sum=%d\n",s);
1.1.4 程序的错误和测试
程序的错误 语法错误:程序编写时因不符合程序语言的语法 规则而造成的错误。 逻辑错误:程序能够运行,但得不到要求的正确 结果。 常用的测试方法 黑盒法:黑盒法把程序看成一个黑盒子,只测试 程序是否满足它的功能,不考虑程序的内部逻辑 和特性。 白盒法:又称逻辑覆盖法。测试时,程序中的每 一条语句至少要执行一次,最彻底的是覆盖程序 中的每一条路径。
1.1.1计算机语言和程序
计算100以内的所有偶数和程序
main() { int i,s; i=0; s=0; while(i<100) { s=s+i; i=i+2; } printf("sum=%d\n",s); }
1.1.2 算法
算法 求解问题的方法,是在有限步骤内求解某一问题所 使用的一组定义明确的规则,是计算机处理问题所 需要的过程。 算法的最终实现是计算机程序。 算法特性 ⑴ 有穷性。 ⑵ 确定性。 ⑶ 多样性。 ⑷ 输入和输出特性。 ⑸ 通用性。
1.1.2 算法
“计算100以内的所有偶数和”问题的算法
步骤①
为i和s赋初值,使i=0,s=0;继续下一步
骤; 步骤② 判断i的值,若i<100 则继续执行下一步 骤;否则,转步骤⑥; 步骤③ s加上i,继续执行下一步骤; 步骤④ i加上2,继续执行下一步骤; 步骤⑤ 转步骤② 步骤⑥ 显示s的值,继续执行下一步骤; 步骤⑦ 结束。
1.C语言概述 C语言是 1972年由美国的Dennis Ritchie设计 发明的,并首次在UNIX操作系统的 DEC PDP11 计算机上使用。 在1970年,AT&T 贝尔实验室的 Ken Thompson根据BCPL语言设计出较先进的并取 名为 B的语言,最后导致了C语言的问世。 1983年,美国国家标准化协会(ANSI)根据C 语言问世以来各种版本对 C的发展和扩充,制定 了C的标准,称为 ANSI C。1987年ANSI又公 布了新的标准——87 ANSI C。 在C的基础上,1983年又由贝尔实验室的 Bjarne Strou-strup推出了C++。 C++进一
1.1.5 输入和输出
输入 为程序提供数据。从键盘输入数据是最基本的数据 输入方式。 输出 从程序获得数据。从显示器输出结果是最基本的输 出方式。 输入和输出通常是程序的基本功能,输入和输出往 往有一定的格式要求。
1.2 C语言概述
1.2.1 1.2.2 1.2.3 1.2.4 1.2.5
scanf("%d,%d",&a, &b); ⑴ C程序完全是由函数构成的,每个程序可由一个或多个 } printf("a+b=%d\n", 函数组成。 a+b); ⑵ 一个源程序可由多个函数组成,但有且仅有一个 main() } 函数。 ⑶ C程序总是从主函数开始执行,而不论main()函数在什 么位置。 ⑷ 每个语句都以分号结尾,但函数头和花括号“}”之后不 能加分号。
例1-1
一个加法程序。 /* 程序e1-1.c */ main() { int a,b; a=8; b=2000; printf("%d\n",a+b); } 概念 程序行、主函数、数据类型、变量、赋值、表达式、系统函数、 输出、输出格式、函数体、注释。
5.C语言程序的上机实 现
在计算机上实现一个C语言程序通常包括四个阶段:
(1)编辑(Edit):录入并保存编写的C源程序,扩展名一般为“.c”。
(2)编译(Compile):将源程序转化成二进制目标代码(*.obj ) 。 (3)连接(Link):编译所生成的目标文件还不能直接执行,需要通过连 接程序把它和其他目标文件以及系统所提供的库函数进行连接装配,生 成可执行文件才能执行。 (4)运行(Run):执行在连接阶段生成的可执行文件,得到运行结果。
1.2.4标识符与保留字
使用标识符时必须注意
⑴ 标准C不限制标识符的长度,但它受各种版本的C语言 编译系统限制,同时也受到具体机器的限制。 ⑵ 在标识符中,大小写是有区别的。如,max和MAX是 两个不同的标识符。 ⑶ 标识符虽然可由程序员随意定义,但标识符是用于标 识某个量的符号,因此,命名应尽量有相应的意义,以便 阅读理解。 ⑷ 保留字不能用作用户定义的标识符。所谓保留字(也 称关键字)是由C语言规定的具有特定意义的字符串,如 标准输入输出函数名scanf和printf、控制命令字if、 while等都是系统的保留字。
1.2.3 简单的C程序及其包含的概念
程序特点
每个程序都由main()函数构成,由于main()函数的函数 体内容不同,程序也就各自具有了不同的功能。 main()函数的一般结构 main() { 函数体语句 }
1.2.4标识符与保留字
标识符
在程序中使用的变量名、函数名等统称。除库函数的函数名 由系统定义外,其余都由用户自定义。 标识符构成 任何一个标识符只能是由字母(A~Z,a~z)、数字(0~ 9)和下划线“_”构成的字符串,其他符号不能出现在标识 符中,并且标识符的第一个字符必须是字母或下划线。 合法标识符 a BOOK1 max _add num_1 非法标识符 3s 不允许以数字开头 s*T 使用了非法字符“*” book-1 出现非法字符“-”(减号)
要上机实现一个C语言程序,首先需要安装C语言的支持 系统。 ——Turbo C 2.0系统,是一个集成的开发环境。
——Visual C++ 6.0 是目前广为流行的面向对象程序开
1.2.2 C语言的特点
⑴ C语言是一种结构化语言,它层次清晰,便于按模 块化方式组织程序,易于调试和维护。 ⑵ C语言的表现能力和处理能力极强,它不仅具有丰 富的运算符和数据类型,便于实现各类复杂的数据结构, 它还可以直接访问内存的物理地址。 ⑶ 由于C语言实现了对硬件的编程操作,因此C语言 集高级语言和低级语言的功能于一体,既可用于系统软件 的开发,也适合于应用软件的开发。 ⑷ C语言还具有效率高、可移植性强等特点,因此广 泛地移植到了各种类型计算机上,从而形成了多种版本的 C语言。 ⑸ C语言同时具有汇编语言和高级语言的优势。
2.算法
(1)什么是算法
算法就是求解问题的方法,是计算机处理问题所需要的过程。 算法的最终实现是计算机程序。
(2)算法规则
一个算法通常由一系列求解步骤来完成,计算机能够在执行有限的 步骤后给出正确的结果。
(3)算法不唯一
对于同一个问题,可以有多种算法。 (4)算法的常用描述工具有: 流程图法,N-S图法,PAD图法、伪码法等。 (5)算法优劣评价标准 正确性和清晰易懂性永远是一个好算法的基本条件 。
1.2.5 C语言程序的基本特点
⑴ C程序由函数构成,而且每个程序可以有多个函数。 ⑵ 一个源程序不论由多少个函数组成,有且只能有一个 main()函数,即主函数。 ⑶ C程序总是从main()函数开始执行,可以将main()函 数放在程序的任何位置。 ⑷ 每一个语句都必须以分号结尾。 ⑸ C语言中没有专门的输入、输出语句,输入输出是通过 scanf()和printf()两个库函数实现的。 ⑹ C语言程序对字符的大、小写有严格的区别,标识符的 大写形式和小写形式是不一样的。 ⑺ C程序中可以用“/* … */”对任何部分进行注释。
1.1.2 算法
流程图符号、功能
1.1.2 算法
计算100以内的所有偶数和的算法流程图
开始 0 0 i s
i<100 yes s+i i+2 s i
no
输出s
结束
1.1.3程序设计
程序设计 用计算机语言(程序设计语言)实现算法的过程。 编写程序的基本要求 语法上的正确性、逻辑的正确性。 程序评价 可靠性、运行速度、占用存储空间、易懂性 程序设计的两种方式 面向过程的程序设计、面向对象的程序设计、 良好的编程习惯 合理使用注释 要使用含义鲜明的符号名 程序格式化
1.2.3 简单的C程序及其包含的概念
例1-2 一个改进的加法程序 main() { int a,b; printf("Input a,b:"); scanf("%d,%d",&a,&b); printf("a+b=%d\n",a+b); } 例1-3 最简单C程序 main() { printf("Hello,word!\n"); }
1. 计算机语言和程 序
计 算 机 程 序
1.1.1计算机语言和程序
计算机语言 计算机能够理解和识别的软件系统。任何一种计算机语 言都有一定的使用规则,称为语法规则。 计算机语言类型 机器语言、汇编语言、高级语言。 高级语言进一步分为面向过程的程序设计语言和面向对 象的程序设计语言。 计算机程序 按照计算机语言规则组织起来的一组命令。 或者: 计算机能够自动执行的一组指令的集合。
C语言程序设计 第1章 程序设计概述
第1章 程序设计概述
主要内容
1.1 程序设计的基本概念 1.2 C语言概述 1.3 C语言程序的上机实现
1.1 程序设计的基本概念 1.1.1 计算机语言和程序 1.1.2 算法 1.1.3 程序设计 1.1.4 程序的错误和测试 1.1.5 输入和输出
C语言的保留关键字(32个)
char long union const register case else short float void static int double enum extern unsigne d struct signed auto break do if
volatile typedef continu default e for goto
C语言的产生和发展 C语言的特点 简单的C程序及其包含的概念 标识符与保留字 C语言程序的基本特点
1.C语言概述
Bell Labs
贝尔实验室 UNIX操作系统 著名的 K&R组合
Dennis M. Ritchie简介 1941.9.9出生,哈佛大学数学博士。 29岁(1969年)与汤普森合作发明UNIX; 31岁(1972年)设计发明C语言; 32岁(1973年)与K合作用C改写UNIX ; 37岁(1978年) 出版白皮书:The C Programming Language 42岁(1983年)获得图灵奖; 58岁(1999年)获得全美技术勋章; 现年66岁,仍但任朗讯科技公司贝尔实验
4.C语言程序的基本特点:
/* 程序e101.c */ main() { int a,b; a=8; b=2000; printf("%d\n",a+b); }
/* 程序e103.c */ main() { printf("Hello,word!\n ");
/* 程序e102.c */ main() { int a,b; printf("Input a,b:");
室下属的计算机科学研究中心系统软件研究 部主任。
C语言之父,UNIX之父 Dennis M.Ritchie (丹尼斯·利奇) 在1983年两人联合 接受了计算机最高 奖图灵(Turing)奖
丹尼斯·利奇(Dennis M. Ritchie) 和肯·汤普森(Ken Thompson)
1999年4月27日,美国时任总统克林顿在 白宫向他们两人授予全美技术勋章,这是 对他们成就的最高评价。
计 算 机 语 言
计算机语言是计算机能够理解和识别的语言。它通过 一定的方式
任何一种计算机语言都有一定的使用规则,通常称之为语法规则。 向计算机传送操作指令。 计算机语言的种类很多,大体上经过了由低级语言到高级语言的 发展过程,目前广泛使用的高级语言有Pascal、 C、C++、VB、VC++、 Java、Delphi等。 Nicklaus Wirth main() (尼克劳斯· 威茨) 计算机程序是按照计算机语 { Pascal之父 言规则 int i,s; i=1; 组织起来的一组指令。 数据结构+算法=程序 s=0; while(i<1000) 一个用C语言编写的 { s=s+i; 计算 i=i+2; } 1000以内的所有奇数 printf("sum=%d\n",s);
1.1.4 程序的错误和测试
程序的错误 语法错误:程序编写时因不符合程序语言的语法 规则而造成的错误。 逻辑错误:程序能够运行,但得不到要求的正确 结果。 常用的测试方法 黑盒法:黑盒法把程序看成一个黑盒子,只测试 程序是否满足它的功能,不考虑程序的内部逻辑 和特性。 白盒法:又称逻辑覆盖法。测试时,程序中的每 一条语句至少要执行一次,最彻底的是覆盖程序 中的每一条路径。
1.1.1计算机语言和程序
计算100以内的所有偶数和程序
main() { int i,s; i=0; s=0; while(i<100) { s=s+i; i=i+2; } printf("sum=%d\n",s); }
1.1.2 算法
算法 求解问题的方法,是在有限步骤内求解某一问题所 使用的一组定义明确的规则,是计算机处理问题所 需要的过程。 算法的最终实现是计算机程序。 算法特性 ⑴ 有穷性。 ⑵ 确定性。 ⑶ 多样性。 ⑷ 输入和输出特性。 ⑸ 通用性。
1.1.2 算法
“计算100以内的所有偶数和”问题的算法
步骤①
为i和s赋初值,使i=0,s=0;继续下一步
骤; 步骤② 判断i的值,若i<100 则继续执行下一步 骤;否则,转步骤⑥; 步骤③ s加上i,继续执行下一步骤; 步骤④ i加上2,继续执行下一步骤; 步骤⑤ 转步骤② 步骤⑥ 显示s的值,继续执行下一步骤; 步骤⑦ 结束。
1.C语言概述 C语言是 1972年由美国的Dennis Ritchie设计 发明的,并首次在UNIX操作系统的 DEC PDP11 计算机上使用。 在1970年,AT&T 贝尔实验室的 Ken Thompson根据BCPL语言设计出较先进的并取 名为 B的语言,最后导致了C语言的问世。 1983年,美国国家标准化协会(ANSI)根据C 语言问世以来各种版本对 C的发展和扩充,制定 了C的标准,称为 ANSI C。1987年ANSI又公 布了新的标准——87 ANSI C。 在C的基础上,1983年又由贝尔实验室的 Bjarne Strou-strup推出了C++。 C++进一
1.1.5 输入和输出
输入 为程序提供数据。从键盘输入数据是最基本的数据 输入方式。 输出 从程序获得数据。从显示器输出结果是最基本的输 出方式。 输入和输出通常是程序的基本功能,输入和输出往 往有一定的格式要求。
1.2 C语言概述
1.2.1 1.2.2 1.2.3 1.2.4 1.2.5
scanf("%d,%d",&a, &b); ⑴ C程序完全是由函数构成的,每个程序可由一个或多个 } printf("a+b=%d\n", 函数组成。 a+b); ⑵ 一个源程序可由多个函数组成,但有且仅有一个 main() } 函数。 ⑶ C程序总是从主函数开始执行,而不论main()函数在什 么位置。 ⑷ 每个语句都以分号结尾,但函数头和花括号“}”之后不 能加分号。