第二章基本数据类型和运算 (2)

合集下载

第2章_数据类型、运算符和表达式《C语言程序设计(第三版)》-电子教案

第2章_数据类型、运算符和表达式《C语言程序设计(第三版)》-电子教案

2.2 标识符、常量与变量

符号常量
【例2-1】输入圆的半径,计算周长和面积。 #define PI 3.14159 void main() { float r,c,s; scanf("%f",&r); c=2*PI*r; s=PI*r*r; printf("r=%f,c=%f,s=%f\n",r,c,s); }

以下是合法的整型常量:

2.2 标识符、常量与变量

实型常量

实型常量只能用十进制形式表示 表示形式:


小数形式。由数字序列和小数点组成,如 3.1415926、-0.15、.15、2.等都是合法的实型 常量。 指数形式。由十进制数加上阶码标志“e”或 “E”及阶码组成,如3.14e-4或3.14E-4表示 3.14×10-4。
2.2 标识符、常量与变量

2.2.3 变量


在程序运行过程中,其存储的值可以被改变的量称 为变量 变量必须通过标识符进行说明,称为变量名。 变量名和内存单元地址存在映射关系,程序可以通 过变量名寻址,从而访问其存储的数据。
2.2 标识符、常量与变量

变量的定义和说明

数据类型 变量名1[,变量名2,…,变量名n];
long型转换成float型时由原来可达10位整数变成只有7位有效数字精度丢失但由于数的范围扩大了数据类型从较低级提升到较高级随着竞争日益激烈酒店嘴中的肥肉被大肆抢夺各大酒店在这场竞争中几乎溃不成军
21世纪高等学校精品规划教材
第2章 数据类型、运算符 和表达式



掌握C语言的基本数据类型 掌握标识符、关键字、常量和变量的使用 掌握运算符、表达式以及数据类型之间的转换 等 掌握简单数据的输入输出

C语言教程课件第二章 数据类型、运算符和表达式

C语言教程课件第二章 数据类型、运算符和表达式

例 整型变量的定义与使用
#include <stdio.h> void main() { int a,b,c,d; /*指定a、b、c、d为整型变量*/ unsigned u; /*指定u为无符号整型变量*/ a=12;b=-24;u=10; c=a+u;d=b+u; printf("a+u=%d,b+u=%d\n",c,d); }
例 向字符变量赋以整数。 • 运行结果: #include <stdio.h> a b void main() 97 98 { char c1,c2; c1=97; c2=98; printf("%c %c\n",c1,c2); printf("%d %d\n",c1,c2); }
• 说明:在第4和第5行中,将整数97和98分别赋给c1和c2,它 的作用相当于以下两个赋值语句: c1='a';c2='b'; 因为'a'和'b'的ASCII码为97和98
• 字符型变量用来存放字符常量,注意只能放一个字符。 • 字符变量的定义形式如下:char c1,c2; • 在本函数中可以用下面语句对c1,c2赋值: c1='a';c2='b'; • 一个字符变量在内存中占一个字节; • 将一个字符常量放到一个字符变量中,是将该字符的 相应的ASCII代码放到存储单元中,这样使字符型数据 和整型数据之间可以通用。一个字符数据既可以以字 符形式输出,也可以以整数形式输出。
运行结果: total=300 例2.1 符号常量的使用 #define PRICE 30 #include <stdio.h> void main ( ) 说明:如再用赋值语句给PRICE赋值是错的 { PRICE=40;/*错误,不能给符号常量赋值*/ int num, total; num=10; total=num * PRICE; printf(″total=%d\n ″,total); } 说明: 程序中用#define命令行定义PRICE代表常量30,此后凡在 本文件中出现的PRICE都代表30,可以和常量一样进行运算

第二章+数据类型、运算符和表达式

第二章+数据类型、运算符和表达式
2019/7/20
格式项的一般形式为:
%[附加格式] 格式控制符
方括号中的内容可以缺省。
附加格式控制
含义说明
l(小写字母)
m
数据最小输出宽度(一个具体正整数)
.n(一个具体 对实数,表示输出几位小数;对字 正整数) 符串,表示截取的字符个数
-(负号) 输出的数据域内向左对齐
+(正号) 要求正数和0带正号输出,负数带符 号输出
变量的定义 格式为: 类型 变量列表;
可同时定义多个同类型的变量,之间用逗 号分隔。 变量的初始化 1. 变量定义时:格式为 类型 变量名=常数; 2. 变量定义后:通过赋值语句实现
2019/7/20
变量的作用域:变量能够起作用或者 可以被使用的程序范围。由定义的位 置决定
1. 局部变量:在函数内部定义的变量, 只在其定义的某个函数或复合语句范 围内有效。
3) 例题分析:example25
2019/7/20
4. 寄存器变量:程序运行时存储在CPU寄 存器中的变量,只用于局部变量,要求 是整型和字符型变量。说明符“register”
5. 外部变量:表示该变量可以在程序中的 任何地方使用,包括定义此变量的源文 件之外,作用域为整个工程。只能用于 全局变量。说明符为“extern”。
a string”
2019/7/20
注意:“A”与‘A’完全不同,前者是字 符串,后者是字符,它们在内存中的存 贮空间并不相同。 在字符串中使用双引号必须以“\”” 表示。
实例 example22 符号常量:用标识符命名的常量,可代
替常量 在程序中直接使用。 1. 使用C语言中的一个预编译指令#define
整型常量:可以用十进制、八进制和十 六进制来表示。 a.十进制整数:[ ± ]若干各0~9的数字。 如12, 0 ,-234等

