《C语言程序设计》(2004.5) 第一章概迷(1.2C语言的特点) 三种最基本的结构:顺序、分支、循环。 语句组 N 条 件 语句1 语句2 N 条 顺序结构 Y 语句组 分支结构 循环结构 电子科学与技术系贾伯琪bqjia@ustc.edu.cn
电子科学与技术系 贾伯琪 bqjia@ustc.edu.cn 第一章 概述 (1.2 C语言的特点) 三种最基本的结构:顺序、分支、循环。 语句组 顺序结构 语句1 Y N 条 件 语句2 分支结构 《C语言程序设计》(2004.5) N 条 件 语句组 循环结构 Y
《C语言程序设计》(2004.5) 第一章概迷(1.2C语言的特点) 程序三数据结构十算法 数据结构: 口逻辑结构:计算机外部的数据及其数据之间的关系。 口存储结构:外部数据及其数据之间的关系在计算机 内部的实现。(一般通过类型来表达) 口运算:定义在逻辑结构之上的操作,通过算法描述。 电子科学与技术系贾伯琪bqjia@ustc.edu.cn
电子科学与技术系 贾伯琪 bqjia@ustc.edu.cn 《C语言程序设计》(2004.5) 第一章 概述 (1.2 C语言的特点) 程序 = 数据结构 + 算法 数据结构: ❑ 逻辑结构:计算机外部的数据及其数据之间的关系。 ❑ 存储结构:外部数据及其数据之间的关系在计算机 内部的实现。(一般通过类型来表达) ❑ 运算:定义在逻辑结构之上的操作,通过算法描述
《C语言程序设计》(2004.5) 第一章概迷(1.2C语言的特点) 算法:是对问题求解过程的一种描述,是为解决一个或 类问题给出的一个确定的有限长的操作序列。 口有穷性:对于任意一组合法的输入值,在执行有穷步骤之后 定能结束; 口确定性:对于每种情况下所应执行的操作,在算法中都有确 切的规定(不存在二义性); 口可行性:算法中的所有操作都必须足够基本,都可以通过已 经实现的基本操作运算有限次实现之; 口有输入:算法加工的对象; 口有输出:它是一组与“输入”有确定关系的量值,是算法进 行 信息加工后得到的结果。 电子科学与技术系贾伯琪bqjia@ustc.edu.cn
电子科学与技术系 贾伯琪 bqjia@ustc.edu.cn 《C语言程序设计》(2004.5) 第一章 概述 (1.2 C语言的特点) 算法:是对问题求解过程的一种描述,是为解决一个或一 类问题给出的一个确定的有限长的操作序列。 ❑ 有输入:算法加工的对象; ❑ 有穷性:对于任意一组合法的输入值,在执行有穷步骤之后 一定能结束; ❑ 确定性:对于每种情况下所应执行的操作,在算法中都有确 切的规定(不存在二义性); ❑ 可行性:算法中的所有操作都必须足够基本,都可以通过已 经实现的基本操作运算有限次实现之; ❑ 有输出:它是一组与“输入”有确定关系的量值,是算法进 行 信息加工后得到的结果
《C语言程序设计》(2004.5) 第一章概述(1.2C语言的特点) 用函数作为程序模块以实现程序的模块化结构 # lude <stdio. h> 令以“#’打头的预处理命令用以包含相 #include <math h> 关文件,及定义符号常数。 #define pi 3. 14159 maino[ C程序中的函数、变量、符号常数必须 先定义后使用,否则应作预先声明。 double area double x) 令以main(标识的主函数,它是C程序运行 double r a 开始时由系统调用的一个特殊函数,不管 scanf(%1f",&r) 其所在位置是程序中的前或后,执行总是 r=pow(r,2.0); 从它开始。C程序可由一个或多个函数构成 ,但必须存在一个主函数,执行语句中可 a-area 以调用其它函数,但它不能被其它函数调 printf(area=%f\n", a) 用,也不能自己调用自己。(其它函数指 :C编译系统提供的库函数;用户自定义函 return(o) 数。) 求解园面积的编程示例 电子科学与技术系贾伯琪bqjia@ustc.edu.cn
电子科学与技术系 贾伯琪 bqjia@ustc.edu.cn 《C语言程序设计》(2004.5) 第一章 概述 (1.2 C语言的特点) 用函数作为程序模块以实现程序的模块化结构 #include <stdio.h> #include <math.h> #define PI 3.14159 main(){ double area(double x); double r,a; scanf("%lf",&r); r=pow(r,2.0); a=area(r); printf("area=%f\n",a); return(0); } ❖ 以‘#’打头的预处理命令用以包含相 关文件,及定义符号常数。 ❖ 以main()标识的主函数,它是C程序运行 开始时由系统调用的一个特殊函数,不管 其所在位置是程序中的前或后,执行总是 从它开始。C程序可由一个或多个函数构成 ,但必须存在一个主函数,执行语句中可 以调用其它函数,但它不能被其它函数调 用,也不能自己调用自己。(其它函数指 :C编译系统提供的库函数;用户自定义函 数。) ❖ C程序中的函数、变量、符号常数必须 先定义后使用,否则应作预先声明。 求解园面积的编程示例
《C语言程序设计》(2004.5) 第一章概迷(1.2C语言的特点) maino i 函数的基本形式: double area(double x) double r 函数类型函数名(形式参数说明表){ 数据说明部分; 规定有序 scanf(%1f, &r) 执行语句部分; r=pow(r, 2.0) area (r) 说明: printf(area=%f\n", a 如果没有参数,则可以省略形参表列和形参 return(O) 说明,但括号不能省略; 如果函数值为int整形类型,则可以省略函 double area(double x)i 数类型说明,否则必须显式说明; double y 如果没有数据需要说明,则还可以省略数据 说明部分,甚至执行语句部分,即函数体可以 y=PI*X 为空。 return (y 函数名(){ 求解园面积的编程示例 电子科学与技术系贾伯琪bqjia@ustc.edu.cn
电子科学与技术系 贾伯琪 bqjia@ustc.edu.cn 《C语言程序设计》(2004.5) 第一章 概述 (1.2 C语言的特点) main(){ double area(double x); double r,a; scanf("%lf",&r); r=pow(r,2.0); a=area(r); printf("area=%f\n",a); return(0); } double area(double x){ double y; y=PI*x; return(y); } ❖ 函数的基本形式: 函数类型 函数名(形式参数说明表){ 数据说明部分; 执行语句部分; } 说明: ▪ 如果没有参数,则可以省略形参表列和形参 说明,但括号不能省略; ▪ 如果函数值为int 整形类型,则可以省略函 数类型说明,否则必须显式说明; ▪ 如果没有数据需要说明,则还可以省略数据 说明部分,甚至执行语句部分,即函数体可以 为空。 函数名( ){ } 规定有序 求解园面积的编程示例