第2章C程序的基本组成_第1页
第2章C程序的基本组成_第2页
第2章C程序的基本组成_第3页
第2章C程序的基本组成_第4页
第2章C程序的基本组成_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第2章 C程序的基本组成2.1 简单的简单的C语言程序语言程序2.2 基本数据类型变量的定义与宏定义基本数据类型变量的定义与宏定义2.3 数据的输入与输出数据的输入与输出2.4 数据的处理数据的处理2.5 宏宏 定定 义义2.1 简单的简单的C语言程序语言程序例例2.1 编写一个编写一个C程序,其功能是显示字符串程序,其功能是显示字符串“How do you do!”。其其C程序如下:程序如下:#include stdio.hmain() printf(How do you do!n);下面针对一般的下面针对一般的C程序作几点说明:程序作几点说明:(1)一个完整的)一个完整的C语言程序可以由多

2、个函数组成,但必须语言程序可以由多个函数组成,但必须包含一个且只能包含一个名为包含一个且只能包含一个名为main的函数(主函数)。程的函数(主函数)。程序总是从序总是从main函数开始执行。函数开始执行。(2)在一个)在一个C函数模块中,由左右花括号函数模块中,由左右花括号 括起来的部分括起来的部分是函数体,其中的语句系列实现函数的预定功能。是函数体,其中的语句系列实现函数的预定功能。(3)C程序中的每一个语句必须以程序中的每一个语句必须以“;”结束,但书写格结束,但书写格式是自由的。式是自由的。 (4)#include是编译预处理命令,其作用是将双引号或尖是编译预处理命令,其作用是将双引号或

3、尖括号括起来的文件内容读到该命令的位置处。括号括起来的文件内容读到该命令的位置处。 (5)在)在C程序的任何位置处都可以用程序的任何位置处都可以用/* . */作注释,以作注释,以提高程序的可读性。提高程序的可读性。2.2 基本数据类型变量的定义与宏定义基本数据类型变量的定义与宏定义2.2.1 整型常量及其变量的定义整型常量及其变量的定义1整型常量整型常量 在在C语言中,有语言中,有3种类型的整型常量:基本整型常量、种类型的整型常量:基本整型常量、长整型常量、无符号整型常量。长整型常量、无符号整型常量。 在在C语言中,不管是哪种类型的整型常量,都可以用语言中,不管是哪种类型的整型常量,都可以用

4、3种数制表示。种数制表示。 (1)十进制整型常量。)十进制整型常量。 (2 2)十六进制整型常量。)十六进制整型常量。 (3 3)八进制整型常量。)八进制整型常量。 2整型变量的定义整型变量的定义 在在C程序中,用于存放整型数据的变量称为整型变量。程序中,用于存放整型数据的变量称为整型变量。 在在C语言中,可以定义基本整型、长整型、短整型语言中,可以定义基本整型、长整型、短整型和无符号整型等和无符号整型等4种类型的整型变量。它们的定义方式种类型的整型变量。它们的定义方式如下。如下。(1)基本整型变量)基本整型变量 定义基本整型变量的形式如下:定义基本整型变量的形式如下: int 变量表列;变量

5、表列;(2)长整型)长整型 定义长整型变量的形式如下:定义长整型变量的形式如下: long int 变量表列;变量表列;(3)短整型)短整型定义短整型变量的形式如下:定义短整型变量的形式如下: short int 变量表列;变量表列;(4)无符号整型)无符号整型定义无符号基本整型变量的形式如下:定义无符号基本整型变量的形式如下: unsigned int 变量表列;变量表列; 一个类型说明语句可以同时定义多个同类型的一个类型说明语句可以同时定义多个同类型的变量,各变量之间用逗号变量,各变量之间用逗号“,”分隔。分隔。 用类型说明语句定义的变量只是说明了为这些用类型说明语句定义的变量只是说明了为