《C语言程序设计教程》第三版课后习题参考答案

《C语言程序设计教程》第三版课后习题参考答案

《C语言程序设计教程》第三版课后习题参考答案C语言程序设计教程第三版课后习题参考答案第一章:C语言概述1.1 C语言的特点答案:C语言是一种通用的、面向过程的程序设计语言,具有高效、简洁、灵活等特点。

它提供了丰富的程序设计元素和功能,适用于各种不同的应用领域。

1.2 C语言程序的基本结构答案:C语言程序由预处理指令、函数声明、函数定义、变量声明和语句组成。

其中,预处理指令用来引入头文件或定义宏,函数声明用来声明函数的名称和参数,函数定义用来实现函数的功能,变量声明用来声明变量的类型和名称,语句用来表达具体的计算过程。

1.3 C语言的数据类型答案:C语言提供了多种数据类型,包括基本类型(整型、浮点型、字符型等)和派生类型(数组、指针、结构体等)。

每种数据类型在内存中占据一定的存储空间,并具有特定的取值范围和操作规则。

1.4 C语言的运算符和表达式答案:C语言支持各种运算符和表达式,例如算术运算符(+、-、*、/等)、关系运算符(>、<、==等)、逻辑运算符(&&、||、!等)等。

通过运算符和表达式可以进行各种数值计算和逻辑判断。

第二章:基本数据类型与运算2.1 整型数据类型答案:C语言提供了不同长度的整型数据类型,包括有符号整型(int、long等)和无符号整型(unsigned int、unsigned long等)。

整型数据类型可以表示整数值,并具有不同的取值范围。

2.2 浮点型数据类型答案:C语言提供了浮点型数据类型(float、double等),用来表示带小数部分的实数值。

浮点型数据可以表示较大或较小的数值,并具有一定的精度。

2.3 字符型数据类型答案:C语言提供了字符型数据类型(char),用来表示单个字符。

字符型数据可以用于表示各种字符(包括字母、数字、符号等)。

2.4 布尔型数据类型答案:C语言不直接支持布尔型数据类型,但可以使用整型数据类型来表示布尔值(0表示假、非零表示真)。

第二讲.+基本数据类型及运算

第二讲.+基本数据类型及运算

第二章 基本数据类型及运算
1. 计算机结构 2. 计算机的数据运算 3. 计算机中数据存储方式 4. 程序设计中的基本数据类型 5. 程序设计数据输入及输出方法 6. 程序设计中的基本数据类型的运算
计算机存储的层次
• 计算机存储的层次
处理器 控制器 二级缓存 (SRAM) 主存 (DRAM) 外部 存储器 (磁盘)
二进制的加法表
• 二进制加法 A B 0 0 0 1 1 0 1 1 SUM 0 1 1 0
• 逻辑运算:与、或、非预算
SUM = + AB = ⊕ B AB A
计算机的数据运算
• 考虑进位的1位加法器
SUM
A 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
C 0 1 0 1 0 1 0 1
浮点型数据
• 科学计数法:
– 0.0000000714566778=7.14566778e-8
• 采用浮点方法移动小数点位置,可以用有限位数存储最高 精度的数据 • IEEE754的单精度和双精度浮点数格式,基为2
符号位 指数部分 尾数部分(无符号数)
– 尾数部分表示小数点后的数字,小数点前固定为1 – 单精度浮点数(float):符号位1位,指数位8位,尾数23位 – 双精度浮点数(double):符号位1位,指数位11位,尾数52位
单字符输入
C程序设计中的变量
• C程序中的变量表示程序中需要存储的数据对象,对应内 存中的存储空间 • 变量用变量名来标识
– 变量名以下划线或字母开头,后接0个或任意多个字母、数字和下 划线,C程序中的关键字不能用来命名变量(关键字见教材14页)
• 有效变量名:a, _b, c1_2 • 无效变量名:2a, &c, $d1

C语言各章节知识点总结

C语言各章节知识点总结

C语言各章节知识点总结C语言是一种常用的编程语言,广泛应用于操作系统、嵌入式系统、网络设备等领域。

下面是C语言各章节的知识点总结。

第一章:C语言概述1.C语言的起源和发展历史。

2.C语言的特点和优势。

3.C语言的应用领域和重要性。

4.C语言的编译过程和基本语法规则。

第二章:基本数据类型和运算符1.C语言的基本数据类型,如整型、浮点型、字符型等。

2.基本数据类型的存储范围和格式化输出。

