C语言基本概念
2. 语句 函数所执行的步骤在{}中列出,这些步骤称为“语句”。这些语句共同组成函数的主体。 大多数函数都有几个连续执行的语句。 当运行 C 语言程序时,计算机执行 main 函数主体中包含的语句。 printf("Hello,world.\n");该语句用到了 printf 函数。此函数代表一组操作。当想要调用这 些操作时,只要使用其函数名就可以一起引用此函数。在程序设计中,通过使用函数名来调
(1)程序应在屏幕上显示一个消息以使用户了解程序需要什么,这种类型的消息通常 称为提示消息。例如:
printf(“Plesae input the radius:”); (2)读取用户输入的数据。例如: scanf(“%d”,&radius); C 中所有的输入输出操作都由称作输入输出函数来完成。本部分将介绍输入函数 scanf,它是 C 的标准输入输出库中的一部分,可以通过预处理指令 #include <stdio.h> 来访问。 scanf 函数用来把从输入设备输入的数据复制到变量中。该函数调用包含函数名和函数 参数两部分。函数参数由格式字符串(包含在“”)和输入列表组成。 例: int sum; scanf(“%d”, &sum); 在程序执行时,scanf 函数将程序用户在键盘上键入的数据复制到内存中。 关于 scanf 函数的具体说明见。
本节小结 1.C 程序的典型结构 注释 库包含 main() { 语句; } 2.每个程序都应有注释,注释可以有效增强程序的可读性。 3.库包含 4.每个 C 程序是函数的集合,且每个 C 程序有且仅有一个 main 函数,它是程序的入口。
5.语句
2.2 求圆周长的程序
为使大家对 C 语言程序的工作过程有更好的了解,现在来看一个稍复杂的例子。 【例 2-2】使用 C 语言编程,程序根据用户输入的某圆的半径值,求该圆的周长。 【分析】 根据数学知识可知,c = 2 × PI × r 根据题目要求可知流程图如下: 确定输出什么——圆周长 确定输入什么——圆半径
hing at a time and All things in their being are good for somethin
第 2 章 C 语言基本概念
2.1 初识“Hello world”程序
为纪念 C 语言的设计者,第一个程序范例选自 C 语言的定义文档——Brian Kernighan 和 Dennis Ritchie 合著的 The C Programming Language。该范例是“Hello world”程序,它是所 有 C 程序员共有的财富,而你也即将成为其中的一员。
在 C 语言中,使用变量前,必须先声明该变量。声明一个变量就是告之编译器引用了 一个新的变量名,并指定了该变量可以保存的数据类型。例如:
int radius; 2. 常量
常量是一种在程序中保持固定类型和固定值的数据。例如,本程序中的 2,3.14。
2.2.2 输入阶段
本程序在输入阶段必须要求用户输入一个半径值保存在 radius 变量中。变量值的输入过 程包括 2 步。
2.2.3 计算阶段
第 2 章-5
hing at a time and All things in their being are good for somethin
本程序的计算阶段由计算圆周长组成。在程序设计中,计算是通过写一个表达式来指定 的,该表达式指定了必须的操作步骤。表达式的结构由赋值语句存储于一个变量中,以便程 序后面的部分使用该结果。本章 2.4 节将详细定义表达式的结构。然而,即使没有一个完整 的定义,理解 C 语言的表达式如何工作也很容易,它与传统的数学表达式非常类似:
2.3 变量、常量和数据类型 2.3.1 变量和常量定义
1.变量 大多数程序在产生输出之前往往需要执行一系列的计算,因此需要在程序执行过程中有
一种临时存储数据的方法。C 语言中的这类存储单元称为变量。 变量是程序执行过程中可以改变、可以赋值的量。具体说,变量是用于存储程序的输入
数据和计算结果的存储单元。
的占位符,在输出过程中,值将被插入到该位置。格式码中的字母用于指定输出格式。本例
中的%f 表示输出结果应显示为浮点数。此时的程序将显示以下信息:
The c is
.
其中,下划线部分将由一个浮点数代替。
要想知道显示的是什么样的整数,printf 函数取调用时传来的第二个参数值,本例中是
变量 c。它的值显示在屏幕上,换行符使光标移至下一行。
c = 2 * 3.14 * radius;
2.2.4 输出阶段
程序的输出阶段由显示计算结果组成。例如:
printf(“The c is %f .\n”,c);
printf 函数在屏幕上显示参数字符串中的每一个字符。但到了%处就有所不同了。%及其
后面的字母 f 称为格式码。在本例中,格式码是%f。printf 函数的格式码的作用就是作为值
2.1.2 库包含(预处理指令) C 语言只明确定义了一小部分操作,在计算机程序中许多必要的操作并不是由 C 直接定
义的(如 C 语言中没有内置的“读”或“写”命令),实际的做法是,在每个 C 实现中都包 含了一些使用函数和符号的集合,称之为库。C 的 ANSI(American National Standards Institute)标准要求在每个 C 实现中提供特定的标准库。C 系统可以通过提供附加库来扩展 可执行操作的数量,编程者也可以产生函数库。每个库都拥有一个文件名以.h 结尾的标准头
第 2 章-3
hing at a time and All things in their being are good for somethin
开始
输入 r
L = * PI * r
输出 L
结束
引入常量和变量概念:根据数学知识和题目要求,2、PI 为常量,在整个程序运行期间不变; S 和 r 是变量,r 随着用户的输入而不同,S 随着输入的 r 不同而不同。
第 2 章-1
hing at a time and All things in their being are good for somethin
文件,如 stdio.h。
#include <stdio.h>这条预处理指令说明,在编译前把 stdio.h 中的信息“包含”到程序中。 该指令通知预处理器,程序中用到的某些内容,如 printf,可以在标准头文件 stdio.h 中找到。 Stdio.h 中包含了关于 C 标准输入/输出库的信息。
引入数据类型:数据类型用来说明变量所存储的数据的种类。半径 r 取整型 int,圆周长 L 取实型 double。
【伪代码】 #include <stdio.h> main() { 定义变量; 输入半径; 计算周长; 输出周长; }
【源代码】 #include <stdio.h> main() { int radius; double c; printf(“Plesae input the radius:”); scanf(“%d”,&radius); c = 2 * 3.14 * radius; printf(“The c is %f .\n”,c); }
这组值上的操作集合: 例如:给出两个整数,可以将它们相加、相乘等 例如:给出两个字符数据,可以对两者进行比较,看它们字母顺序如何 操作必须与值的集合项对应。
本节只限定介绍 int、double 和 char 数据类型,详细内容将在后面章节介绍。 数据类型的对象可以是变量或常量。 1. int 数据类型 数学中整数就是非分数和小数的数。Int 类型在 C 语言中代表整数。 因为一个存储单元的大小是有限的,所以不是所有的整数都可以由 int 型表示。Int 型数 据通常与程序的执行环境的字长相同,对于 16 位环境,如 DOS 下的 TC2.0,int 型数据在内 存中占 16 位,即 2 个字节;对于大多数 32 位环境,如 windows XP 等,int 型数据在内存中 占 32 位,即 4 个字节。VC6 中 int 型数据在内存中占 4 个字节,取值范围是-2147483648 至 2147483647 整数可以存储在 int 型变量中,进行常用的算术运算,加减乘除等,还可以比较两个整 数的大小。 2. double 数据类型 实数拥有一个整数部分和一个小数部分,并由小数隔开。C 中数据类型 double 用于表示 实数,如 3.14159、0.005、15.8。 实数可以存储在 double 型变量中,进行常用的算术运算,还可以比较两个整数的大小。 VC6 中 double 型数据在内存中占 8 个字节,15 位有效数字,数值范围为-1.7*10-308 至 1.7*10308 数据类型 double 是实数的一个抽象,因为它不包括所有的实数,一些实数太大或太小, 还有一些实数不能在大小有限的存储单元内精确表示。然而,C 中绝对可以表示足够多的实 数来执行大部分具有相当精度的计算。 3. char 数据类型 char 类型表示一个字符值——字母、数字或专用符号。每个 char 型数据都包含在单引 号内,如: ‘A’ ‘z’ ‘5’ ‘*’ ‘ ’ 字符可以存储在 char 型变量中,并可以比较字符数据的大小。char 型数据占 1 字节。 C 语言将 char 型数据对应的 ASCII 码值保存在 1 个字节的内存空间中,所以 C 语言甚 至允许对 char 型数据进行算术运算,但必须小心使用。
注意: 对每一个库使用一行#include 预处理指令结束时没有“;” 预处理指令详细内容将在后面章节介绍。
2.1.3 主函数 1. 函数 术语“函数”来源于数学。在数学中函数是一条根据一个或多个给定参数进行数值计算
的规则: f(x) = x + 1 g(y,z) = y – z C 语言对“函数”的使用更加宽松。C 语言中,函数是一系列独立的程序步骤,将这些