6、这些变量分配了存储空间,以便用于存放与之相同类型的数变量分配了存储空间,以便用于存放与之相同类型的数据,在未对这些变量赋值前,这些变量中(即存储空间据,在未对这些变量赋值前,这些变量中(即存储空间中)的值是随机的。中)的值是随机的。 C语言允许在定义变量的同时为变量赋初值。语言允许在定义变量的同时为变量赋初值。 在为整型变量初始化或赋值时,在为整型变量初始化或赋值时,C编译系统自动编译系统自动将被赋数据转换成与相应变量的类型一致。将被赋数据转换成与相应变量的类型一致。 由于各种整型变量所占的字节数有限,因此,由于各种整型变量所占的字节数有限,因此,它们所能存放的整数有一定的范围。它们所能存放的

7、整数有一定的范围。 22.22.2 2 实型常量及其变量的定义实型常量及其变量的定义1实型(浮点型)常量实型(浮点型)常量(1)十进制数形式)十进制数形式(2)指数形式(科学记数法)指数形式(科学记数法)2实型变量的定义实型变量的定义在在C程序中,用于存放实型数据的变量称为实型变量。程序中,用于存放实型数据的变量称为实型变量。在在C语言中,实型变量有单精度与双精度两种。语言中,实型变量有单精度与双精度两种。 22.22.3 3 字符型常量及其变量的定义字符型常量及其变量的定义1字符型常量字符型常量 n 换行换行 r 回车回车 b 退格退格 t 制表(横向跳格)制表(横向跳格) 单引号(单撇号)

8、单引号(单撇号) 双引号(双撇号)双引号(双撇号) ddd 13位八进制数所代表的位八进制数所代表的ASCII码字符码字符 xhh 12位十六进制数所代表的位十六进制数所代表的ASCII码字符码字符 f 走纸换页走纸换页 反斜杠字符反斜杠字符2字符型变量的定义字符型变量的定义字符型变量的定义方式如下:字符型变量的定义方式如下:char 变量表列;变量表列;2.3 数据的输入与输出数据的输入与输出数据的输入与输出应包括以下几项:数据的输入与输出应包括以下几项: 输入(出)的设备输入(出)的设备 输入(出)的格式输入(出)的格式 输入(出)的内容输入(出)的内容22.33.1 1 格式输出函数格式

9、输出函数 格式输出函数的一般形式如下:格式输出函数的一般形式如下: printf(*“格式控制格式控制”,输出表,输出表); 其中格式控制部分要用一对双撇号括起来,它用于说其中格式控制部分要用一对双撇号括起来,它用于说明输出项目所采用的格式。明输出项目所采用的格式。 1整型格式说明符整型格式说明符(1)十进制形式)十进制形式 (2)八进制形式)八进制形式(3)十六进制形式)十六进制形式2实型格式说明符实型格式说明符如果以十进制数形式输出实型数据,其格式说明符为如果以十进制数形式输出实型数据,其格式说明符为 %f 或或 %m.nf如果以指数形式输出实型数据,其格式说明符为如果以指数形式输出实型数

10、据,其格式说明符为 %e 或或 %m.ne3字符型格式说明符字符型格式说明符 字符型数据的格式说明符为字符型数据的格式说明符为 %c 或或 %mc (1)输出表中各输出项目之间要用)输出表中各输出项目之间要用“,”分隔。分隔。 (2)格式控制中的各格式说明符与输出表中的各输出)格式控制中的各格式说明符与输出表中的各输出项目在个数、次序、类型等方面必须一一对应。项目在个数、次序、类型等方面必须一一对应。 (3)格式控制中除格式说明符外的其他字符将按原样)格式控制中除格式说明符外的其他字符将按原样输出。输出。 (4)在输出格式说明符中,如果带有宽度说明,则在)在输出格式说明符中,如果带有宽度说明,

11、则在左边没有数字的位置上用空格填满(即输出的数字是右对左边没有数字的位置上用空格填满(即输出的数字是右对齐)。但如果在宽度说明前加一个负号(),则输出为齐)。但如果在宽度说明前加一个负号(),则输出为左对齐,即在右边补空格。左对齐,即在右边补空格。 22.33.2 2 格式输入函数格式输入函数格式输入函数的一般形式如下:格式输入函数的一般形式如下: scanf(“格式控制格式控制”,内存地址表);,内存地址表);1整型格式说明符整型格式说明符(1)十进制形式)十进制形式 用于输入十进制形式的整型数据。用于输入十进制形式的整型数据。(2)八进制形式)八进制形式用于输入八进制形式的整型数据。用于输