3.C语言的运算符和运算符优先级。

4.表达式和赋值语句。

第三章:控制语句1. 条件语句,如if语句、switch语句。

2. 循环语句,如for循环、while循环、do-while循环。

3. 循环控制语句,如break语句、continue语句。

第四章:数组和指针1.数组的定义和初始化。

2.一维数组和二维数组的使用。

3.字符数组和字符串的处理。

4.指针的定义和操作。

5.数组和指针的关系。

第五章:函数1.函数的定义和调用。

2.函数的参数传递和返回值。

3.局部变量和全局变量。

4.递归函数和函数指针。

5.函数库的使用。

第六章:结构体和共用体1.结构体的定义和初始化。

2.结构体的访问和操作。

3.结构体数组和结构体指针。

4.共用体的定义和使用。

第七章:文件操作1.文件的打开和关闭。

2.文件的读写操作。

3.文件指针和文件的定位。

4.随机访问文件。

5.文件的错误处理和异常处理。

第八章:预处理和编译1.C语言的预处理指令和宏定义。

2.头文件的引用和包含。

3.条件编译和预处理器的工作过程。

4.编译和链接的过程。

第九章:动态内存管理1.动态内存分配和释放。

2. malloc函数和free函数的使用。

3.内存泄漏和内存溢出的问题。

4.堆和栈的区别和管理。

第十章:指针的高级应用1.指针数组和指向指针的指针。

2.函数指针和回调函数。

3.结构体指针和链表的操作。

4.动态内存分配和指针的应用。

第十一章:位运算和位域1.位运算的基本操作,如与、或、非、移位等。

C语言基本数据类型及运算题库有答案

C语言基本数据类型及运算题库有答案

C语言基本数据类型及运算题库有答案第二章基本数据类型及运算一、选择题1. 若以下选项中的变量已正确定义,则正确的赋值语句是。

A) x1=26.8%3; B) 1+2=x2; C) x3=0x12; D) x4=1+2=3;答案:C2. 设变量x为float型且已经赋值,则以下语句中能够将x中的数值保留到小数点后面两位,并将第三位四舍五入的是。

A) x=x*100+0.5/100.0 B) x=(x*100+0.5)/100.0C) x=(int)(x*100+0.5)/100.0 D) x=(x/100+0.5)*100.0答案:C3. 下列C语言中运算对象必须是整型的运算符是。

A) %= B) / C) = D) *=答案:A4. 若有以下程序段:int c1=1,c2=2,c3;c3=1.0/c2*c1;则执行后,c3中的值是。

A) 0 B) 0.5 C) 1 D) 2答案:A5. 设x和y均为int型变量,则以下语句:x+=y; y=x-y; x-=y; 的功能是。

A) 把x和y按从大到小排列 B) 把x和y按从小到大排列C) 无确定结果 D) 交换x和y中的值答案:D6. 下列变量定义中合法的是。

A)short_a=1-.le-1; B)double b=1+5e2.5;C)long do=0xfdaL; D)float 2_and=1-e-3;答案:A7. 以下4个选项中,不能被看作是一条语句的是。

A) {;} B) a=0,b=0,c=0;C) if (a>0); D) if (b==0)m=1;n=2;答案:D8. 设x=1,y=-1,下列表达式中解为8的是。

A)x&y B)~x│x C)x^x D)x<<=3答案:D9. 在C语言中不合法的整数是。

A)20 B)0x4001 C)08 D)0x12ed答案: C10. 以下选项中不正确的实型常量是A)2.607E-1 B)0.8103e0.2 C)-77.77 D)456e –2答案:B)11.若变量已正确定义并赋值,符合C语言语法的表达式是A)a=a+7 B)a=7+b+c,a++C)int(12.3%4) D)a=a+7=c+b答案:B)12.以下十六进制数中不合法的是A)oxff B)0Xabc C)0x11 D)0x19答案:A)13. 设int i=2,j=3,k=4,a=4,b=5,c=3;,则执行表达式(a=i<j)&&(b=j>k)&&(c=i,j,k)后,c值是。

C语言程序设计 第2章 数据类型

C语言程序设计 第2章 数据类型

