编程语言基础-语言--第2章-基本数据类型与简单程序设计

上传人:go****e 文档编号:131383517 上传时间:2020-05-07 格式:PPT 页数:57 大小:620.50KB
返回 下载 相关 举报
编程语言基础-语言--第2章-基本数据类型与简单程序设计_第1页
第1页 / 共57页
编程语言基础-语言--第2章-基本数据类型与简单程序设计_第2页
第2页 / 共57页
编程语言基础-语言--第2章-基本数据类型与简单程序设计_第3页
第3页 / 共57页
编程语言基础-语言--第2章-基本数据类型与简单程序设计_第4页
第4页 / 共57页
编程语言基础-语言--第2章-基本数据类型与简单程序设计_第5页
第5页 / 共57页
点击查看更多>>
资源描述

《编程语言基础-语言--第2章-基本数据类型与简单程序设计》由会员分享,可在线阅读,更多相关《编程语言基础-语言--第2章-基本数据类型与简单程序设计(57页珍藏版)》请在金锄头文库上搜索。

1、第2章基本数据类型与简单程序设计 2 1C语言的基本数据类型 2 1 1常用标准数据类型 说明 在Dev C 或visualc中 int同long 在winTC中 int等同short 2 1 2无符号类型 如果在short或char类型标识符前面加上关键字unsigned 则表示无符号类型 其值为非负整数 2 2常量和变量 2 2 1常量和符号常量在程序的运行过程中 其值保持不变的量称为常量 definePI3 1415926此后 凡在文件中出现的PI均可用3 1415926来代替 2 2 2整型常量 除了我们比较熟悉的整型常量如 100 0 256之外 C语言中还有其他形式的整型常量 例如

2、 0235等于十进制数157 即2 82 3 81 5 80 157 0X23等于十进制数 35 任何类型的数据在计算机中都是以二进制补码形式存储的 正数的补码等于其原码 而负数的补码等于其原码的反码 1 例如 0000000001010011表示831111111110101101表示 8300000000000000000000000001010011表示83L11111111111111111111111110101101表示 83L 2 2 3浮点型常量 C语言中的浮点类型主要分为单精度和双精度浮点型两种 以下是合法的十进制浮点数表示 1234 56 1 2 0 0 5 6 10000

3、00000 0 浮点数还可采用科学表示法 以下是合法的科学浮点数表示 1 23456e2 0 345E 3 765e12 5E 8 6 e 7 1 0e10 出现在字母e 或E 之前的小数点 其左边和右边应有一位数字在字母e 或E 之后必须是整数 1 34E1 2 e2均是非法的浮点数 2 2 4字符型数据 C的字符常量是用单引号 即撇号 括起来的一个字符 如 a A 等都是字符常量 注意 a 和 A 是不同的字符常量 字符数据存放在内存时 并不是字符本身 而是字符的代码 称之为ASCII码 部分字符对应的ASCII码 常用的转义字符有 n 换行符 将当前位置移到下一行开头 t 水平制表符 跳

4、到下一个位置 b 退格 r 回车 将当前位置移到本行开头 f 走纸 反斜杠 单引号 双引号转义字符看起来是两个字符 实际上只能算一个字符 也可以使用 加上一个1 3位的8进制数或 x 加上一个1 2位的16进制数表示的ASCII码值来表示转义字符 例如 0 表示空字符 33 或 033 表示ESC 27 07 表示响铃 x0A 表示换行 10 2 2 5变量 在程序的运行过程中 值可以改变的量称为变量 每个变量都有一个名字 称为变量名 每个变量均必须进行变量说明 指明变量的类型如 intk 50 变量名和符号常量名的命名方法相同 都是用标识符表示 标识符就是一个名字 其命名必须按照一定的规则进