12、入八进制形式的整型数据。(3)十六进制形式)十六进制形式用于输入十六进制形式的整型数据。用于输入十六进制形式的整型数据。2实型格式说明符实型格式说明符用于输入的单精度实型格式说明符为用于输入的单精度实型格式说明符为 %f 或或 %e用于输入的双精度实型格式说明符为用于输入的双精度实型格式说明符为 %lf3字符型格式说明符字符型格式说明符用于输入的字符型格式说明符为用于输入的字符型格式说明符为 %c 或或 %mc (1)在格式输入中,内存地址表中必须是变量地址,不)在格式输入中,内存地址表中必须是变量地址,不能是变量名。能是变量名。 (2)与格式输出一样,格式输入格式控制中的各格式说)与格式输出

13、一样,格式输入格式控制中的各格式说明符与内存地址表中的变量地址在个数、次序、类型方面明符与内存地址表中的变量地址在个数、次序、类型方面必须一一对应。必须一一对应。 (3)当用于输入整型数据的格式说明符中没有宽度说明)当用于输入整型数据的格式说明符中没有宽度说明时,则在具体输入数据时分以下两种情况:时,则在具体输入数据时分以下两种情况: 如果各格式说明符之间没有其他字符,则在输入数据如果各格式说明符之间没有其他字符,则在输入数据时,两个数据之间用时,两个数据之间用“空格空格”、或、或“Tab”、或、或“回车回车”来来分隔。分隔。 如果各格式说明符之间包含其他字符,则在输入数据如果各格式说明符之间

14、包含其他字符,则在输入数据时,应输入与这些字符相同的字符作为间隔。时,应输入与这些字符相同的字符作为间隔。 (4)当整型或字符型格式说明符中有宽度说明时,按宽)当整型或字符型格式说明符中有宽度说明时,按宽度说明截取数据。度说明截取数据。2.4 数据的处理数据的处理22.44.1 1 赋值运算赋值运算赋值运算符为赋值运算符为“”。赋值表达式为。赋值表达式为变量名表达式变量名表达式(1)在)在C语言中,语言中,“”为赋值运算符,而不是等号;为赋值运算符,而不是等号;(2)赋值运算符)赋值运算符“”左边必须是变量名,不能是表达式;左边必须是变量名,不能是表达式;(3)赋值运算符)赋值运算符“”两端的

15、类型不一致时,系统将自动进行两端的类型不一致时,系统将自动进行类型转换。类型转换。22.44.2 2 算术运算算术运算 在在C语言中,基本的算术运算符有以下几个:语言中,基本的算术运算符有以下几个: 加法运算符(双目运算符),或正值运算符(加法运算符(双目运算符),或正值运算符(单目运算符)。如单目运算符)。如xy,x。 减法运算符(双目运算符),或负值运算符(减法运算符(双目运算符),或负值运算符(单目运算符)。如单目运算符)。如a3,x。 * 乘法运算符(双目运算符)。如乘法运算符(双目运算符)。如3*x。 / 除法运算符(双目运算符)。如除法运算符(双目运算符)。如x/y。 % 模余运算

16、符(双目运算符)。只适用于整型数模余运算符(双目运算符)。只适用于整型数据,如据,如9%4的值为的值为1,11%3的值为的值为2等。等。22.44.3 3 关系运算关系运算在在C语言中,基本的关系运算符有以下语言中,基本的关系运算符有以下6个:个: 小于小于 小于或等于小于或等于 大于大于 大于或等于大于或等于 等于等于! 不等于不等于22.44.4 4 逻辑运算逻辑运算 在在C语言中,逻辑常量只有两种:值非零表示语言中,逻辑常量只有两种:值非零表示“真真”,值为零表示,值为零表示“假假”。其基本的逻辑运算符有以下。其基本的逻辑运算符有以下3个个: & (逻辑与)(逻辑与) 两个量都为