2.2常量和变量 变量名与变量值的关系:
2.2常量和变量
变量的使用:先定义后使用
变量定义的一般形式:
数据类型 变量名1,变量名2,…,变量名n;
2.2常量和变量
➢ 凡未被事先定义的,系统不把它认作变量名,这就 能保证程序中变量名使用的正确
例:varname,在使用的时候误写成vaname
➢ 在定义变量时要指定变量的类型,在编译时就能为 变量分配相应的存储单元
5
2.2常量和变量
甘草 三七 干姜 葛根
枸杞 人参 陈皮 地黄
山药 当归 谷芽 黄连
贴上标签 加以区分
用标识符给变量起名字
2.2常量和变量 变量命名规则
➢ 只能由字母(a~z,A~Z)、数字(0~9)和下划线(_)构 成
➢ 第一个字符不能为数字 ➢ 不能与关键字同名
例:a9,_a, A_num √ 9a, a*num,int ×
控制语句:控制语句用于控制程序的流程。 C语言提供三类控制语句: ➢ 选择语句 ➢ 循环语句 ➢ 转移语句。 控制语句会在第三章和第四章详细介绍。
2.7 表达式与语句
复合语句: 复合语句由一对大括号括起来的一 条或多条语句组成。 例:{
turnOn(0,3); turnOn(0,4); turnOn(0,5); turnOn(1,4); }
2.7 表达式与语句
表达式语句:表达式末尾加上“;”就构成一条 表达式语句。 例:
s = 3.14 * r * r; 就是一条赋值表达式语句。表达式语句最后的 分号是语句中必不可少的一部分。
2.7 表达式与语句
函数调用语句:函数调用语句由函数调用加分 号构成。 例:
turnOn(1,1);

C语言第02章 数据类型、运算符与表达式

C语言第02章 数据类型、运算符与表达式

回到 首页
运算符和结合性 P325,附录3
2.8 算术运算符和算术表达式
3、自增、自减运算符
自增运算符++和自减运算符--均是单目运算符, 功能是使变量的值增1或减1。其优先级高于所有 双目运算符,结合性为右结合性(自右至左)。
回到 首页
例如:++i或i++ 等价于i=i+1; --i或i-- 等价于i=i-1;
2.7数值型数据之间的混合运算
回到 首页
1、整型、实型、字符型数据之间可以混合运 算
整型(包括int,short,long)和实型(包括float,double)数据可 以混合运算,另外字符型数据和整型数据可以通用,因此,整 型、实型、字符型数据之间可以混合运算。 例如,表达式10+'a'+1.5-8765.1234*'b'是合法的。
2.9赋值运算符和赋值表达式
1、赋值运算符和赋值表达式
赋值运算符:“=”为双目运算符,右结合性。 赋值表达式:由赋值运算符组成的表达式称为赋值表达 式。 赋值表达式一般形式: 变量 赋值符 表达式 如 a=5 类型转换:将高精度的数据类型赋值给低精度的数据类 型,可能出错。
回到 首页
2.9赋值运算符和赋值表达式
2.8 算术运算符和算术表达式
3、自增、自减运算符
回到 首页
y=++x;等价于先计算x=x+1(结果x=6),再执行y=x,结果y=6。 y=x++;等价于先执行y=x,再计算x=x+1,结果y=5,x=6。 y=x++*x++;结果y=25,x=7。x++为后缀形式,先取x的值进行“*” 运算,再进行两次x++。 y=++x*++x;结果y=49,x=7。

二级c语言考试习题

二级c语言考试习题

读程序第一章概述[1]分析下列程序段的运行结果。

main( ){ char ch1='\101',ch2='\x 5c ';printf("%c,%c\n",ch1,ch2);}第二章基本数据类型和运算[1]分析下列程序,写出运行结果。

