《《基本数据类型》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《基本数据类型》PPT课件.ppt(21页珍藏版)》请在三一办公上搜索。
1、第2章 基本数据类型,2,内容提要,本章主要介绍C语言提供的基本数据类型各种类型常数的表示方法、变量的定义及初始化方法、符号常数的定义不同类型数据的输入和输出操作。C语言允许使用的数据类型有以下3类。(1)基本类型(2)构造类型(3)指针类型,5种基本数据类型,C语言提供的5种基本数据类型及对应的关键字如下。,基本数据类型的存储方式和取值范围,(1)char型(2)int型(3)float型(4)double型,基本数据类型的扩展,(1)signed或unsigned修饰(2)short和long修饰,常量及其类型,常量或常数是指在程序运行过程中,其值保持不变的量。常量也分为各种类型,而计算机
2、是根据常量的书写形式识别其数据类型的,因此常量的书写形式非常重要。1.整数 整数在计算机中是准确表示的,C语言能识别的整数可以是十进制、八进制和十六进制。2.实常数 实数在计算机中是近似表示的。C语言中,实数只能用十进制表示而不能用其他进制表示。3.字符常量 字符常量是指仅含单个ASCII(或EBCDIC)字符的常量4.字符串常量 字符串常量是用双引号括起来的0个或多个字符的序列。例如:,变量及其类型,变量是指那些在程序运行过程中其值可以改变的量。变量代表着存储器中的一个位置。在C语言中,变量具有以下3个属性。(1)变量可以定义为不同的数据类型,数据类型决定了该变量存储的数据的含义,即该变量可
3、以存放哪种类型的数据。(2)变量可以说明为不同的存储类型,存储类型决定了变量在计算机中的存储位置及其生命期,即该变量的值能保存多久。(3)变量可以在程序的不同位置上定义,定义的位置决定了变量的作用域,即该变量可以在哪个范围内被引用。,符号常数,符号常数是用标识符表示的常数。从外表看,它是标识符,像变量;但实质上,它是常数,它的值不能通过赋值或输入加以改变。1.使用符号常数的目的2.符号常数的定义,不同类型数据的输入输出,C编译系统为了方便用户使用,提供了多种输入输出函数,其中使用较多的是格式输入输出函数、单字符输入输出函数、文件输入输出函数等。printf()函数 scanf()函数 单字符输
4、入输出函数(getchar()、putchar())单字符输入函数(getche()和getch(),本章总结,本章重点是数据类型的概念,各种类型常数的表示形式,符号常量的定义,变量的命名、定义和初始化方法格式输入输出函数的调用方式及使用规则本章主要难点是:不同类型数据所占存储空间的大小和所能表示的数据范围;字符型数据和字符串数据的区别;变量的存储类型及其作用域和生命期的概念。,本章习题,一、选择题1.C语言中允许的基本数据类型包括_。A.整型、实型、逻辑型 B.整型、实型、字符型C.整型、字符型、逻辑型 D.整型、实型、逻辑型、字符型2.C语言规定,不同类型的数据占用存储空间的长度是不同的。
5、下列各组数据类型中,满足占用存储空间从小到大顺序排列的是_。A.short int,char,float,double B.char,float,int,doubleC.int,unsigned char,long int,float D.char,int,float,double3.在C语言中不同数据类型的的长度是_。A.C 语言本身规定的 B.任意的C.由用户自己定义的 D.与宿主机器字长有关的,本章习题,4.在 C 语言中,设 int 型占2字节,下列不能正确存入int型变量的常数是_。A.65536 B.0 C.037 D.0 xaf5.下列4组整型常量中,错误的一组是_。A.xcdf
6、 017 0 xe 123 B.160 0 xffff 011 0LC.01 32768u 0617 0 x163 D.0 x48a 0205 0 x0 2566.C语言中能用八进制表示的数据类型为_。A.字符型、整型 B.整型、实型 C.字符型、实型、双精度型 D.字符型、整型、实型、双精度型,本章习题,7.设char型占1字节,则unsigend char所能表示的数据范围是_。A.0255 B.128127 C.1256 D.1281288.下列属于C语言合法的字符常数是_。A.97 B.“A”C.t D.“0”9.在C语言中,合法的长整型常数是_。A.0L B.4962710 C.04
7、312765 D.0 xa34b7fe,本章习题,10.若有以下定义和语句:char c1=B,c2=E;printf(%d,%cn,c2-c1,c2+a-A);则输出结果是_。A.2,M B.3,e C.2,eD.输出项与对应的格式控制不一致,输出结果不确定11.若有以下定义和语句 int u=010,v=0 x10,w=10;printf(%d,%d,%dn,u,v,w);则输出结果是_。A.8,16,10 B.10,10,10 C.8,8,10 D.8,10,10,本章习题,12.已知字母B的ASCII码为十进制的66,下面的程序输出是_。main()char ch1,ch2;ch1=B
8、+4-3;ch2=B+5-3;printf(%d,%cn,ch1,ch2);A.67,D B.B,C C.C,D D.不确定的值13.下面程序的输出是_。main()int k=15;printf(k=%d,k=%o,k=%xn,k,k,k);A.k=15,k=15,k=15 B.k=11,k=17,k=17C.k=15,k=017,k=0 xf D.k=15,k=17,k=f,本章习题,14.当用#define X 23.6f定义后,下列叙述正确的是_。A.X是实型常数 B.X是实型变量 C.X是一串字符 D.语法错误15.当用const int B=9;定义后,下列叙述错误的是_。A.B是
9、整型变量 B.B是整型常数C.B不能在程序中再赋值 D.B可以用做数组元素的下标16.若变量a、b、c已正确说明为float型,要使语句scanf(%f%f%f,将11.0、22.0和33.0,依次赋给变量a、b、c,下列不正确的键盘输入形式是_。A.11 B.11.0,22.0,33.0 22 33C.l1.0 D.11 2222.0 33.0 33,本章习题,17.设x是int型变量,y是float型变量,用下面的语句给这两个变量输入值:scanf(i=%d,f=%f,本章习题,1.在Turbo C环境下,内存中存储常量C要占用 个字节,存储常量C要占用 个字节。2.定义符号常量的宏定义格
10、式是。3.说明局部变量时,若省略存储类型说明符,系统默认其为 存储类型,该存储类别的类型符为。4.无符号整型的类型关键字为,双精度实型的类型关键字为,字符型的类型关键字为。5.在C语言中,整数可用 进制数、进制数和 进制数三种数制表示。,本章习题,6.在C语言中,一个int型数据在内存中占2个字节,则int型数据的取值范围为。7.putchar()和getchar()函数定义在 标题文件中。8.定义符号常量的三种方法是、。9.全局变量和static型局部变量的初始化是在 阶段完成的,且初始化在整个程序执行期间被执行 次。10.字符串常量的结束符为,使用printf()函数输出字符串时,应使用的
11、格式转换说明符为。11.运行以下程序段,若要使a=5.0,b=4,c=3,则输入数据的形式应为_。int b,c;float a;scanf(%f,%d,c=%d,本章习题,三、写出程序的运行结果1.main()int a=10;printf(%d,%o,%xn,a,a,a);2.main()int x=10,y=20;printf(a=%d,b=%dn,x,y);3.main()char c=a;printf(%d,%o,%x,%cn,c,c,c,c);,本章习题,4.main()int a=10;float x=3.1416;printf(%d,%6dn,a,a);printf(%f,%en,56.1,568.1);printf(%14f,%14e,%g,%12gn,x,x,x,x);5.main()float x=123.456;double y=8765.4567printf(%f,%14.3f,%6.4fn,x,x,x);printf(%lf,%14.3lf,%8.4lf,%.4fn,y,y,y,y);6.#include main()printf(A=%d,B=%dn,35,035);printf(%f%3f%10.4fn,2.5,-6.8,1e4);printf(%u%un,623,-32768);printf(%d,%un,a,b);,