2. 基本数据类型
- 格式:pdf
- 大小:2.88 MB
- 文档页数:64
长春理工大学计算机学院 孙爽滋
第2章 基本数据类型 2.4.1 格式化输出函数printf() 格式: printf(格式控制字符串, 输出项表列); printf(" a = %d b = %f ", a, b);
普通 字符
格式 说明
可选输 出表列
作用:可以输出若干任意类型的数据
长春理工大学计算机学院 孙爽滋
长春理工大学计算机学院 孙爽滋
第2章 基本数据类型
int i; i=2.56; 例 //结果i=2; float f; 有符号数赋给无 符号类型变量, 会怎样?
int i;
i=10; f=i; 则 f=10.0
长春理工大学计算机学院 孙爽滋
第2章 基本数据类型
2.3 数据类型转换
相同类型数据的运算结果,还是该类型 不同类型数据的运算结果,是两种类型中取值范围大的那种 double > float > long > int > short > char
长春理工大学计算机学院 孙爽滋
第2章 基本数据类型
2.2 常量(Constant)
在程序中不能改变其值的量 包括: 整型 实型 字符型 如 'z', '3', '$', '\n' 用\开头的字符为转义字符, 代表1个字符
长春理工大学计算机学院 孙爽滋
转义字符表
转义字符形式 \n \t \v 换行 水平制表 垂直制表 意 义
长春理工大学计算机学院 孙爽滋
第2章 基本数据类型
声明变量是初始化变量的最好时机
–不被初始化的变量,其值为随机数
结果会是什么?
长春理工大学计算机学院 孙爽滋
第2章 基本数据类型
任务 编写一个程序,求一个半径为2.67,高为1.58的圆柱体 体积。
V r h
定义几个变量? 什么类型?
长春理工大学计算机学院 孙爽滋
第2章 基本数据类型
sizeof到底是什么?
C语言的关键字,并非函数 –计算类型占用的字节数
两种语法形式
sizeof(类型) –结果为类型占用的字节数
sizeof(表达式)
–结果为表达式值所属类型占用的字节数 一般都使用sizeof(变量名)
长春理工大学计算机学院 孙爽滋
长春理工大学计算机学院 孙爽滋
第2章 基本数据类型
2.3 数据类型转换
Example: int x = 10;
不改变x
float y;
y = (float)x; (float)10 x 10 y 10.000000 ??
10.000000
长春理工大学计算
– 数据的存储形式
– 合法的取值范围 – 占用内存空间的大小 – 可参与的运算种类
长春理工大学计算机学院 孙爽滋
第2章 基本数据类型
2.1 基本数据类型
数据类型
数据
数值 2.175 123 整型
非数值 Africa char
非整型 9/12/2003 int 整型 非整型 floatThe quick brown fox Jackie short intChan double 数值 非数值 long int 999 9002.12 数据属于不同类别 TRUE
长春理工大学计算机学院 孙爽滋
第2章 基本数据类型
2.2 常量(Constant)
在程序中不能改变其值的量 包括: 整型 指数形式 单精度 实型
实型 #include <stdio.h> 如: 2.3, 1.2e-5, main()
2.73F
{ 默认为double int x, y; 1.2345e+3(合法) x=sizeof(34.5); e5、2e1.23、.e5(不合法) y=sizeof(34.5F); printf("x=%d,y=%d\n",x,y); }
第2章 基本数据类型
2.4 数据的控制台输入输出
本节只讨论从终端(键盘)输入和输出到终 端(显示器)的输入输出函数。通常也把这些函
数称为控制台输入输出函数。主要是用得最广泛
的scanf函数、printf函数、getchar函数和putchar 函数等。其中scanf和printf用于格式化输入输出。
Type short int unsigned short char
Min value -32768(-215) 0 0
Max value 32767(215-1) 65536(216-1) 255
长春理工大学计算机学院 孙爽滋
第2章 基本数据类型 超出取值范围会怎样?
如short int的范围是-32768~32767 如果我们给它一个小于-32768或者大于32767的数会 如何呢? 现场编程测验……
Example:
int total, number; float average; … average = (float)total / number;
total
15
2
15.000000 / 2
7.500000
number
?? average 7.500000
长春理工大学计算机学院 孙爽滋
计算机基础教学部
小蛇能吞 下大象吗?
长春理工大学计算机学院 孙爽滋
第2章 基本数据类型 同种类型在不同的平台其占字节数不尽相同 如int在16位、32位和64位系统上分别占2、4和8个字节 不要对变量所占的内存空间字节数想当然 用sizeof获得变量或者数据类型的长度 现象与危害 在平台间移植时会出现问题,导致数据丢失或者溢出
第2章 基本数据类型
%d的格式符
# include <stdio.h> main() { int a=3,b=4; printf(“a and b is:\n”); printf(“%d %d\n”, a, b); printf(“a=%d , b=%d\n”, a, b); }
运行结果 a and b is: 3 4 a=3, b=4
#define 标识符 字符串
一般采用全大写字母表示 宏定义不是语句,而是一种编译预处理命令
长春理工大学计算机学院 孙爽滋
第2章 基本数据类型 计算圆的周长和面积
#include <stdio.h> 若PI的值改变, 宏定义处改动即可。
#define PI 3.14159
main() { float r; scanf("%f", &r); printf("circumference = %f\n", 2*PI*r); printf("area = %f\n", PI*r*r); }
长春理工大学计算机学院 孙爽滋
宏替换
第2章 基本数据类型
2.3 数据类型转换
数据中赋值时,会进行自动类型转换 取值范围小的类型赋值给取值范围大的类型是安全的 反之是不安全的 若大类型的值在小类型能容纳的范围之内,则平安无事 但是浮点数转为整数,会丢失小数部分,而非四舍五入 反之转换后的结果必然是错误的,具体结果与机器和实 现方式有关 避免如此使用,好的编译器会发出警告
General format:
%[<最小域宽> . <小数位数>]f
float circumference = 78.53; 9.4786789 ; printf (" %f" , circumference);
9.478679 输出结果:78.530000
默认情况下精确到六位小数
长春理工大学计算机学院 孙爽滋
int, float
长春理工大学计算机学院 孙爽滋
第2章 基本数据类型
变量声明(Variable Declaration)
变量的声明
类型关键字
变量名;
使用变量的基本原则 – 变量必须先声明,后使用 – 所有变量必须在第一条可执行语句 前声明 声明的顺序无关紧要 一条声明语句可声明若干个同类型的 变量
第2章 基本数据类型
2.2 常量(Constant)
在程序中不能改变其值的量 八进制 十进制 包括: 整型 #include <stdio.h> 如: 67, 022, 0x12 main()
十六进制
{ 默认为 int int x, y; x=34; y=034; printf("x=%d,y=%d\n",x,y); }
double
高
float
long
unsigned int
低
char,short
长春理工大学计算机学院 孙爽滋
第2章 基本数据类型
两个整数运算的结 果还是整数,不 是浮点数
Example:
int total, number; float average; … average = total / number ;
屏幕输出结果: c1=a, c2=A
长春理工大学计算机学院 孙爽滋
第2章 基本数据类型
#include <stdio.h> main() { char c1,c2,c3; c1='a'; c2='\n'; c3='\101'; printf("c1=%c, c2=%c,c3=%c", c1, c2,c3); }
屏幕输出结果: c1=a, c2= ,c3=A
长春理工大学计算机学院 孙爽滋
第2章 基本数据类型 字符常量/变量只能存放一个字符 一个字符在内存中以其ASCII码存储 字符常数就是一个普通整数,也可参与各种数学 运算