main(){printf("C语言各数据类型的长度为:\n");printf("short %d bytes\n",sizeof(short)); printf("int %d bytes\n",sizeof(int));printf("long %d bytes\n",sizeof(long);printf("char %d bytes\n",sizeof(char));printf("float %d bytes\n",sizeof(float)); printf("double %d bytes\n",sizeof(double)); }第三章顺序、选择和循环结构的程序设计[1]阅读程序,写出运行结果。

main(){ int a=10,b=4,c=3;if (a<b) a=b;if (a<c) a=c;printf("%d,%d,%d",a,b,c);}[2]阅读下列程序,写出程序的输出结果。

main(){ int x=100,a=10,b=20,ok1=5,ok2=0; if (a<b)if (b!=15)if (!ok1)x=1;else if(ok2)x=10;else x=-1;printf("%d\n",x);}[3]阅读下列程序,写出程序运行的输出结果。

main(){ int y=9;for (;y>0;y--)if(y%3==0){printf("%d",--y);continue;}}[4]阅读下列程序:main(){int a;char b;float c;printf("input a b c:");scanf("%d%c%f",&a,&b,&c);printf("a=%d,b=%c,c=%f\n",a,b,c);}程序运行后若输入“1234r1234.567(回车)”,写出程序的输出结果。

第2章 数据类型%2C运算符与表达式

第2章 数据类型%2C运算符与表达式

字符型 ‘a‟,
„b‟,‘2‟
2013-7-5
第4页
运行结果: total=300 【例2.1】在程序中使用符号常量 #define PRICE 30 #include <stdio.h> void main ( ) 如再用赋值语句给PRICE赋值 PRICE=40;/* 错误,不能给符 { 号常量赋值*/ int num, total; int PRICE; /* 错误,PRICE不 num=10; 是变量,不能指定类型 */ total=num * PRICE; printf(″total=%d\n″,total); } 符号常量: 用一个标识符代表一个常量。 符号常量的值在其作用域内不能改变, 也不能再被赋值。
2013-7-5
第19页
2.3
整型数据
2.3.2 整型变量 • 整数类型的有关数据(Turbo C 2.0)
类型 基本型 类型说明符 int 长度 2字节 数的范围 -32768~32767
短整型
长整型 无符号整型
short
long unsigned
2字节
4字节 2字节 4字节
-215~215-1
短整型
长整型 无符号整型
short
long unsigned
2字节
4字节 2字节 4字节
-215~215-1
-231~231-1 0~(232-1) 0~65535 0~(232-1)
无符号短整型 unsigned short 2字节 无符号长整型 unsigned long
2013-7-5
第21页
2013-7-5 第22页
2.3
整型数据
数据在内存中以二进制形式存放。 如: int i; /* 定义为整型变量 */

C语言数据类型ppt课件

C语言数据类型ppt课件
21
2.2 常量与变量
(3)整型数据在内存中的存放形式
int x; x=10; 则变量x的值10在内存中的存放形式:
int x;
x=-10; 则变量x的值10在内存中的存放形式:
22
2.2 常量与变量
(4)整型数据的溢出
例2-2 整型数据的溢出问题
#include <stdio.h>
int main()
\r
<
\a
\‘
回车 响铃 单引号
\ddd 3位8进制数代表的字符
转义字符 \t \b \f \\ \“ \xhh
含义 水平制表 退格 换页 反斜线 双引号 2位16进制数代表的字符
12
2.2 常量与变量
如 ‘\101’ -----------‘A’ ‘\012’ -----------’\n’ ‘\376’ -----------’’ ‘\x61’ -----------’a’ ‘\060’ -----------’0’
unsigned short。 ⅲ. 无符号长整型:类型说明符为
unsigned long。
20
2.2 常量与变量
(2)整型变量的定义与使用
例2-1 整型变量的使用
#include <stdio.h> int main() {
int x,y,z; x=10;y=20; z=x+y; printf(“x+y=%d\n”,z); return 0; } 输出结果:x+y=30
说明:数据类型所占字节数随机器硬件不同而不同, 上表以IBM PC机为例。
4
2.2 常量与变量
• 数据是程序的处理对象 • C语言将数据分为常量与变量

第二章 C语言的基本数据类型及运算

