C语言-基本数据类型、常量和变量
C语言第2讲--数据的表示之基本数据类型
5.字符输出举例
例3.7(P51) main() 运行结果:A,B { char a,b; 65,66 a='a'; b='b'; /*或 b=98;可向字符变量赋以整数 */ a=a-32; b=b-32; printf("%c,%c\n%d,%d\n",a,b,a,b); } 注:C语言允许字符变量参与数值运算,即用字符 的ASCII 码参与运算。 大小写字母的ASCII 码相差32,因此运算后把小写 字母换成大写字母
结果:total1=300 total2=600
6
二、变量
变量以标识符命名。 变量的定义: 类型名 标识符1,标识符2,......标识符n; int a,b,c; float x,y,z;
注意事项:
/* a,b,c 为整型变量 */ /* x,y,z 为单精度型变量 */
(1)
(2)
变量必须先定义后使用
double a1,a2; a1,a2为double型变量名,每个 变量占8个字节的空间
20
3.浮点型数据的格式输出
#include <stdio.h> /*可省 */ void main() { float a=123.456; double b=1234.5678; printf(“a=%f\n”,a); printf(“b=%f\n”,b); }
输出结果: a=123.456001 b=1234.567800
21
4.printf( )函数中浮点型数据的输 出格式符(自阅)
%f :按小数形式输出实数(包括双精度),默认保留6位
小数。
%e(=%E):按指数形式输出实数(包括双精度) ,尾数 部分默认保留6位有效数字。 %.3f:按小数形式输出实数,保留3位小数。 %8.3f :按小数形式输出实数,保留3位小数,数据总宽
c类的定义和声明
c类的定义和声明(原创版)目录1.C 语言的基本数据类型2.C 语言的变量和常量3.C 语言的运算符4.C 语言的控制语句5.C 语言的函数6.C 语言的数组和字符串7.C 语言的文件操作正文C 语言是一种高级计算机编程语言,广泛应用于操作系统、嵌入式系统、游戏开发等领域。
C 语言的定义和声明是编写程序的基础,下面我们将详细介绍 C 语言的基本概念。
1.C 语言的基本数据类型包括整型、浮点型、字符型和空类型等。
整型通常表示整数,浮点型表示小数,字符型表示单个字符。
2.在 C 语言中,变量和常量是用来存储数据的。
变量是可变的,常量是不可变的。
在声明变量时,需要指定变量的数据类型,例如:int a; double b; char c; 常量可以用 const 关键字来声明,例如:const int MAX_VALUE = 100;3.C 语言提供了丰富的运算符,包括算术运算符、关系运算符、逻辑运算符、赋值运算符和位运算符等。
运算符的优先级和结合性也需要掌握,例如:a + b 和 a * b 的优先级不同,需要用小括号来明确运算顺序。
4.C 语言的控制语句包括条件语句(if-else)、循环语句(for、while、do-while)和跳转语句(break、continue、goto)。
掌握这些控制语句,可以编写出更加复杂的程序。
5.函数是 C 语言中重要的组织代码的方式,可以实现代码的模块化和重用。
函数的声明和调用需要使用函数原型,例如:int add(int a, intb); int main() { int x = add(10, 20); }6.数组和字符串是 C 语言中常用的数据结构。
数组是一段连续的内存空间,可以存储多个相同类型的数据。
字符串是一段字符数组,通常用字符串常量或字符数组来表示。
7.文件操作是 C 语言中重要的功能之一,可以用来读写数据。
C 语言提供了 fopen、fread、fwrite 等函数来实现文件操作。
C语言的数据类型和变量定义详解
C语言的数据类型和变量定义详解C语言是一种广泛应用于计算机科学和编程领域的编程语言。
在C语言中,数据类型和变量定义是非常重要的概念。
本文将详细解释C语言中的数据类型和变量定义。
一、数据类型的概念和分类数据类型是指数据的种类和存储方式。
在C语言中,数据类型分为基本数据类型和派生数据类型两大类。
1. 基本数据类型C语言提供了几种基本数据类型,包括整型、浮点型、字符型和布尔型。
整型数据类型用于存储整数,包括int、short、long和long long等。
这些数据类型的区别在于所占用的存储空间大小和表示范围。
浮点型数据类型用于存储带有小数部分的数值,包括float和double。
float类型占用4个字节,而double类型占用8个字节,所以double类型的精度更高。
字符型数据类型用于存储单个字符,包括char。
在C语言中,字符型数据实际上是用整数来表示的,每个字符对应一个整数值。
布尔型数据类型用于存储真值,包括_Bool。
它只有两个取值,即0和1,分别表示假和真。
2. 派生数据类型派生数据类型是通过基本数据类型定义的,包括数组、指针、结构体和联合体等。
数组是一组相同类型的数据的集合,可以通过下标来访问其中的元素。
数组的定义方式为:数据类型变量名[数组长度]。
指针是用于存储内存地址的变量,通过指针可以间接访问变量的值。
指针的定义方式为:数据类型 *变量名。
结构体是一种自定义的数据类型,可以包含多个不同类型的成员变量。
结构体的定义方式为:struct 结构体名 { 成员变量列表 }。
联合体是一种特殊的结构体,它的所有成员变量共享同一块内存空间。
联合体的定义方式与结构体相似。
二、变量的定义和使用变量是用于存储数据的一种命名空间。
在C语言中,变量的定义方式为:数据类型变量名。
变量名是由字母、数字和下划线组成的字符串,不能以数字开头,且不能与C 语言的关键字重复。
变量名的命名应具有一定的意义,以便于代码的理解和维护。
数据类型,常量变量
C程序设计(第三版) 程序设计(第三版) 程序设计
夏承遗@天津理工大学计算机学院 夏承遗 天津理工大学计算机学院
21
3.3
整型数据
(4) 一个整常量后面加一个字母u或U,认 为是unsigned int型,如12345u,在内存 中按unsigned int规定的方式存放(存储 单元中最高位不作为符号位,而用来存储 数据)。如果写成-12345u,则先将-12345 转换成其补码53191,然后按无符号数存 储。
C程序设计(第三版) 程序设计(第三版) 程序设计 夏承遗@天津理工大学计算机学院 夏承遗 天津理工大学计算机学院 10
3.3
整型数据
3.3.1整型常量的表示方法 整型常量的表示方法 整型常量即整常数。在C语言中,整常数 可用以下三种形式表示:
(1)十进制整数。 如:123, -456.4。 (2)八进制整数。以0头的数是八进制数。 如:0123表示八进制数123,等于十进制数 83,-011表示八进制数-11,即十进制数-9。
C程序设计(第三版) 程序设计(第三版) 程序设计
夏承遗@天津理工大学计算机学院 夏承遗 天津理工大学计算机学院
23
3.4 浮点型数据
3.4.1浮点型常量的表示方法 3.4.1浮点型常量的表示方法 两种表 示形式
小数 0.123 指数 3e-3
注意:字母e(或E)之前必须有数字,且e后面的 注意: 指数必须为整数 1e3、1.8e1e3、1.8e-3、-123e-6、-.1e-3 123e.1ee3、2.1e3.5、.e3、 e3、2.1e3.5、.e3、e
C程序设计(第三版) 程序设计(第三版) 程序设计
夏承遗@天津理工大学计算机学院 夏承遗 天津理工大学计算机学院
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章 数据类型、运算符与表达式
回到 首页
运算符和结合性 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语言基础知识二
13
练习: 练习:判断变量名是否正确 B12, xyz-1, #a , Day _sum, abc_3, w>m , mn5 $gqw , 12mn, D.abc, _9_a_d
14
3.3 整型数据
整型常量的表示方法
(1)十进制整数。123,-25 ,0 )十进制整数。 ,
15
(2)八进制整数。 )八进制整数。 以数字0( 开头, 以数字 (零)开头,如:0137, 值 1× +3× +7× 为:1×82+3×81+7×80 = 95
{ int a,b,c,d; unsigned u; a=22; b= -8; u=15; c=a+u; d=b+u; printf(“a+u=%d,b+u=%d\n”,c,d); }
说明:两不同类型的数据可进行算术运算。 说明:两不同类型的数据可进行算术运算。
运行: 运行:a+u=37,b+u=7
(不特别说明,默认为signed) 不特别说明,默认为 )
23
三、整型变量的定义
变量使用前必须定义, 变量使用前必须定义,一般放在函 数开头的声明部分。 数开头的声明部分。 int a,b; long c ; unsigned short d,e,f;
24
例1. 整型变量的定义与使用
main( )
18
补码
一个正数的补码和其原码的形式相同。 一个正数的补码和其原码的形式相同。 负数的补码:将该数绝对值的二进制形式, 负数的补码:将该数绝对值的二进制形式, 按位取反再加1。 按位取反再加 。
例:求-10的补码 的补码
0000000000001010 1111111111110101 1111111111110110
C语言的数据类型介绍
C语言的数据类型介绍C语言的数据类型介绍C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。
下面店铺为大家带来C语言的数据类型介绍,希望大家喜欢!1.基本数据类型基本数据类型最主要的特点是,其值不可以再分解为其它类型。
也就是说,基本数据类型是自我说明的。
2.构造数据类型构造数据类型是根据已定义的一个或多个数据类型用构造的方法来定义的。
也就是说,一个构造类型的值可以分解成若干个“成员”或“元素”。
每个“成员”都是一个基本数据类型或又是一个构造类型。
在C语言中,构造类型有以下几种:2.1.数组类型2.2.结构类型2.3.联合类型3.指针类型指针是一种特殊的,同时又是具有重要作用的数据类型。
其值用来表示某个量在内存储器中的地址。
虽然指针变量的取值类似于整型量,但这是两个类型完全不同的量,因此不能混为一谈。
4.空类型在调用函数值时,通常应向调用者返回一个函数值。
这个返回的函数值是具有一定的数据类型的,应在函数定义及函数说明中给以说明,例如在例题中给出的max函数定义中,函数头为: int max(int a,int b);其中“int ”类型说明符即表示该函数的返回值为整型量。
又如在例题中,使用了库函数 sin,由于系统规定其函数返回值为双精度浮点型,因此在赋值语句s=sin (x);中,s 也必须是双精度浮点型,以便与sin函数的返回值一致。
所以在说明部分,把s说明为双精度浮点型。
但是,也有一类函数,调用后并不需要向调用者返回函数值,这种函数可以定义为“空类型”。
其类型说明符为void。
在第五章函数中还要详细介绍。
在本章中,我们先介绍基本数据类型中的整型、浮点型和字符型。
其余类型在以后各章中陆续介绍。
对于基本数据类型量,按其取值是否可改变又分为常量和变量两种。
在程序执行过程中,其值不发生改变的量称为常量,取值可变的量称为变量。
它们可与数据类型结合起来分类。
例如,可分为整型常量、整型变量、浮点常量、浮点变量、字符常量、字符变量、枚举常量、枚举变量。
C语言-数据类型及运算
2018/7/29电子科技大Βιβλιοθήκη 计算机学院2.2.6 符号常量
将常量定义为一个标识符,称为符号常量。通常用大 写表示。 如:
#define PI
#define TRUE
3.1415926
1
#define
STAR
‗*‘
便于程序调试和修改
2018/7/29 电子科技大学计算机学院
2.3 变量
在程序执行过程中其值可以改变的量。
2018/7/29 电子科技大学计算机学院
2.4.3 关系运算与逻辑运算 关系运算符: 大于 a>b 大于等于 小于 a<b 小于等于 等于 a==b 不等于
a>=b a<=b a!=b
关系表达式的值为真用 1 或 非零数值表示, 关系表达式的值为假用零表示。 例如: 设 x=100; printf(―%d%d%d\n‖,x==100,x<100,x>=100); 输出为: 1 0 1 字符型数据按其ASCII 码值进行关系运算: ‗b‘<‗f‘ 值为 1; ‗9‘<‗3‘ 值为 0 ;‗A‘==65 值为 1
2018/7/29 电子科技大学计算机学院
5. 右移位运算 变量名>>右移位数 每右移1位相当于除以2 每右移n位相当于除以2的n次幂 6. 左移位运算 变量名<<左移位数 每左移1位相当于乘以2, 每左移n位相当于乘以2的n次幂 注意: 在移位时,变量一端被移出的位被舍弃,另 一端空出的位一般则以0填充。
float b=123.67;
&a2500H 2501H &b2502H 2503H 2504H 2505H 2506H
| |—————— |---- 1250 ----- a=1250 |—————— |-------|-------|----123.67 ------ b=123.67 |——————
c语言程序设计的主要内容
c语言程序设计的主要内容C语言是一种广泛应用于计算机编程领域的编程语言。
它被广泛用于系统软件、应用软件和嵌入式设备的开发。
作为一门高级编程语言,C语言具有简洁、高效、灵活的特点,可用于实现各种程序设计任务。
下面将介绍C语言程序设计的主要内容。
一、基本语法和数据类型C语言具有简洁的基本语法,使得程序编写起来更加便捷。
C语言具有诸多数据类型,包括整型、浮点型、字符型等。
通过正确使用数据类型,开发者可以按需存储和处理数据。
二、变量和常量在C语言中,变量和常量是程序中最基本的元素。
变量用于存储和操作数据,而常量是不可改变的值。
通过定义变量和常量,可以使程序具备更强的灵活性和适应性。
三、运算符和表达式C语言提供了多种运算符和表达式,用于完成数学运算和逻辑判断。
程序开发者可以利用这些运算符和表达式,实现各种复杂计算和条件判断的功能。
四、分支结构C语言提供了多种分支结构,包括if语句、switch语句等。
通过使用这些语句,程序可以根据条件的不同执行不同的代码块,实现灵活的流程控制。
五、循环结构循环是程序设计中常用的控制结构之一,C语言提供了多种循环结构,包括for循环、while循环等。
利用循环结构,程序可以反复执行一段代码,实现重复运算和迭代的功能。
六、函数和模块化编程C语言支持函数的定义和调用,函数是一段特定功能的代码块,可以实现代码的复用和模块化编程。
通过函数,程序开发者可以更好地组织代码和管理程序的逻辑。
七、数组和指针数组是C语言中重要的数据结构之一,可以同时存储多个相同类型的数据。
指针是C语言的重要特性,它可以指向内存中的某个地址,用于存储和访问数据。
通过数组和指针,程序可以灵活地处理复杂数据结构和内存管理。
八、结构体和文件操作C语言通过结构体提供了一种自定义的数据类型,用于存储不同类型的数据。
结构体的灵活性使得程序能够更好地管理复杂数据。
此外,C语言还提供了文件操作相关的函数,可用于读写文件和进行文件管理。
第2章基本数据类型、常量及变量
型必须有一个长度的限制
这个长度是指数据存储在计算机中需要占用多少个 字节数 不同类型的数据在内存中占用的字节数是不同的
溢出处理
不同的数据类型规定了不同的机内表示长度,
也决定了对应数据量的变化范围,当某一数据 超出该数据类型所规定的范围时,计算机会拒 绝接受,而将之转换成范围内的另外某个数, 这种情况称之为溢出处理。
6
3.常量
常量
在程序运行过程中其值不能被改变的量值
例1:
1,200 3.1,-4.0 „A‟,‘b‟ “abc”,“AB\n”
提示
在程序中使用常量时,一般不需要具体指出它属于 哪一种类型C语言编译系统会自动根据常量的数据 大小和直观形式来确定它的数据类型 例2:
3,3.0,‘3‟,“3”
提示
每个数据类型都有固定的表示方式
这个表示方式确定了可能表示的数据范围以及数据在内存中 的存放形式 C程序中所出现的所有数据都必须明确指定其数据类型
数据类型的体现
常量和变量是在计算机中数据类型的表现形式
不再是抽象的概念而是实在的数据,这些数据符合对 数据类型的规定(形式和运算规则两方面) 常量和变量之间的区别在于程序执行过程中的变化情 况
3.常量
整型常量
一个整数 常用的整数类型(IBM PC机及其兼容机上对C语言整型数的规定 )
整型
2字节: -32768~32767 4字节:-2147483648~2147483647 2字节: 0~65535 4字节 :0~4294967295
长整型
C语言的语言基本结构
C语言的语言基本结构C语言是一种通用的高级编程语言,广泛应用于嵌入式系统和操作系统的开发中。
了解C语言的基本语言结构对于学习和掌握该语言非常重要。
本文将介绍C语言的基本结构,包括数据类型、变量和常量、运算符、控制结构和函数等内容。
首先是C语言的数据类型。
C语言提供了多种数据类型,包括基本数据类型和派生数据类型。
基本数据类型包括整型、浮点型和字符型。
整型数据类型用于表示整数,包括有符号类型和无符号类型,如int、long和short等。
浮点型数据类型用于表示实数,包括float和double等。
字符型数据类型用于表示字符,用char表示。
派生数据类型包括数组、指针和结构体等,这些数据类型是由基本数据类型组合而成的。
其次是变量和常量。
在C语言中,变量用于存储数据,而常量是不可改变的值。
在使用变量之前,需要先声明变量的类型和名称,如int num;表示声明了一个整型变量num。
常量可以是字面值,也可以是用#define或const关键字定义的符号常量。
符号常量在程序中可以直接使用,提高了程序的可读性。
C语言中的运算符用于对数据进行运算。
包括算术运算符、关系运算符、逻辑运算符和赋值运算符等。
算术运算符用于执行基本的数学运算,如加减乘除和求余等。
关系运算符用于比较两个值的大小关系,返回真或假的结果。
逻辑运算符用于进行逻辑判断,如与或非等。
赋值运算符用于将一个值赋给变量。
控制结构是C语言中的重要部分,用于控制程序的执行顺序。
包括条件语句和循环语句等。
条件语句用来判断一个条件是否满足,如果条件为真,则执行相应的代码块,否则执行另外的代码块。
常见的条件语句有if语句和switch语句。
循环语句用于重复执行一段代码,直到满足一些条件才退出循环。
常见的循环语句有for循环、while循环和do-while 循环。
最后是C语言中的函数。
函数是一段完成特定任务的代码块,可以被重复调用。
在C语言中,每个程序都必须有一个main函数,作为程序的入口。
C语言数据类型和变量
C语⾔数据类型和变量在 C 语⾔程序中将数据分为两种:字⾯量(常量)和变量。
(⼀) 字⾯量字⾯量(也有叫“常量”的)指的是数值固定的量,“⼀看就能看出来”。
在程序中,常量只能被引⽤,不能被修改。
在 C 程序中常⽤的字⾯量有以下⼏种:第 1 种整型(整数类型)。
例如:100、314、0、-200 等。
⽰例代码#include <stdio.h>int main(){printf("%d\n",200);printf("%d\n",-100);getchar();return 0;}程序分析:在执⾏ printf 函数时,整数常量将取代双引号中的%d‘\n’是换⾏符,即输出“200”后,控制台中的光标位置移到下⼀⾏的开头,下⼀个输出的内容-100 会出现在该光标位置上。
注意\n 的⽅向,第 2 种浮点型。
其实就是⼩数。
⽰例代码:#include <stdio.h>int main(){printf("%f\n",3.14);printf("%f\n",-12.2);getchar();return 0;}默认情况下,输出浮点型保留⼩数点后 6 位数字。
所以 3.14 会输出 3.140000,-12.2 输出-12.20000。
第 3 种字符型。
在程序中,使⽤英⽂单引号括起来的字符被称为字符型。
例如:’a’、’1’、’=’、’?’、’#’等都是合法的字符。
【注意】字符类型只能是单个字符,不能写成’ab’、’12’、’=?’。
⽰例代码:#include <stdio.h>int main(){printf("%c\n",'A');printf("%c\n",'#');getchar();return 0;}第 4 种字符串。
第2章 基本数据类型、常量和变量
第2章 基本数据类型、常量和变量2.1 C 数据类型简介一个程序应该包括对数据的描述和对数据的处理。
但是程序要面临处理的数据有各种各样的类型,例如有一个用来处理学生基本信息的程序,所要处理的数据包括:学生的学号和姓名都是字符串,学生的年龄是整数,学生的成绩用浮点数表示等等。
而不同类型的数据不仅在机内的存储格式不同(例如整数用补码存放,而字符串是按串中每个字符的ASCII 码存放的),而且可以实现的运算也不同。
为了更好地对数据进行描述和处理,C 语言被设计成强类型语言(strongly typed language ),即C 语言程序中的每个数据必须具有明确的类型。
C 语言的数据类型可分为基本数据类型(整型、字符型和浮点型)、基于基本数据类型的构造数据类型(数组、struct 、union 、enum)、指针类型、空类型(void),见图2-1。
C 语言中数据分为常量和变量。
简单理解,在程序运行过程中其值不能改变的数据就是常量,而其值可以改变的数据称为变量。
下面分别介绍各种基本数据类型的常量和变量。
图2-1 C 语言中的数据类型数据类型2.2 基本数据类型——整数类型一、整型常量整数类型常量用于表示没有小数部分的数值,在C程序中整型常量可以表示成十进制、八进制或者十六进制形式,用不同的前缀来区分:(1) 十进制整型常量以非0(零)数字开头,例如237、-2009;(2) 八进制整型常量带有前缀0(零),例如027(等价的十进制数为23),-012(等价的十进制数为-10);(3) 十六进制整型常量带有前缀0x(X),例如0x2A(等价的十进制数为42),-0XA5b(等价的十进制数为-2651)。
【例2.1】下列哪些整型常量是合法的?012,oX7A,00,078,0x5Ac,-0xFFFF,0034,7B【例2.2】下面四个选项中,均是合法整型常量的选项是。
A) 160、-0xffff、011 B) –0xcdf、01a、0xeC) -01、986,012、0668 D) –0x48a、2e5、0x【例2.3】下面四个选项中,均是正确的八进制数或十六进制数的选项是。
c语言
例:
③ 其它字符
指除以上两种字符外的所有符号 ,输出时原样显示。
4. 使用说明 ① 整个格式控制字符串必须用双引号括住; ② 如果有输出项,格式控制字符串与第一个输出项之间用逗 号隔开;
③ 如果有多个输出项,各输出项之间用逗号隔开;
④ 格式转换说明符的个数应与输出项的个数相等,且顺序和
2、const定义
一般格式
const 数据类型 标识符=常数; 例 #define PI 3.14159 PI为字符串 例 const float PP= 3.14159; PP为 float 型符号常数 Const修饰得到的标识有值和类型的含义 ,而宏没有。
2.5 不同类型数据的输入输出
一. 格式化输出函数 printf( )简介
int型
2.2 常量及其类型
一、整数 说明:C语言允许使用十进制、八进制和十六进制整数。
十进制整数。
如:123,-45
八进制整数。以0开头的数是八进制数。
如:-0123
十六进制整数。以0x开头的数是十六进制数。
如:-0x12
1. 十进制整数的表示方法
一般:正(+ 可以省写)、负号(-)后跟数字串 例 -34、789
-2147483648~2147483647
0~4294967295
-3.4*1038~3.4*1038 -1.7*10308~1.7*10308
三.基本数据类型的扩展
对数值符号 signed 仅限于char和int型 的处理方法 unsigned
提供不同的 short 数据长度 long
double型
例如:
"I said ,\"good morning ! \ " " 运行结果: I said , " good morning ! "
第二章 C语言的基本数据类型
标识符的有关规定:只能由字母、数字和下划线 组成,且第一个字符必须是字母或下划线;字母区分 大小写;不同的C编译系统规定标识符长度不同(如 IBM PC的MS C取8个字符,而Turbo C则允许32个字 符),考虑到程序的可移植性及阅读程序的方便,标 识符的长度一般不要超过8个字符,且应注意做到“见 名知意”
2、十六进制整常数:十六进制整常数的前缀为0X或0x。 其数码取值为0~9,A~F或a~f。 以下各数是合法的十六进制整常数: 0X2A(十进制为42)、 0XA0 (十进制为160)、 0XFFFF (十进制为65535) 以下各数是不合法的十六进制整常数: 5A (无前缀0X)、 0X3H (含有非十六进制数码) 3、十进制整常数: 十进制整常数没有前缀。其数码为0~9。 以下各数是合法的十进制整常数: 237、 -568、 65535、 1627 以下各数是不合法的十进制整常数: 023 (不能有前导0)、23D (含有非十进制数码)
各种无符号类型量所占的内存空间字节数与相应的有符号 类型量相同。但由于省去了符号位, 故不能表示负数
Turbo C中各类整型量所分配的内存字节数及数的表示范围。 类型名称 (中文) 类型名称 (英文) 占用的 字节数 2 2 2 2 4 4 取值范围 -32768~32767 0~65535 -32768~32767 0~65535 -2147483648 ~2147483647 0~4294967295
第二章 C语言的基本数据类型
教学内容: 1 C语言的数据类型 C语言的数据类型 2 常量与变量 3 整型数据 4 实型数据 5 字符型数据 6 变量赋初值 7 变量数据类型转换 基本要求: (1) 掌握基本数据类型及其常量的表示方法; (2) 掌握变量的定义及初始化方法; (3) 掌握变量数据类型的转换法 重点: C的数据类型、常量与变量、变量定义、变量赋初 始化、变量数据类型的转换 难点: 难点: 变量数据类型的转换
C语言程序设计实训教程第2章 数据类型、常量、变量、运算符与表达式
22
23
【例 2.8】 两个 char型数相加,结果为 char 型。( )[判断题,重庆市 2005年第 1次等级考 试] 答案:错 分析:结果是 int型。char型数据在运算前,先 无条件转换成 int型,再参与运算。
24
4)强制类型转换 【例 2.9】 若有 int k =5;float x=1.2;则表达 式( int)( x+ k)的值是( )。[单选题,重庆 市 2001年第 1次等级考试] A.5 B.6.2 C.7 D.6 答案:D
8
返回给定类型或表达式(运算结果)的字节数 (以 unsigned int的形式)。 强制转换运算符 把表达式的结果转变为所需的 类型。 (类型)表达式 运算过程中类型的转换 如图 2.1所示,横向表示无条件的转换,比如 在计算前,char型要先转换成 int再参与计算。 竖向表示操作符两边的操作数属于不同类型时, 精度低的向精度高的方向转换,然后再参与运算, 运算结果为转换后的类型。
9
赋值时类型转换 在赋值时,赋值号右边表达式 的值的类型自动转换为其左边变量的类型。 位运算符 位运算的操作数为整型或字符型。位 运算就是把整数的内部二进制形式按位进行运算。
图 2.1 C 语言类型转换示意图
10
①按位取反∽ 运算规则:
11
②位与(&) 运算规则:
12
③位或( |) 运算规则:
6ห้องสมุดไป่ตู้
运算符 分算术运算符、赋值运算符、关系运算 符、逻辑运算符、逗号运算符、自增和自减运算符、 条件运算符、位运算符等。 表达式 由运算符连接运算对象构成的式子。可 根据运算符的不同分类为算术表达式、赋值表达式、 关系表达式、逻辑表达式、逗号表达式、条件表达 式等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(2)八进制整数 以数字0打头,后跟0~7组成的数字串。例如: 0123表示八进制常数123,相当于十进制数83。 八进制整数可以加上后缀u(U),l(L)或ul(UL)分别构成八进制 的无符号数、长整数或无符号长整数。例如: 012345u、02765543102l、0345675026ul等。 (3)十六进制整数 以数字0和小写字母x(或大写字母X)打头,后跟0~9及A~ F(或a~f)组成的数字字母串。其中,A~F(或a~f)分别表示 十进制的10~15。例如: 0x2f是一个十六进制,相当于十进制的47。 若在十六进制数后面加上后缀u(U)、l(L)或ul(UL), 则分别构成十六进制的无符号数、长整数或无符号长整数。如: 0x89ad476bu, 0x9043fecd2l, 0x98bfd5ca7ul
三个属性: ① 变量分为不同的数据类型,数据类型决定了该变量存储
的数据的含义。
② 变量分为不同的存储类型,存储类型决定了变量在计算 机中的存储位置及其寿命(生命期)。
③ 变量在程序中的定义位置决定了该变量的作用域,即起
作用的范围。
1. 变量的定义
C语言规定,变量必须先定义后使用,变量的数据类型与变 量名本身无关。 变量定义一是定义变量的数据类型,二是定义变量的名称, 三是说明变量的存储类型,其一般格式为: [存储类型] 数据类型 变量清单; char ch1; static int i, j, k; short int si; float f1, f2; double balance, profit, loss; 变量的数据类型可以是字符型、整型、浮点型、双精度型等。
signed int
signed long
unsigned int
unsigned long
VC++ 6.0数据类型和取值范围
类型 长度(字节) 取值范围
char
[signed] char unsigned char int [signed] int unsigned [int] short int
要占用一批连续的存储单元,其所占字节数为字符串长度加1。 ③ 字符型常量通常可存放在字符型变量中,而字符串常量则
必须存放在字符型数组中。
④ 字符型常量可以与整数混合运算,而字符串常量则不可以。
2.3 变量及其类型
变量是指那些在程序运行过程中其值可以改变的量。变量
代表着存储器中的一个存储单元。在 C 语言中,变量具有如下
2
4 4 4 4 8 8
0-65535
-2147483648~2147483647 -2147483648~2147483647 0~4294967295 -3.4×1038~3.4×1038 -1.7×10308~1.7×10308 -1.7×10308~1.7×10308
2.2 常量及其类型
常量是指在程序运行过程中,其值保持不变的量。常量 分为char、int、double和字符串型。其类型是由书写形式决 定的。
型通常代表单个数据。
(2)构造类型 由已知的基本类型通过一定的构造方 法构造出来的类型,包括数组、结构体、联合体、枚举类 型等。构造类型通常代表一批数据。 (3)指针类型 指针可以直接指向内存地址,访问效
率高,用于构造各种形式的动态或递归数据结构,如链表、
树等。
2.1 基本数据类型
1.基本数据类型及其关键字
【例】 #include <stdio.h> int a; // 全局变量 void main() { int b,c; // 函数级局部变量 a=1;b=2;c=3; a=a+1;b=b+1;c=c+b; // a=2 b=3 c=6 { int c; // 块级局部变量 c=b*3; // c=9 a=a+c; // a=11 printf("first:%d,%d,%d\n",a,b,c); // 11, 3, 9 } printf("second:%d,%d,%d\n",a,b,c); // 11, 3, 6 }
1
1 1 4 4 4 2
-128~127
-128~127 0~255 -2147483648~2147483647 -2147483648~2147483647 0~4294967295 -32768~32767
unsigned short [int]
long int [signed] long [int] unsigned long [int] float double long double
④ double型长度为8字节,存储方式与float基本相同,阶码
占11位,尾数占53位,15位有效数字精度,分辨率约为2.2×10-308。
3. 类型修饰符
(1)short和long可以提供不同的数据长度以满足实际使用的需要。
C规定:长度 short int ≤ int ≤ long int VC++ 6.0 VC++ 6.0 16bit 32bit 32bit 64bit 32 bit 64bit
1. 整型常数
在计算机中,整数是准确表示的。C语言可以识别十进制、 八 进制和十六进制的整数。 (1)十进制整数 十进制整数由正负号(+或-)后跟数字串组成,正号可以 省略不写,且开头的数字不能为0。如 1234,-23,+187,32767,5600,0 在整数后面加上后缀u或U则构成无符号整数,如 123u,5678U,70000u等。 在整数后面加上后缀l或L则构成长整数,如 -124783648l,1234567890L 在整数后面加上后缀ul或UL则构成无符号长整数,如 3456ul,1234567890ul
4. 字符串常量
字符串常量是用双引号括起来的0个或多个字符的序列。例如
"I am a student. " "x"
""
"0107328136"
// 空字符串
"I said,\"good morning!\"" // 含转义字符
(1)字符串常量的存储方式
字符串常量存储时,按字符串中字符从左到右的顺序依次占 用连续的存储单元,每个字符占1个字节,存放其对应的ASCII码。
C编译系统还会自动在每个字符串常量的未尾追加一个零字符
NULL('\0')作为字符串的结束标识。因此,一个含有n个字符 的字符串常量要占用n+1个字节的存储空间。
例如,字符串常量 "I am a student" 含有14个字符(包括3个空格字符),它将占用15个字节的存 储单元。
I
a
m
a
s
t
u
d
LL
BELL BS FF NL(LF) CR HT VT \ ’ ”
0
7 8 12 10 13 9 11 92 44 34
ASCII代码值为0
报警铃响 退格符(backspace) 换页符 换行符 回车符 水平制表符(Tab) 垂直制表符 反斜杠 单撇号(单引号) 双撇号(双引号)
【例】字符常量的表示方法
#include <stdio.h>
void main() { printf("%d\n", 'B'); // 十进制
printf("%c\n", 'B');
printf("%c\n",66); printf("%c\n",'B'+32);
// 字符
printf("%d,%c,%d, %c\n", '\n', '\0', '\0', '\x41'); }
3. 字符常量
字符常量是用单引号括住的单个字符。 (1)单引号表示法,用于可显示字符,直接用单引号(撇号) 将该字符括住,即表示字符常数。如 'A','a','5','$','?','+'等。 (2)转义字符表示法,用于不可显示字符,主要是那些控制字
符如换行符、回车符、换页符等,还有一些在C语言中有特殊含
2. 实数
C语言中,实数是近似表示的,且只能用十进制表示。 (1)定点格式,即由正负号、整数部分、十进制小数点和小数部 分组成。整数部分和小数部分都是由0~9组成的数字串。例如, 123.45,-256.701,.543,-25.,0.,.0,0.0等。(小数点必不可少) (2)指数格式,即在定点表示的基础上,后面再加上一个e或E后 跟一个1~3位整数组成。如 -1.234E18, 2.74e-02, 2.71828e0, .86e-3, 1e-2等。 书写指数格式的浮点数时,字母e或E前面必须有数字,可以没有 小数点,如.2e3,2.3e,2e3是正确的,而.e3,e-3等是错误的。同 时,e或E后面必须是正负整数,不能带小数点,如1.2e3.1、0.3e0.5等是错误的。 在计算机中,无论是定点表示还是浮点表示的实型常数都视为 double型的。如果有必要,可以用后缀f(F)来表示float型实数, 如2.6736F、12.56e-13f等。
义和用途的字符如单引号、双引号、反斜杠,只能用转义序列 表示。例如,‘\n’、‘\012’、‘\xa’均表示换行符,因为换行 符的ASCII代码八进制值12,十六进制值是a。
表2.3 常用的转义字符
转义字符 含义 十进制ASCII代码值 说明
\0
\a \b \f \n \r \t \v \\ \’ \”
C规定:长度 float ≤ double ≤ long double