内容正文:
项目二 顺序结构程序设计
1
C语言程序设计基础
知识目标
掌握C语言基本字符、标识符、关键字
掌握C语言数据类型
掌握C语言常量、变量及其类型
掌握C语言运算符及表达式
掌握C语言顺序结构程序设计
掌握C语言的格式化输入和输出函数
技能目标
学会基本数据类型的表示方法
学会变量和常量的定义和初始化
学会运算符的运算规则及表达式
学会其它语句设计顺序程序设计
学会使用输入输出函数
思政目标
培养学生良好的程序设计职业道德
严肃严谨认真和实事求是的科学态度
2
任务3
——常量及变量
3
(1)整型常量及其表示
1)十进制整型常量:
2)十进制长整型常量:
3)八进制整型常量:
4)八进制长整型常量:
5)十六进制整型常量:
6)十六进制长整型常量:
3.1常量
顺序结构程序设计——基础篇
4
(2)实型常量及其表示
1)十进制小数形式(定点形式):
2)指数形式(浮点形式):
(3)字符型常量及其表示
用单撇号括起来的单一字符(包括转义字符)称为字符型常量。
顺序结构程序设计——基础篇
5
转义字符:
以反斜杠“\”开头,后跟一个规定的字符或数字串,用来表示一个字符,这种表示形式称为转义字符。
以反斜杠“\”开头后跟一个规定的字母,代表一个控制字符。
\\代表反斜杠字符“\”,\’代表单撇号字符“’”等。
以反斜杠开头后跟1-3位八进制数代表ASCⅡ值为该八进制数的字符(此方法可表示ASCⅡ字符集中的任一字符)。
以反斜杠和小写字母x开头,即以\x开头,后跟1-2位十六进制数代表ASCⅡ值为该十六进制数的字符(也可表示ASCⅡ字符集中的任一字符)。
顺序结构程序设计——基础篇
6
顺序结构程序设计——基础篇
字符形式 含义 ASCⅡ值(十进制)
\a 响铃 7
\b 退格(将光标前移一列) 8
\t 水平制表(横向跳格到下一个制表区) 9
回车换行(将光标移到下一行开头) 10
\v 垂直制表(竖向跳格) 11
\f 换页(将光标移到下页开头) 12
\r 回车(将光标移到本行开头) 13
\” 双撇号字符“”” 34
\’ 单撇号字符“’” 39
\? 问号字符“?” 63
\\ 反斜杠字符“\” 92
\0 空字符 0
\ddd ddd为1-3位八进制数,ddd所代表的字符 需转换
\xhh hh为1-2位十六进制数,hh所代表的字符 需转换
7
(4)字符串常量及其表示
C 语言中字符串常量代表一串字符,即一个字符串。在程序中要用双撇号括起来,以便与程序中用到的其他标识符(如变量名、函数名等)相区分。
字符串的存储是按字符串中每个字符的存储形式存储,每个字符占一个字节,系统会在字符串的结尾自动加上一个字符串结束标志“\0”,用以表明字符串的结束。
顺序结构程序设计——基础篇
8
(5)符号常量
C语言中除了上述的直接常量外,还有一种用标识符代表的常量,称为符号常量。符号常量是用“宏定义”方式表示某个常量。
符号常量的定义方法是,在程序的开头,使用如下的编译预处理命令:
#define 符号常量 常量
顺序结构程序设计——基础篇
9
【例2-1】 符号常量的使用——求圆的周长。
【程序代码】
顺序结构程序设计——基础篇
10
【运行结果】
顺序结构程序设计——基础篇
11
变量是在程序运行过程中,其值可以改变的量。C语言规定:程序中所使用的每一个变量在使用之前都要进行类型定义,即“先定义,后使用”。
3.1变量
顺序结构程序设计——基础篇
12
(1)变量的定义
[类型标识符] 类型标识符 变量名表;
其中方括号的内容表示是可选的。
1)[类别标识符]用来说明变量名表中变量的存储类别(存储机构、生存周期、作用域),存储类别标识符包括auto(自动)、register(寄存器)、static(静态)。
2)类型标识符用来说明变量名表中变量的数据类型(存储长度、取值范围、允许的操作),类型标识符包括short(短整型)、int(基本整型)、long(长整型)、float(单精度实型)、double(双精度实型)、char(字符型)等。
顺序结构程序设计——基础篇
13
3)变量名表由一个或多个变量组成,两个变量之间用逗号分隔,变量名必须是C语言合法标识符。
4)变量定义后,在编译或在程序运行时系统将为变量分配相应字节的存储空间,分配的存储空间的大小与变量所定义的类型有关。
顺序结构程序设计——基础篇
14
(2)变量的赋值
变量定义后,要想给变量一个确定的值,可以采用数据输入的方法(后期学到的函数的调用),也可以采用下面介绍的赋值方法。
变量赋值的一般格式:
变量=表达式
其中“=”为赋值号,赋值号左端通常必须是变量,右端可以是任何表达式。
变量赋值的作用:把赋值号右端表达式的值赋给赋值号左端的变量,即把赋值号右端表达式的值写到赋值号左端变量的存储空间中。
如:a=c+3;把c+3的值赋给变量a,此时c必须已有确定的值。
顺序结构程序设计——基础篇
15
(3)变量的初始化
在定义变量时,给变量赋值称为变量的初始化。
如:int b=3,c;在定义变量b、c的同时给变量b赋值为3,是对变量b进行初始化。
顺序结构程序设计——基础篇
16
(4)整型变量
1)整型变量的类型标识符
整型变量的类型有基本类型(简称整型)、短整型和长整型3种,它们的类型标识符分别是int、short [int]、long [int]。
有符号基本类型:[signed] int 无符号基本类型:unsigned [int]
有符号短整型:[signed] short [int] 无符号短整型:unsigned short [int]
有符号长整型:[signed] long [int] 无符号长整型:unsigned long [int]
顺序结构程序设计——基础篇
17
2)整型数据在内存中的存储形式
数据在内存中所占的字节数称为数据的存储长度。
Dev-C++系统规定:short型数据在内存中占2个字节,int型和long型数据在内存中占4个字节。
short型数据在内存中是以16位二进制数的补码形式存放,其中最高位用来表示数的符号,称为符号位,当符号位为0时,表示该数是正数,当符号位为1时,表示该数是负数,其他低15位用来表示数值。
int型和long型数据在内存中是以32位二进制数的补码形式存放,同样,最高位用来表示数的符号,其他低31位用来表示数值。
unsigned型数据以其相应的类型的位数的二进制数补码形式存放,没有符号位,所有二进制位都用来表示数值。
顺序结构程序设计——基础篇
18
3)整型数据的取值范围
顺序结构程序设计——基础篇
类型 字节数 取值范围
[signed] short [int] 2字节 -32768-32767(-215--215-1)
unsigned short [int] 2字节 0--65535(0--216-1)
[signed] int 4字节 -2147483648--2147483647(-231--231-1)
unsigned [int] 4字节 0--4294967295(0--232-1)
[signed] long [int] 4字节 -2147483648--2147483647(-231--231-1)
unsigned long [int] 4字节 0--4294967295(0--232-1)
19
【例2-2】 已知两个变量a和b,求和。
【程序代码】
顺序结构程序设计——基础篇
20
【运行结果】
顺序结构程序设计——基础篇
21
(5)实型变量
1)实型变量的类型标识符
实型变量的类型主要有单精度实型和双精度实型两种,它们的类型标识符分别是float(单精度实型)和double(双精度实型)。实型变量都是有符号的。
2)实型变量的类型标识符
实型变量的类型主要有单精度实型和双精度实型两种,它们的类型标识符分别是float(单精度实型)和double(双精度实型)。实型变量都是有符号的。
顺序结构程序设计——基础篇
类型 存储长度 取值范围 有效数字
float 4字节 +(3.4×10-38--3.4×1038)
- (3.4×10-38--3.4×1038) 6--7位
double 8字节 +(1.7×10-308--1.7×10308)
- (1.7×10-308--1.7×10308) 15--16位
22
【例2-3】 已知圆的半径,求圆的面积。
【程序代码】
顺序结构程序设计——基础篇
23
【运行结果】
顺序结构程序设计——基础篇
24
(6)字符型变量
1)字符型变量的类型标识符
(有符号)字符型:[signed] char
无符号字符型:unsigned char
顺序结构程序设计——基础篇
25
2)字符型数据的存储形式及取值范围
字符型数据在内存中占1个字节,以其相应的ASCⅡ值的8位二进制数(补码)形式存储,char型数据的取值范围是-128--127,unsigned char 型数据的取值范围是0--255,每一个数值对应一个字符。
顺序结构程序设计——基础篇
26
【例2-4】 向字符变量赋以整数。
【程序代码】
顺序结构程序设计——基础篇
27
【运行结果】
顺序结构程序设计——基础篇
28
$$