第二章 C语言的基本数据类型及运算
行绝对值相减
解决的方法是: 使用反码或补码的表示方法(按前述
表示的编码称为原码),即能将减法一律 转换为加法。
2020/12/11
原码、反码和补码
11
正数:原码、反码、补码相同
– 符号位为0,数值为对应的二进制数。 +109
[01101101]原 = [01101101]反 = [01101101]补
• 指数只能是整数,而尾数则可以是整数也可以是 小数 ,无论指数或尾数均不能省略 例如:1e、E.5、E-3 非法
• 实型常量的类型:默认为double型,后面加F (或f),则强调表示该数是float类型 例如:3.5f、1e2F
2020/12/11
3. 字符型常量
22
可视字符常量 – 单引号括起来的单个可视字符 例如:'a'、'A' 、'+' 、'3'、' ' 等
例如: #define LEN 2.5
定义符号常量
main( )
{ float a,b;
a= 2*3.14 *LEN;
使用符号常量
b=3.14*LEN*LEN;
printf("a=%f,b=%f\n",a,b);
}
编译前系统进行替换
2020/12/11
5. 符号常量
25
main( )
{ float a,b;
负数:
– 原码符号位为1,数值为绝对值的二进制
数。
-109 [11101101]原
– 反码符号位为1,数值为绝对值的二进制
数各位变反。 -109 [10010010]反
– 补码符号位为1,数值为绝对值的二进制

C语言 数据类型、运算符与表达式

C语言  数据类型、运算符与表达式

C语言A
整型数据的溢出
#include <stdio.h> void main() { int a,b; a=32767; b=a+1; printf(“%d,%d\n”,a,b); } 运行结果:32767,-32768
说明:数值是以补码表 示的。一个整型变量 只能容纳-32768~ 32767范围内的数, 无法表示大于32767 或小于-32768的数。 遇此情况就发生‚溢 出‛。
运行结果:total=300
量赋值。 */
C语言A
a
变量名 变量值 存储单元
二、变量
3
变量代表内存中具有特定属性的一个存储单
元,它用来存放数据,这就是变量的值,在 程序运行期间,这些值是可以改变的。 变量名实际上是一个以一个名字对应代表一 个地址,在对程序编译连接时由编译系统给 每一个变量名分配对应的内存地址。从变量 中取值,实际上是通过变量名找到相应的内 存地址,从该存储单元中读取数据。
C语言A
标识符:用来标识变量名、符号常量名、函
数名、数组名、类型名、文件名的有效字符 序列。
符号常量:在C语言中,可以用一个标识符
来表示一个常量,称之为符号常量。
符号常量在使用之前必须先定义,其一
般形式为:
#define 标识符 常量
C语言A
习惯上符号常量的标识符用大写字母,
变量标识符用小写字母,以示区别。 符号常量与变量不同,它的值在其作用 域内不能改变,也不能再被赋值。 使用符号常量的好处是:

例如:求-10的补码。 15
10的原码: 取反:
0
0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0

第2章 数据类型、运算符与表达式

第2章  数据类型、运算符与表达式
第二章 2.2 常量和变量
注意事项:
八进制的数码范围为0--7; 则:018、091、0A2 都是错误的数据表示方法。
十六进制的数码除了数字0-9外, 还使用英文字母a-f (或A-F)表示10-15。 如:0x1e、0Xabcdef、0x1000 但:0X2defg、0x100L都是错误的。
第二章 2.2 常量和变量
二、定义方法
整型变量分别以下列方式定义 1. 基本整型 int a, b, c;
2. 短整型 3. 长整型 short int 或 short a, b, c; long int 或 long a, b, c;
4. 无符号型 unsigned a, b, c;
unsigned short a, b, c; unsigned long a, b, c;
4. 一个非负整数<32768 则可赋给 unsigned int。
5. 一个常数后加 'l',或'L',表示长整数. 如123l. 主要
用于函数调用时形、实参数传递。
练习:请补充完整下列程序,使之符合给定的运行结果
Main( ) {int a,b, sep,tim; a=7;b=2; tim=a*b; sep=a/b; printf(“ ”); printf(“ ”); }
c1=97;
c2=98;
printf ("%c %c", c1, c2)
} 运行结果 a b
例2: main ( ) { char c1, c2; c1= ' a ';
c2=' b ';
c1=c1– 32; c2=c2– 32;
printf ("%c %c", c1, c2)

c++第二章

c++第二章

int a, b;
float x,y ;
(定义变量a和b为整型) (定义变量x和y为单精度实型)
• 变量的赋值和初始化
变量必须先有确定的值后才能参与各种相应的操作,变
量获取值的方法有三种:输入、赋值、初始化 • 赋值语句 例如: int a; a = 3;
// 使整型变量a的值为3
又如: int a, b, c; a = b = c = 0;//允许在一条赋值语句中为多个变量同时赋值 • 初始化:在定义变量的同时对变量赋初值。 例如: int a=3; 或 int a(3); // 使整型变量a的值为3
在c++中,int型占4个字节。
八进制形式 以数字0开头,由0~7之间的数字组成的数 据,如: 056。
十六进制数
以0x或0X开头,由数字0~9和字母A、B、C、 D、 E、F组成的数据。如: 0X5A、0x39、0x5b。
• 实型常量
实型常量有两种表示方式:
1)十进制小数形式 由正负号、数字和小数点组成,其中小数点不能缺 少,正数符号可省略。如1.25、-1.25、17.和.1。 2)指数形式 由尾数开头,加上指数部分共同构成,其中指数部 分由指数符号e(或E),正负号及整数组成。如1.25e-5、 +1e10、-1.25e5、1e-6、3e2。 注意:e前面不能没有数字,e后面的数字必须为整数,也 不能加园括号。如1E(-3)、E-5、1e2.1都是错误的。
在逻辑运算中,逻辑运算符两端的操作数如为“非0”, 就当作“真”来处理,如果是“0”,便当作“假”来 处理。 例如: 5>3 && a<b的结果为1 !12+3<6的结果为1。
说明:

2006C程序设计-第2章(补充)

2006C程序设计-第2章(补充)

例 int a=1234; float f=123.456; char ch=‘a’; printf(“%8d,%2d\n”,a,a); printf(“%f,%8f,%8.1f,%.2f,%.2e\n”,f,f,f,f,f); printf(“%3c\n”,ch);
••••1234,1234 123.456000,123.456000,•••123.5,123.46,1.23e+02 ••a
程序设计 –庞振平等 华南理工大学出版社
第二章 基本数据类型及运算
(9)g格式符,用来输出实数,自动选择f格式或e格式 例:g格式输出 f=123.456 printf(“%f\n”,f); printf(“%e\n”,f); printf(“%g\n”,f); 输出结果: 123.456000 1.234560e+002 123.456
C程序设计 –庞振平等 华南理工大学出版社
第二章 基本数据类型及运算
(5)c格式符,用来输出一个字符 char c=‘a’;printf(“%c”,c); #include <stdio.h> main() { char c=‘a’;int i=97; printf(“%c,%d”,c,c); printf(“%c,%d”,i,i); }
00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 16位 16位
//0000123.46
//000+1234
//000+123.46
例: #的使用方法 例 int a=123; printf(“%o,%#o,%X,%#X\n”,a,a,a,a); 例: l的使用方法 //173,0173,7B,0X7B //0, • 65536

第2章 数据类型、运算符、表达式

第2章 数据类型、运算符、表达式

第二章 数据类型、运算符、表达式一、数据类型C 语言中的数据类型比别的语言丰富。

基本类型的数据又可分为常量和变量,它们可与数据类型结合起来分类,即为整型常量、整型变量、实型(浮点型)常量、实型(浮点型)变量、字符常量、字符变量、枚举常量、枚举变量。

