C语言基本概念(共16页).doc
《C语言基本概念(共16页).doc》由会员分享,可在线阅读,更多相关《C语言基本概念(共16页).doc(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上第2章 C语言基本概念2.1 初识“Hello world”程序为纪念C语言的设计者,第一个程序范例选自C语言的定义文档Brian Kernighan和Dennis Ritchie合著的The C Programming Language。该范例是“Hello world”程序,它是所有C程序员共有的财富,而你也即将成为其中的一员。【例2-1】Hello程序/* *File:hello.c *This program prints the message Hello world on the screen. */#include main() printf(Hello
2、,world.n);该程序作为一个文件存储在你所用的计算机系统的永久存储器中。文件名为hello.c,其中.c说明该文件为C语言源程序。下面介绍hello.c程序的组成部分:程序注释、库包含和主函数。2.1.1 程序注释C语言中,注释是在/*和*/之间的所有文字,可以占连续的几行。例2.1中的注释描述了该程序的作用。注释是写给人看的,而不是写给计算机的。注释向其他程序员传递该程序的有关信息。当C语言编译器将程序转换为可由机器执行的形式时,注释被完全忽略。当程序越来越复杂时,读者会发现给出合适的注释是使程序易读的最好方法之一。2.1.2 库包含(预处理指令)C语言只明确定义了一小部分操作,在计算
3、机程序中许多必要的操作并不是由C直接定义的(如C语言中没有内置的“读”或“写”命令),实际的做法是,在每个C实现中都包含了一些使用函数和符号的集合,称之为库。C的ANSI(American National Standards Institute)标准要求在每个C实现中提供特定的标准库。C系统可以通过提供附加库来扩展可执行操作的数量,编程者也可以产生函数库。每个库都拥有一个文件名以.h结尾的标准头文件,如stdio.h。#include 这条预处理指令说明,在编译前把stdio.h中的信息“包含”到程序中。该指令通知预处理器,程序中用到的某些内容,如printf,可以在标准头文件stdio.h
4、中找到。Stdio.h中包含了关于C标准输入/输出库的信息。注意:l 对每一个库使用一行#includel 预处理指令结束时没有“;”预处理指令详细内容将在后面章节介绍。2.1.3 主函数1. 函数术语“函数”来源于数学。在数学中函数是一条根据一个或多个给定参数进行数值计算的规则:f(x) = x + 1g(y,z) = y zC语言对“函数”的使用更加宽松。C语言中,函数是一系列独立的程序步骤,将这些程序步骤集合在一起,并且赋予了一个名字,就形成了一个函数。如:main() 语句;一个C程序是一个函数的集合。函数分为两类:程序员编写的函数;由C语言的实现所提供的函数。后一种函数也叫库函数,因
5、为这些函数属于一个函数的“库”,而这个库是由编译器提供的。每个C程序必须有一个main函数,在执行程序时系统会自动调用main函数,即该函数是程序的入口。2. 语句函数所执行的步骤在中列出,这些步骤称为“语句”。这些语句共同组成函数的主体。大多数函数都有几个连续执行的语句。当运行C语言程序时,计算机执行main函数主体中包含的语句。printf(Hello,world.n);该语句用到了printf函数。此函数代表一组操作。当想要调用这些操作时,只要使用其函数名就可以一起引用此函数。在程序设计中,通过使用函数名来调用该函数的行为称为调用函数。printf(Hello,world.n)就是对函数
6、printf的调用。该函数调用的结尾加上“;”就构成了一条语句。本节小结1.C程序的典型结构注释库包含 main() 语句;2.每个程序都应有注释,注释可以有效增强程序的可读性。3.库包含4.每个C程序是函数的集合,且每个C程序有且仅有一个main函数,它是程序的入口。5.语句2.2 求圆周长的程序为使大家对C语言程序的工作过程有更好的了解,现在来看一个稍复杂的例子。【例2-2】使用C 语言编程,程序根据用户输入的某圆的半径值,求该圆的周长。【分析】根据数学知识可知,c = 2 PI r 根据题目要求可知流程图如下:l 确定输出什么圆周长l 确定输入什么圆半径开始输入rL = 2 * PI *
7、 r 输出 L结束引入常量和变量概念:根据数学知识和题目要求,2、PI为常量,在整个程序运行期间不变;S和r是变量,r随着用户的输入而不同,S随着输入的r不同而不同。引入数据类型:数据类型用来说明变量所存储的数据的种类。半径r取整型int,圆周长L取实型double。【伪代码】#include main() 定义变量; 输入半径; 计算周长; 输出周长;【源代码】#include main() int radius; double c; printf(“Plesae input the radius:”); scanf(“%d”,&radius); c = 2 * 3.14 * radius;
8、 printf(“The c is %f .n”,c); 2.2.1 初识变量和常量1. 变量变量(Variable)是一些在编写程序时值未知的数据的存放处。例如,在编程时,程序员尚不知道用户要对半径为多大的圆求周长。当程序运行时,用户才会输入半径,程序才求出周长。为了在程序中引用这些目前尚未确定的数,我们可以创建一个变量来保存这些需要记住的值,并给该变量命名。一旦要用到它包含的值时,可使用其变量名。变量的名称要用心选择,以便将来阅读程序的程序员能容易地分辨出每个变量的作用。本程序中,变量radius代表半径,变量c代表周长。在C语言中,使用变量前,必须先声明该变量。声明一个变量就是告之编译器
9、引用了一个新的变量名,并指定了该变量可以保存的数据类型。例如:int radius;2. 常量常量是一种在程序中保持固定类型和固定值的数据。例如,本程序中的2,3.14。2.2.2 输入阶段本程序在输入阶段必须要求用户输入一个半径值保存在radius变量中。变量值的输入过程包括2步。(1)程序应在屏幕上显示一个消息以使用户了解程序需要什么,这种类型的消息通常称为提示消息。例如:printf(“Plesae input the radius:”);(2)读取用户输入的数据。例如:scanf(“%d”,&radius);C中所有的输入输出操作都由称作输入输出函数来完成。本部分将介绍输入函数scan
10、f,它是C的标准输入输出库中的一部分,可以通过预处理指令#include 来访问。scanf函数用来把从输入设备输入的数据复制到变量中。该函数调用包含函数名和函数参数两部分。函数参数由格式字符串(包含在“”)和输入列表组成。例:int sum;scanf(“%d”, &sum);在程序执行时,scanf函数将程序用户在键盘上键入的数据复制到内存中。关于scanf函数的具体说明见。2.2.3 计算阶段本程序的计算阶段由计算圆周长组成。在程序设计中,计算是通过写一个表达式来指定的,该表达式指定了必须的操作步骤。表达式的结构由赋值语句存储于一个变量中,以便程序后面的部分使用该结果。本章2.4节将详细
11、定义表达式的结构。然而,即使没有一个完整的定义,理解C语言的表达式如何工作也很容易,它与传统的数学表达式非常类似:c = 2 * 3.14 * radius;2.2.4 输出阶段程序的输出阶段由显示计算结果组成。例如:printf(“The c is %f .n”,c);printf函数在屏幕上显示参数字符串中的每一个字符。但到了%处就有所不同了。%及其后面的字母f称为格式码。在本例中,格式码是%f。printf函数的格式码的作用就是作为值的占位符,在输出过程中,值将被插入到该位置。格式码中的字母用于指定输出格式。本例中的%f表示输出结果应显示为浮点数。此时的程序将显示以下信息:The c i
12、s .其中,下划线部分将由一个浮点数代替。要想知道显示的是什么样的整数,printf函数取调用时传来的第二个参数值,本例中是变量c。它的值显示在屏幕上,换行符使光标移至下一行。2.3 变量、常量和数据类型2.3.1 变量和常量定义1变量大多数程序在产生输出之前往往需要执行一系列的计算,因此需要在程序执行过程中有一种临时存储数据的方法。C语言中的这类存储单元称为变量。变量是程序执行过程中可以改变、可以赋值的量。具体说,变量是用于存储程序的输入数据和计算结果的存储单元。2常量常量是一种在程序中保持固定类型和固定值的数据。2.3.2 数据类型为了能在各种应用中使用,程序必须能够存储多种不同类型的数据
13、。程序中每一个变量都必须有一个类型。类型用来说明变量所存储的数据的种类。C语言拥有广泛多样的类型。无论何时使用数据,无论使用的是整数、小数还是字符,C编译器都应该了解其数据类型。从整体上讲,数据类型是一组值及这组值上的一组操作。数据类型包括:l 一组值,即值的集合:n 例如:整型数据的集合就是机器硬件所能构造的所有整数(,-1,0,1,2,.)n 例如:字符型数据的集合就是键盘上出现的或可显示在屏幕上的符号的集合l 这组值上的操作集合:n 例如:给出两个整数,可以将它们相加、相乘等n 例如:给出两个字符数据,可以对两者进行比较,看它们字母顺序如何n 操作必须与值的集合项对应。本节只限定介绍in
14、t、double和char数据类型,详细内容将在后面章节介绍。数据类型的对象可以是变量或常量。1. int数据类型数学中整数就是非分数和小数的数。Int类型在C语言中代表整数。因为一个存储单元的大小是有限的,所以不是所有的整数都可以由int型表示。Int型数据通常与程序的执行环境的字长相同,对于16位环境,如DOS下的TC2.0,int型数据在内存中占16位,即2个字节;对于大多数32位环境,如windows XP等,int型数据在内存中占32位,即4个字节。VC6中int型数据在内存中占4个字节,取值范围是-至整数可以存储在int型变量中,进行常用的算术运算,加减乘除等,还可以比较两个整数的
15、大小。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类型表示一个字符值
16、字母、数字或专用符号。每个char型数据都包含在单引号内,如:A z 5 * 字符可以存储在char型变量中,并可以比较字符数据的大小。char型数据占1字节。C语言将char型数据对应的ASCII码值保存在1个字节的内存空间中,所以C语言甚至允许对char型数据进行算术运算,但必须小心使用。2.3.3 变量声明与初始化变量(Variable)是一个值的存放处,它有三个重要属性:名称、值和数据类型。为了理解名称、值和数据类型三者之间的关系,可以将变量看做一个外部贴有标签的盒子。l 名称:变量的名字写在标签上,以区分不同的盒子l 值:变量的值对应于盒子内装的东西。l 数据类型:变量类型表明什么类
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 基本概念 16
限制150内