5、行 只能由字母 数字和下划线组成 且第一个字符必须为字母或下划线 不允许使用数字 如下面是合法的标识符 Class 1 abc1 id a1b2 sum total 下面是不合法的标识符 ab 标识符不能含空格符 1a 标识符不能以数字打头 abc 标识符不能使用 xyz 1 标识符不要把减号 和下划线 混淆 注意 大写字符和小写字符被认为是两个不同的字符 如 a1和A1是两个不同的变量 变量和符号常量的不同之处在于 变量的值可以改变 而符号常量则不行 例2 1 inti j k charc1 c2 上面两行语句定义了3个int型变量i j k和2个字符型变量c1 c2 例2 2 floatx

6、1 x2 定义2个单精度浮点型变量 doublez1 z2 定义2个双精度变量 floatx doubley x 123456 789 给变量赋初值 y 1 23456789E5 2 3赋值语句 所谓赋值 就是将一个数据存入一个连续的具有若干存储单元的存储空间中 该存储空间有一个名字 就是前面介绍的变量名 对一个变量进行定义后 这个变量如果没有进行赋值 它的值是不确定的 2 3 1赋值语句的格式与功能 一般形式 变量 表达式 功能 首先计算赋值号 右边表达式的值 然后将结果值送给赋值号 左边的变量 例如 g 9 8 g 10 20 9 不是等号 而是赋值号 例2 1 charc1 c2 c1

7、a c2 b 上面定义了2个字符型变量c1 c2 一个字符型变量可存放一个字符 将一个字符常量存放到一个字符变量中 实际上并不是把该字符本身放到内存中 而是将该字符的相应的ASCII码存放内存单元中 C语言字符型数据与整型数据之间可以通用 例2 2 includemain charc1 a c2 intk k c1 将字符型变量c1赋给整型变量k c2 97 将整数97赋给字符型变量c2 printf c c d c1 c2 c1 字符变量既可按字符形式输出 亦可按整型输出 printf n d c k k 整型变量既可按整型形式输出 亦可按字符型输出 getch 运行结果 a a 9797

8、a 例2 3将小写字母转换成大写字母 includemain charc1 c2 inti j c1 a c2 c1 32 c2 A printf c c c1 c2 getch 运行结果 a A 2 3 2赋值语句中的类型转换 左边变量与右边表达式的数据类型不一致时 C编译系统会自动实现数据类型的转换 转换的原则是 将赋值号右边的表达式值的类型转换成与左边变量相同的类型后再赋值 例如 inta longb charc a b long型变量b的值变换成int型后再赋给a b a int型变量a的值变换成long型后再赋给b b a c int型a c的值变换成long型后再赋给b 当右边表达

9、式值的类型比左边变量的类型要长时 会对右边的数据进行截取 仅取出与左边变量类型相同的长度 这意味着 会丢失高位字节或高位字 例2 4main inta 350 b charc c a b c printf d d d a c b getch 运行结果为 350 94 94 2 4数据的输出 2 4 1字符输出函数putchar 函数putchar 的功能是把一字节的代码值所代表的字符输出到显示器上 常用格式如下 putchar c 其中参数C可以是字符常量 变量或字符表达式 例2 5字符输出函数putchar 的功能 includemain charc A putchar c 输出字符A pu

10、tchar n 输出换行符 putchar 输出字符 getch 2 4 2格式化输出函数printf 格式化输出函数是按指定的格式完成输出过程 一般使用形式如下 printf 输出格式串 表达式表 其中 输出格式串包含 格式符 或非格式符 格式符 以 开头后面跟一个字母 格式符见表2 4 printf 函数的功能是凡遇格式符 就将对应的表达式的值按指定格式输出到显示器上 凡遇非格式符 则原样输出 输出格式串中的转换说明符与表达式的个数必须相同 它们按各自的先后顺序 一对应 如图2 2所示 例如 a 100 b 200 printf d d d n a b a b 输出结果为 100 200

11、300 换行 例2 8 includemain floatx1 123 5678 x2 4567 789 printf x1 f x2 f n x1 x2 printf x1 8 2f tx2 8 2f n x1 x2 getch 按任意键 printf c 3c n printf d 3d n 11 22 运行结果为x1 123 567802 x2 4567 789062x1 123 57x2 4567 79 按任意键后显示 1122 2 5数据的输入 数据的输入 一般是以键盘为处理对象的 从键盘接受字符和数据 字符输入函数getchar 和输出函数putchar 是以一个字节的字符代码为单

