1 / 61
文档名称:

C语言基础.ppt

格式:ppt   大小:422KB   页数:61
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

C语言基础.ppt

上传人:012luyin 2017/10/25 文件大小:422 KB

下载得到文件列表

C语言基础.ppt

相关文档

文档介绍

文档介绍:C语言基础
柴群
计科学院
C 语言程序设计
1
本章主要内容
本章介绍C语言的基础,包括:
数据类型
运算符和表达式
均是程序设计的基本知识
为什么讨论这些知识?
通常程序要对数据进行操作处理:
处理的对象是数据
通过运算符和表达式进行操作
2
例如:
【】计算圆的面积,半径为 5 cm。
程序如下:
main( )
{ float r, area ;
r=5 ;
area=*r*r;
printf ("%f\n ", area) ;
}
运算结果是输出圆的面积:
程序中用到的数据:r、area、5、
对数据进行的运算:* 、=
例jc2_1
3
分析:
计算机操作处理时,要完成以下工作:
在内存中给半径 r 和运算结果 area 开辟存储空间,存放它们的值。应该留多大的地方来存放它们的值?
数据 5 和 与 r 、area 不同,它们是在编写程序时就给出确定的值,在运算过程中不会改变。这样的数计算机怎么处理?
对整数 5 ,计算机存放时是否有区别?
涉及数据类型
的基本知识
4
C语言的数据类型
C数据类型
数组类型
结构体类型
共用体类型
枚举类型
整型
字符型
实型(浮点型)
空类型
单精度型
双精度型
基本类型
指针类型
构造类型
本章讨论
基本类型数据
5
整型数据

基本整型数据 int ,分配 2 Byte
短整型数据 short int,分配 2 Byte
长整型数据 long int,分配 4 Byte
整型数据均以二进制补码形式存储
问题:
为什么要采用补码?
如何表示?
6
计算机中正、负数的表示
例如:109 =(1101101)2
要区别:+109 和-109
方法是:将符号也数码化
即: 正的符号+用 0 表示
负的符号-用 1 表示
∴计算机中的数表示方法是:
符号位+二进制数值(以 8bit 为例)
+109 →+110 1101 → 0110 1101
-109 →-110 1101 → 1110 1101
7
问题:计算机计算复杂化
例如计算: (-19)+(+22)
1001 0011 + 0001 0110
解决的方法是:
使用反码或补码的表示方法(按前述表示的编码称为原码),即能将减法一律转换为加法。
需要判断符号是否相同:
如果相同,结果符号不变,并进行绝对值相加
如果不同,结果取绝对值大的数的符号,并进行绝对值相减
8
原码、反码和补码
正数:原码、反码、补码相同
符号位为0,数值为对应的二进制数。
+109
[01101101]原= [01101101]反= [01101101]补
负数:
原码符号位为1,数值为绝对值的二进制数。-109 [11101101]原
反码符号位为1,数值为绝对值的二进制数各位变反。-109 [10010010]反
补码符号位为1,数值为绝对值的二进制数各位变反加1。-109 [10010011]补
9
2. 有符号和无符号整型数据
有符号的整型数据 signed int
无符号的整型数据 unsigned int
区别是将最高位看作符号位还是数据位
例如: 1111 1111 1010 1000
作为有符号数使用时,最高为符号位
为负数,值是:- 88(再求一次补)
作为无符号数使用时,最高为数据位
为无符号的数,值是:65448
10