1、常量与符号常量常量:在程序执行过程中,其值不发生改变的量称为常量。

常量区分为不同的类型,如68、0、-12为整型常量,3.14,9.8为实型常量,‘a ’,‘b ’,‘c ’则为字符常量。

常量即为常数,一般从其字面即可判别。

符号常量:有时为了使程序更加清晰和便于修改,用一个标识符来代表常量,即给某个常量取个有意义的名字,这种常量称为符号常量。

如:#define PI 3.142、变量变量:程序执行过程中其值可以改变的量。

定义方法定义形式:数据类型 变量名1,变量名2,……变量名n ;整型(int )数据类型 基本类型 整型 单精度型(float )字符型(char )长整型(long )短整型(short )实型 双精度型(double )枚举类型(enum )共用体类型(union )构造类型结构体类型(struct )数组类型空类型(void )指针类型(*)如:char ch1, ch2; /* ch1,ch2为变量*/float x, y; /* x ,y 为实型变量*/int a, b, c; /* a,b,c 为整型变量*/在书写变量说明时,应注意以下几点:(1) 允许在一个类型说明符后,说明多个相同类型的变量。

各变量名之间用逗号间隔。

类型说明符与变量名之间至少用一个空格间隔。

(2) 最后一个变量名之后必须以“;”号结尾。

(3) 变量说明必须放在变量使用之前。

一般放在函数体的开头部分。

另外,也可在说明变量为整型的同时,给出变量的初值。

其格式为:类型说明符 变量名标识符1=初值1,变量名标识符2=初值2,...;3、数据在内存中的表示整型数据:以二进制的形式表示(1) int 类型正数: 如 123 (+123)用 16 位二进制(二个字节)表示原码 反码(原码同) 补码(原码同)最大正整数 215-1=214+213+212+211+210+29+2827+26+25+24+23+22+21+20=32767负数:如 –123原码补码(补码加 1)1取反加1 最大负整数-215=32768 因为 -215 < -(215-1) 所以用 -215 而不用 -(215-1)(2) unsigned (int) 类型称为无符号整数,它不是指不带“+ 或 -”号的整数,而是指内存表示这类数时没有符号位,16最大数215+214+213+2122+21+20=65535最小数 0 (3) long (int) 类型用 32 位二进制(四个字节)表示,其他同 int 型(4) short 类型有的计算机(小型、中型、大型机)int 即是 long ,而short 用16 位二进制(二个字节)表示。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