12、位来完成输入输出过程的 在程序中使用这两个函数时 要求在程序开头包含头文件stdio h 即 include 2 5 1字符输入函数getchar 功能是接收从键盘上输入的字符 在程序中使用这个函数输入字符时 可以用另一个变量接收读取的字符 例如 c getchar 例2 9字符输入函数getchar 的功能 includemain charch ch getchar printf ch c ch d n ch ch getch 当执行到语句 ch getchar 时 计算机就会等待用户击键 等待输入 2 5 2格式化输入函数scanf scanf 函数的功能是按指定的格式从键盘接受输入信息

13、一般使用格式如下 scanf 格式串 地址表 格式串 中既可以含格式符 也可以含非格式符 输入时 凡遇非格式符 要求原样输入 凡遇格式符 按指定格式输入数据 输入格式符表 例2 10从键盘上输入直径d的值 然后计算圆的面积area和周长len definePI3 1415926main floatd area len r printf 请输入直径的值 scanf f 2 6运算符和表达式 将运算符和运算对象按一定规则连接起来就成为表达式 2 6 1算术运算符 说明 1 模除运算是两个整数相除后取余数 要求 两边必须是整型数据 2 若算术运算符两边均为整数 则结果仍为整数 例 7 3 21 2

14、03 若参加运算的两个数中有一个数为实数 则结果为double型 4 每个运算符都有一个优先级 如乘除的优先级高于加减 在表达式求值时 按运算符的优先级高低次序进行 如先乘除 后加减 可改变运算次序 若在一个运算符对象两侧的运算符的优先级相同 则按规定的 结合方向 处理 有些运算符的结合方向为 从右到左 即 右结合性 2 6 2自增 自减运算符 右结合性 优先级为2 为自增运算符 为自减运算符 自增 自减运算表达式的结合方向都是自右至左 但 k与k 的不同之处在于 前者先执行k k 1 然后再使用k的值 而后者则先使用k的值 再执行k k 1 例2 11 includemain inti j

15、k k 30 i k 先将k值30赋给i 再使k值增1 此时k 31 i 30 printf i d k d i k j k k值先增1 再将k值赋于i 此时k 32 i 32 printf nj d k d j k 运行结果 i 30 k 31j 32 k 32 2 6 3赋值运算符 右结合性 优先级为14 赋值运算符为 例2 12main floatk x y x k 9 8 7 printf k 5 1f x 5 1f n k x y k 9 8 7 printf k 5 1f y 5 1f n k y 运行结果 k 9 8 x 16 8k 16 8 y 16 8 2 6 4逗号运算符

16、逗号运算符将两个表达式连接起来 其优先级15 最低 格式 表达式1 表达式2功能 先求解表达式1 再求解表达式2 整个逗号表达式的值为表达式2的值 在很多情况下 使用逗号表达式只是想求出各个表达式的值 例2 13 main inti j 0123 012是八进制数 其等价的十进制数是83 i 0 x3a 0 x3a是十六进制数 其等价的十进制数是58 printf d d n i j 运行结果 58 83 2 7常用的数学函数 在使用数学函数之前 要求在程序开头包含头文件 math h 即 include以下函数的参数类型和函数值类型均为实型 sqrt x 求x的开平方 x 0 pow x y 求xyexp x 求exabs x 求x的绝对值 n为int整型数 fabs x 求x的绝对值 n为double型浮点小数 log x 求x的对数 以e为底 x 0 log10 x 求x的对数 以10为底 x 0 sin x 求x的正弦 x的单位为弧度 cos x 求x的余弦 x的单位为弧度 tan x 求x的正切 x的单位为弧度 rand 产生0 32767范围内的整数随机数 例2 14 输入

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 外语文库 > 小语种语言

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号