17、真时为真(两个量都为真时为真(1),否则),否则为假(为假(0) | | (逻辑或)(逻辑或) 两个量中只要有一个为真时为真两个量中只要有一个为真时为真(1),只有都为假时为假(),只有都为假时为假(0) ! (逻辑非)(逻辑非) 一个量为真时为假(一个量为真时为假(0),假时),假时为真(为真(1) 逻辑表达式中各种运算符的优先级顺序逻辑表达式中各种运算符的优先级顺序如下:如下: !(逻辑非)(逻辑非) 算术运算符算术运算符 关系运算符关系运算符 & 与与 | | 赋值运算符赋值运算符22.44.5 增增11与减与减11运算符运算符 增增1运算符运算符“”和减和减1运算符运算符“”是

18、两个是两个单目(只有一个运算对象)运算符,它们的运算对象单目(只有一个运算对象)运算符,它们的运算对象只能是整型或字符型变量。只能是整型或字符型变量。 增增1运算符是将运算对象的值增运算符是将运算对象的值增1;减;减1运算符是运算符是将运算对象的值减将运算对象的值减1。 22.44.6 s6 sizeofof运算符运算符sizeof运算符有以下两种用法:运算符有以下两种用法:(1)用于求得表达式计算结果所占内存的字节数。其一)用于求得表达式计算结果所占内存的字节数。其一般形式为般形式为 sizeof 表达式表达式(2)用于求得某种数据类型的量所占内存的字节数。其)用于求得某种数据类型的量所占内

19、存的字节数。其一般形式为一般形式为 sizeof(类型名)(类型名)22.44.7 7 逗号运算符逗号运算符 逗号逗号“,”是是C程序中常见的符号。程序中常见的符号。 在在C语言中,逗号除作为分隔符使用外,还可以作为运算语言中,逗号除作为分隔符使用外,还可以作为运算符来使用,称为逗号运算符。符来使用,称为逗号运算符。 逗号表达式的一般形式为逗号表达式的一般形式为子表达式子表达式1,子表达式,子表达式2,子表达式,子表达式n 在使用逗号运算符(逗号表达式)时,要注意以下在使用逗号运算符(逗号表达式)时,要注意以下几点:几点: (1)逗号运算符是所有运算符中级别最低的一种运算)逗号运算符是所有运算

20、符中级别最低的一种运算符。符。 (2)一个逗号表达式又可以与另一个表达式(可以是)一个逗号表达式又可以与另一个表达式(可以是逗号表达式,也可以不是逗号表达式)连接成新的逗号逗号表达式,也可以不是逗号表达式)连接成新的逗号表达式。表达式。 (3)在许多情况下,使用逗号表达式的目的仅仅是为)在许多情况下,使用逗号表达式的目的仅仅是为了得到各个子表达式的值,而并不一定要得到或使用整了得到各个子表达式的值,而并不一定要得到或使用整个逗号表达式的值。个逗号表达式的值。 2.5 宏宏 定定 义义 C语言中的宏定义有两种形式:符号常量定义与带参数的语言中的宏定义有两种形式:符号常量定义与带参数的宏定义。宏定

21、义。 22.5.1 1 符号常量定义符号常量定义 在在C语言中,允许将程序中多处用到的语言中,允许将程序中多处用到的“字符串字符串”定义成定义成一个符号常量。在一个符号常量。在C语言中定义符号常量的一般形式如下:语言中定义符号常量的一般形式如下:#define 符号常量名符号常量名 字符串字符串 由于由于C语言中的所有变量名、函数名等都使用小写字语言中的所有变量名、函数名等都使用小写字母,因此,符号常量名一般用大写字母表示,以便与母,因此,符号常量名一般用大写字母表示,以便与C语言语言中的保留关键字相区别。中的保留关键字相区别。 C编译系统对定义的符号常量的处理只是进行简单的编译系统对定义的符号常量的处理只是进行简单的替换,不作任何语法检查

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论