D.0
38.设 a=1,b=2,c=3,d=4,则表达式:a<b?a:c<d?a:d 的结果为( D )。
A.4
B.3
C.2
D.1
39.设 a 为整型变量,不能正确表达数学关系:10<a<15 的 C 语言表达式是( A )。
A.10<a<15
B.a==11‖a==12‖a==13‖a==14
C.a>10&&a<15
D.!(a<=10)&&!(a>=15)
40.int a=0;if(a=1) a+=10;结果的值是( B )。
A.0
B.11
C.10
D.出错
41.下列表达式中符合 C 语言语法的赋值表达式是( C )。
A.a=7+b+c=a+7
B.a=7+b++=a+7
C.a=(7+b,b++,a+7) D.a=7+bห้องสมุดไป่ตู้c=a+7
D.%ld
58.下列格式符中,哪一个可以用于以 16 进制形式输出整数( B )。
A.%16d
B.%8x
C.%d16
D.%d
59.a 是 int 类型变量,c 是字符变量。下列输入语句中哪一个是错误的( B )。
A.scanf(”%d,%c”,&a,&c);
B.scanf(”%d%c”,a,c);
C.scanf(”%d%c”,&a,&c);
A.&&,!,‖
B.‖,&&,!
C.&&,‖,! D.!,&&,‖
20.对 C 程序在作逻辑运算时判断操作数真、假的表述,下列哪一个是正确的( A )。
A.0 为假非 0 为真 B.只有 1 为真
C.-1 为假 1 为真
D.0 为真非 0 为假
21.表达式 x==0&&y!=0‖x!=0&&y==0 等效于( A )。
A.printf(“%d,%f”,a,x);
B.printf(“%d,%1f”,a,x);
C.scanf(“%1d,%1f”,&a,&x);
D.printf(“%1d,%1f”,a,x);
65.还是 int a=255,b=8;则 printf(“%x,%o\n”,a,b);的输出的是( B )。
A.255,8
A.|1234 1234|
B.|123 1234| C.|1234 12-34|
D.|234 1234|
62.使用 scanf(“x=%f,y=%f”,&x,&y);要使 x,y 均为 1.25,正确的输入是( C )。
A.1.25,1.25
B.1.25 1.25
C.x=1.25,y=1.25
D.x=1.25 y=1.25
A.06
B.0177776
C.066
D.0177766
56.设有无符号整型变量 a 值为 331,计算表达式 a=(a>>4)&~(~0<<4)后,a 的值是( A )。
A.4
B.15
C.015
D.017
57.下列格式符中,哪一个可以用于以 8 进制形式输出整数( C )。
A.%d
B.%8d
C.%o
B.ff,10
C.0xff,010
D.输出格式错
66.设有 int i=010,j=10;则 printf(“%d,%d\n”,++i,j--);的输出的是( B )。
A.11,10
B.9,10
42.设 f 是实型变量,下列表达式中不是逗号表达式的是( D )。
A.f=3.2,1.0 B.f>0,f<10
C.f=2.0,f>0
D.f=(3.2,1.0)---赋值表达式
43.下列表达式中,不正确的表达式是( B )。
A.a=1,b=1
B.y=int(x)
C.a=b=5
D.i++
44.int n;float f=13.8;执行 n=((int)f)%3 后,n 的值是( A )。
A.算术运算、赋值运算、关系运算
B.算术运算、关系运算、赋值运算
C.关系运算、赋值运算、算术运算
D.关系运算、算术运算、赋值运算
18.关系运算符中优先级最低的运算符是( C )。
A.“>=”和“<=” B.“>”和“<”
C.“==”和“!=”
D.“<=”和“<”
19.逻辑运算符中,运算优先级按从高到低依次为( D )。
B.2
C.3
D.4
4.在 PC 机中,”a\xff”在内存占用的字节数是( C )。
A.5
B.6
C.3
D.4
5.字符串“ABC”在内存占用的字节数是( B )。
A.3
B.4
C.6
D.8
6.字符串”\’ABCD\’”在内存占用的字节数是( C )。
A.4
B.6
C.7
D.8
7.在 C 语言中,合法的长整型常数是( A )。
35.若已定义 x 和 y 为 double 类型,则表达式 x=1,y=x+3/2 的值是( C )。
A.1
B.2
C.2.0
D.2.5
36.sizeof(double)的结果值是( A )。
A.8
B.4
C.2
D.出错
37.表达式 1?(0?3:2):(10?1:0)的值是( B )。
A.3
B.2
C.1
C.char a=%;
D.char a=*;
15.要为 float 类型变量 x、y、z 赋同一初值 3.14,下列说明语句哪一个是正确的( C )。
A.float x,y,z=3.14;
B.float x,y,z=3*3.14;
C.float x=3.14,y=3.14,z=3.14;
D.float x=y=z=3.14;
第二章 基本数据类型和运算
一、单项选择题
1.下列数据中属于“字符串常量”的是( A )。
A.”a”
B.{ABC}
C.’abc\0’
D.’a’
2.下列数据中属于“字符串常量”的是( B )。
A.ABC
B.“ABC”
C.’abc’
D.’a’
3.在 PC 机中,’\n’在内存占用的字节数是( A )。
A.1
A.(int)a
B.int(a)
C.a=a-48
D.a/(int)a
52.设 a 是 int 型变量,其值为 3,则把其值变成字符‘3’的表达式是( D )。
A.(char)a
B.a=3
C.a=a-48
D.a=a+48
53.设 ch 是 char 型变量,其值为‘A’,则下面表达式的值是( B )。
A.0,0
B.0,1
C.1,0
D.1,1
24.设整型变量 m,n,a,b,c,d 均为 1,执行(m=a>b)&&(n=c>d)后,m,n 的值是( B )。
A.0,0
B.0,1
C.1,0
D.1,1
25.设 a 为 2,执行下列语句后,b 的值不为 0.5 的是( B )。
A.b=1.0/a
B.b=(float)(1/a)
x=10;t=x&&x>10;。
A.不定值
B.10
C.1
D.0
50.设 x,y,z,t 均为 int 型变量,则执行以下语句后,t 的值为( C )。
x=y=z=1;t=++x‖++y&&++z;
A.不定值
B.2
C.1
D.0
51.设 a 是 char 型变量,其值字符为‘1’,则把其值变成整数 1 的表达式是( C )。
A.x*y==0&&x+y!=0
B.x*y==0&&(x+y==0) C.x==0‖y==0
D.x*y=0‖x+y=0
22.表达式!x‖a==b 等效于( D )。
A.!((x‖a)==b)
B.!(x‖y)==b
C.!(x‖(a==b))
D.(!x)‖(a==b)
23.设整型变量 m,n,a,b,c,d 均为 0,执行(m=a==b)‖(n=c==d)后,m,n 的值是( C )。
63.要使 double x; long a;获得数据,正确的输入语句是( C )。
A.scanf(“%d,%f”,&a,&x);
B.scanf(“%f,%1d”,&x,&a);
C.scanf(“%1d,%1f”,&a.&x);
D.scanf(“%1d,%1f”,a,x);
64.要使 double x; long a;的数据能正确的输出,输出语句应是( D )。
C.b=1/(float)a
D.b=1/(a*1.0)
26.设 a 为 5,执行下列语句后,b 的值不为 2 的是( C )。
A.b=a/2
B.b=6-(--a)
C.b=a%2
D.b=a>3?2:2
27.执行语句“x=(a=3,b=a--)”后,x,a,b 的值依次为( C )。
A.3,3,2
相关文档
最新文档