些大学出版社 TSINGHUA UNIVERSITY PRESS 第4章最简单的c程序设计一顺序程序设计 41c语句概述 42程序的三种基本结构 4.3赋值语句 44数据输入输出的概念及在C语言中的实现 4.5字符数据的输入输出 4.6格式输入与输出 47顺序结构程序设计举例 习题
4.1 C语句概述 4.2 程序的三种基本结构 4.3 赋值语句 4.4 数据输入输出的概念及在C语言中的实现 4.5 字符数据的输入输出 4.6 格式输入与输出 4.7 顺序结构程序设计举例 习题 第4章 最简单的c程序设计—顺序程序设计
些大学出版社 TSINGHUA UNIVERSITY PRESS 在上一章介绍了程序中用到的一些基本要素 (常量、变量、运算符、表达式等),它们是 构成程序的基本成分。在第1章中已经介绍 了几个简单的c程序。本章将介绍为编写简 单的程序所必需的一些内容
在上一章介绍了程序中用到的一些基本要素 (常量、变量、运算符、表达式等),它们是 构成程序的基本成分。在第1章中已经介绍 了几个简单的c程序。本章将介绍为编写简 单的程序所必需的一些内容
些大学出版社 TSINGHUA UNIVERSITY PRESS 4.1C语句概述 和其他高级语言一样,c语言的语句用来向计算机系统 发出操作指令。一个语句经编译后产生若干条机器指 令。一个实际的程序应当包含若干语句。应当指出, c语句都是用来完成一定操作任务的。声明部分的内 容不应称为语句。如:inta;不是一个c语句,它不产 生机器操作,而只是对变量的定义。从第1章已知, 个函数包含声明部分和执行部分,执行部分即由语 句组成。c程序结构可以用图41表示。即一个c程序可 以由若干个源程序文件(分别进行编译的文件模块)组 成,一个源文件可以由若干个函数和预处理命令以及 全局变量声明部分组成(关于“全局变量”见第7章, “预编译命令”见第8章),一个函数由数据定义部分 和执行语句组成
4.1 C语句概述 和其他高级语言一样,c语言的语句用来向计算机系统 发出操作指令。一个语句经编译后产生若干条机器指 令。一个实际的程序应当包含若干语句。应当指出, c语句都是用来完成一定操作任务的。声明部分的内 容不应称为语句。如:int a;不是一个c语句,它不产 生机器操作,而只是对变量的定义。从第1章已知, 一个函数包含声明部分和执行部分,执行部分即由语 句组成。c程序结构可以用图4.1表示。即一个c程序可 以由若干个源程序文件(分别进行编译的文件模块)组 成,一个源文件可以由若干个函数和预处理命令以及 全局变量声明部分组成(关于“全局变量”见第7章, “预编译命令”见第8章),一个函数由数据定义部分 和执行语句组成
些大学出版社 TSINGHUA UNIVERSITY PRESS C程序 源程序文件1 源程序文件2]……[源程序文件n 预处理命令全局变量声明仁函数1…函数a 函数首部 函数体 局部变量执行语句 声明 图41
图4.1
些大学出版社 TSINGHUA UNIVERSITY PRESS 在第2章中已经说明,程序应该包括数据描述(由声 明部分来实现)和数据操作(由语句来实现)。数据 描述主要定义数据结构(用数据类型表示)和数据 初值。数据操作的任务是对已提供的数据进行加 C语句可以分为以下5类: (1)控制语句,完成一定的控制功能。c只有9种控 制语句,它们是: ①i0~else~(条件语句 ②orO (循环语句 3 while (循环语句) ④do~whil((循环语句 ⑤ continue(结束本次循环语句)
在第2章中已经说明,程序应该包括数据描述(由声 明部分来实现)和数据操作(由语句来实现)。数据 描述主要定义数据结构(用数据类型表示)和数据 初值。数据操作的任务是对已提供的数据进行加 工。 C语句可以分为以下5类: (1) 控制语句,完成一定的控制功能。c只有9种控 制语句,它们是: ① if()~else~ (条件语句) ② for()~ (循环语句) ③ while()~ (循环语句) ④ do~while() (循环语句) ⑤ continue (结束本次循环语句)
些大学出版社 TSINGHUA UNIVERSITY PRESS ⑥ break(中止执行 switch或循环语句) ⑦ switch(多分支选择语句 8 goto (转向语句) return (从函数返回语句) 上面9种语句中的括号0表示其中是一个条件,~ 表示内嵌的语句。例如:“ifO~else~”的具体 语句可以写成: if(x>y)z=X; else z=y (2)函数调用语句。由一次函数调用加一个分号构 成一个语句,例如: printf(" this is a c state m ent
⑥ break (中止执行switch或循环语句) ⑦ switch (多分支选择语句) ⑧ goto (转向语句) ⑨ return (从函数返回语句) 上面9种语句中的括号()表示其中是一个条件, ~ 表示内嵌的语句。例如: “if()~else~”的具体 语句可以写成: if(x>y) z=x;else z=y; (2) 函数调用语句。由一次函数调用加一个分号构 成一个语句,例如:printf("this is a c statem ent.");
些大学出版社 TSINGHUA UNIVERSITY PRESS (3)表达式语句。由一个表达式构成一个语句, 最典型的是,由赋值表达式构成一个赋值语句 a=3 是一个赋值表达式,而 a=3; 是一个赋值语句。可以看到一个表达式的最后加 个分号就成了一个语句。一个语句必须在最后出 现分号,分号是语句中不可缺少的一部分(而不 像 pascal语言那样,分号只是语句间的分隔符号) 例如 i=i+1 (是表达式,不是语句) i=i+1 (是语句)
(3) 表达式语句。 由一个表达式构成一个语句, 最典型的是,由赋值表达式构成一个赋值语句。 a=3 是一个赋值表达式,而 a=3; 是一个赋值语句。可以看到一个表达式的最后加一 个分号就成了一个语句。一个语句必须在最后出 现分号,分号是语句中不可缺少的一部分(而不 像pascal语言那样,分号只是语句间的分隔符号)。 例如: i=i+1 (是表达式,不是语句) i=i+1; (是语句)
些大学出版社 TSINGHUA UNIVERSITY PRESS 任何表达式都可以加上分号而成为语句,例如i+; 是一语句,作用是使值加1。又如x+y;也是 个语句,作用是完成x+y的操作,它是合法的, 但是并不把x+y的和赋给另一变量,所以它并无 实际意义。 表达式能构成语句是c语言的一个重要特色。其实 “函数调用语句”也是属于表达式语句,因为函 数调用(如sin(x)也属于表达式的一种。只是为了 便于理解和使用,我们把“函数调用语句”和 “表达式语句”分开来说明。由于c程序中大多 数语句是表达式语句(包括函数调用语句),所以 有人把c语言称作“表达式语言
任何表达式都可以加上分号而成为语句,例如i++; 是一语句,作用是使i值加1。又如x+y;也是一 个语句,作用是完成x+y的操作,它是合法的, 但是并不把x+y的和赋给另一变量,所以它并无 实际意义。 表达式能构成语句是c语言的一个重要特色。其实 “函数调用语句”也是属于表达式语句,因为函 数调用(如sin(x))也属于表达式的一种。只是为了 便于理解和使用,我们把“函数调用语句”和 “表达式语句”分开来说明。由于c程序中大多 数语句是表达式语句(包括函数调用语句),所以 有人把c语言称作“表达式语言”
些大学出版社 TSINGHUA UNIVERSITY PRESS (4)空语句。下面是一个空语句: 即只有一个分号的语句,它什么也不做。有时用来 做被转向点,或循环语句中的循环体(循环体是 空语句,表示循环体什么也不做)。 (5)可以用{}把一些语句括起来成为复合语句, 又称分程序。如下面是一个复合语句。 Lz=X+y t=z/100; printf(oof ',t);
(4) 空语句。下面是一个空语句: ; 即只有一个分号的语句,它什么也不做。有时用来 做被转向点,或循环语句中的循环体(循环体是 空语句,表示循环体什么也不做)。 (5) 可以用 {}把一些语句括起来成为复合语句, 又称分程序。如下面是一个复合语句。 {z=x+y; t=z/100; printf("%f" ,t); }
些大学出版社 TSINGHUA UNIVERSITY PRESS 注意:复合语句中最后一个语句中最后的分号不能 忽略不写这是和 pascal不同的)。 C语言允许一行写几个语句,也允许一个语句拆开 写在几行上,书写格式无固定要求 fortran cobo有严格要求)。 42程序的三种基本结构 为了提高程序设计的质量和效率,现在普遍采用结 构化程序设计方法。结构化程序由若干个基本结 构组成。每一个基本结构可以包含一个或若干个 语句。有三种基本结构: (1)顺序结构见图42。先执行a操作,再执行b操作, 两者是顺序执行的关系。图中(b)是ns结构化流程 图(下同)
注意:复合语句中最后一个语句中最后的分号不能 忽略不写(这是和pascal不同的)。 C语言允许一行写几个语句,也允许一个语句拆开 写在几行上,书写格式无固定要求(fortran、 cobol有严格要求)。 4.2 程序的三种基本结构 为了提高程序设计的质量和效率,现在普遍采用结 构化程序设计方法。结构化程序由若干个基本结 构组成。每一个基本结构可以包含 一个或若干个 语句。有三种基本结构: (1) 顺序结构,见图4.2。先执行a操作,再执行b操作, 两者是顺序执行的关系。图中(b)是ns结构化流程 图(下同)