第二章数据类型
第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语言教程课件第二章 数据类型、运算符和表达式
例 整型变量的定义与使用
#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,可以和常量一样进行运算
C语言学习第二章数据类型
基本整型:表示的范围为0X0~0XFFFF。
2.4.2 整型变量
1.整型变量在内存中的存放形式
以二进制补码的形式存放。
正数:最高位为0,其余各位是该数的二进制表示 负数:最高位为1,其余各位是该数绝对值的二进制
再按位取反加1
2. 整型变量的分类
放一个字符。
下面是对c1、c2赋值: c1=‘a’;c2=‘b’; (实际上其内存中存放的是该字符的ASCII码)
字符变量的初始化,如:char c1=‘a’,c2=‘b’;
2.5.3 字符数据在内存中的存储形式及其使用方法
将一个字符常量放到一个字符变量中,实际上是将该字 符的ASCII代码以二进制形式放到存储单元中。
无符号型:(只能存放0和正整数) ① 基本整型:类型说明符为unsigned int或unsigned
在内存中占2个字节 取值范围为0~2161,即0~65535。 ② 短整型:类型说明符为unsigned short (int) 所占字节和取值范围均同基本整型。 ③ 长整型:类型说明符为unsigned long (int) 在内存中占4个字节 其取值范围是0~2321 即0~4294967295
实型常量也称为实数或者浮点数。 实型常量不分单、双精度,都按双精度double型处理,其有 效位数为(15~)16位。
实型常量的表示方式有:
(1)十进制小数形式
小数形式由数字0~ 9和小数点组成。
当某浮点数整数部分或小数部分为0时,0可以省略,但小 数点不可省略。
例如:
0.0 , .25 ,5.789 ,0.13 ,5.0 , 300. 267.8230 , 123. 等均为合法的实数。
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。
第2章 C语言,数据类型、运算符和表达式
(C语言运算符总表见教材P26或P325附录C) return 31
C语言程序设计
算术运算符
+ - * / % 功能: 操作数要求: 结合性: 优先级: 注意事项: 算术运算 两个操作数 (当-用作负号时除外) 自左至右(当-用作负号时除外) -(负号) —— * / % —— + - (由高→低) ① 两个整数相除,结果为整数! 例: 3/2=1 ② %要求两个操作数均为整型数据! 且余数与被除数同号!
说明: ① 字符变量中存放的是字符ASCII码值! ② char与int数据间可进行算术运算!
char choice = 'A';
return24
C语言程序设计
字符串常量
字符常量是用双引号括起来的字符序列. 例如: "hello!" , "0" (1) 字符串常量在内存中的存储 (2) 字符串常量.vs.字符常量
整型
浮点型 字符型 说明:
① 数据类型所占字节数随机器硬件不同而不同! ② 可用sizeof(数据类型说明)来计算某一数据类型占内存的字节数! return
C语言程序设计 next part
2. 常量与变量
标识符命名 常量 变量
go go go
6
C语言程序设计
标识符命名
例: 判断下列标识符号合法性
next
ห้องสมุดไป่ตู้
20
C语言程序设计
字符常量
转义字符是用反斜杠\后面跟一个字符或一个八进制或十 六进制数表示的ASCⅡ码值。例如: '\n', '\101' (1) C语言中常用的转义字符 (2) 转义字符使用实例
第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; /* 定义为整型变量 */
第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)
第二章 VFP数据类型
(2)用PRIVATE指定私有变量 1、格式:private 变量名 2、私有变量可以在建立它的模块以及相应的 下层模块使用 3、私有变量可以将高层中创建的、私有变量 同名的变量隐藏起来
Main3.prg
Public a,b
Procedure sub1() Private a a=10
Procedure Sub2() ?a ?b Endproc *a=10 *b=20
Main1.prg
Local x x=1 ?x Sub1() ?x &&x=1 Procedure sub1 x=2 endproc
Main2.prg
x=1 ?x Sub2() ?x &&x=1 Procedure Sub2 Local x
x=2
endproc
(2)用PUBLIC指定全局变量(公共 )
{00:00:00AM}等价于午夜{12:00:00AM} {00:00:00PM}等价于中午{12:00:00PM} {00:00:00}至{11:59:59} 等价于 {12:00:00AM}至{11:59:59AM} {12:00:00}至{23:59:59} 等价于 {12:00:00PM}至{11:59:59PM}
同名称、以下标相互区分的有序内存变量。 –数组属于内存变量,数组必须先定义后使 用,定义数组是向系统申请数组元素在内 存中的存储空间
1. 数组的定义
DECLARE X(5), Y(5,5) 私有数组 DIMENSION A(10),B(10,10) 私有数组 PUBLIC X(3,4) 全局数组 LOCAL M(9) 局部数组 数组下标从1开始,X(0)是错的 数组在声明之后,每个元素被默认地赋予.F.值。
第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】下面四个选项中,均是正确的八进制数或十六进制数的选项是。
第二章数据资料的类型及其特征
第二章数据资料的类型及其特征数据资料是指通过观察、实验、调查等方式获得的事实、对象以及其相关联的特征和属性的描述、记录或表示。
不同的数据可以根据其性质和特征进行分类,常见的数据类型包括定量数据和定性数据、连续数据和离散数据、原始数据和派生数据。
下面将对这些数据类型进行详细介绍。
1.定量数据与定性数据定量数据是以数值形式表示的数据,可进行数学运算和统计分析,具有明确的量度意义。
例如,身高、体重等数值型数据。
定性数据是以描述性文字、符号或方式进行记录的数据,无法进行数学运算,只能用于描述事物的特性和品质。
例如,性别、颜色等定性属性。
2.连续数据与离散数据连续数据是指在一个区间内可以取得任意数值的数据,其取值可以是有限的,也可以是无限的。
例如,时间、温度等连续变量。
离散数据是指在一些区间内只能取得有限个数值的数据,其取值只能是一些有限的数值。
例如,年龄、人数等离散变量。
3.原始数据与派生数据原始数据是指直接从实际观察或调查中获取的数据,是最初的记录和观察结果。
它包含了所有的细节和信息,包括各种误差和不完整性。
派生数据是通过对原始数据进行加工、处理和分析得到的新数据。
例如,计算机程序可以根据原始数据进行统计分析和模型建立,从而得出一些新的统计指标和信息。
不同类型的数据具有不同的特征。
定量数据可以进行数学运算和统计分析,包括计算平均值、方差、相关性等。
定性数据可以用于描述事物的特性和品质,例如对产品进行评价或对顾客进行分类。
连续数据可以进行插值和外推分析,可以得到更精确的预测结果。
离散数据适合进行频数统计和概率计算,可以得到事件发生的概率或频率。
原始数据包含了所有的信息,可以进行更加全面和细致的分析。
派生数据是根据原始数据得到的新结果,可以用于更加具体和特定的应用。
综上所述,不同类型的数据具有不同的特征和用途。
了解数据的类型和特征可以帮助我们选择适当的数据分析方法和技术,从而更好地理解和利用数据。
C语言知识点:第2章 数据类型、运算符与表达式
主讲教师:杨剑
第 2 章:数据类型、运算符与表达式
1. 本章目标:
理解变量和常量的含义 熟悉基本数据类型 - int、char、float 和 double 使用算术运算符 理解类型转换 使用关系和逻辑运算符
2. 内存如何存放数据
电脑使用内存来记忆计算时所使用的数据 内存如何存储数据? 内存像旅馆.数据各式各样,要先根据数据的需求(即类型)为它申请一块合适的空
23. 复合赋值表达式
24. 赋值表达式和逗号运算符
赋值表达式 a=b=c=5;(从右向左计算) a +=a-=a*a
逗号运算符和逗号表达式 3+5,6+8 a=3*5,a*4
25. 习题
~7~
C 语言程序设计知识点
主讲教师:杨剑
有以下程序
main()
{
char a1=’M’,a2=’m’;
12. 单精度浮点型
float 在 C 语言中用于存储单精度浮点数 float 32 位 10-38 至 10+38 ,7 位有效数字 声明:
float price; 初始化:
float score = 11.3; score = 65.90;
13. 双精度浮点型
double 32 位 16 位有效数字 声明:
const float PI=3.14; S=PI*r*r; //等价于 3.14*r*r const 关键字的作用就是“冻结”一个量,它的值不能被修改,是一个只读(read only) 量。 优点:比数值常量可读性好、修改容易
18. 符号常量 2(宏常量)
还可用宏定义符号常量 语法:#define 符号名 常量值 例: 计算圆的周长时
第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 位二进制(二个字节)表示。
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)。
第二章数据类型一、选择题1.C语言中的标识符只能由字母、数字和下划线组成,且第一个字符( )。
A.必须为字母B.必须为下划线C.必须为字母或下划线D.可以是字母,数字和下划线中任一字符2.VS2008作为开发环境,long、int和short这3种类型数据所占用内存大小的叙述中正确的( )。
A.均占4个字节B.根据数据的大小来决定所占内存的字节数C.由用户自己定义D.由C语言编译系统决定3.在C语言中,char型数据在内存中是以( )形式存储的。
A.原码B. ASCII码C.补码D. EBCDIC码4.以下不能定义为用户标识符的是( )。
A. MainB. _0C. _intD. sizeof5. 以下选项中关于C语言常量的叙述错误的是( )。
A.所谓常量,是指在程序运行过程中,其值不能被改变的量B.常量分为整型常量、实型常量、字符常量和字符串常量C.常量可分为数值型常量和非数值型常量D.经常被使用的变量可以定义成常量6.在C语言中,合法的字符常量是( )。
A.“\x41”B.‘\x41’C.‘ab’D.“ab”7.以下选项中不能用作C程序合法常量的是( )。
A.1,234B.'123'C.123D."\x7G"8.下列符号可以作为变量名的是( )。
A. +aB. *pC._DAYD. next day9.设c是字符变量,则以下表达式正确的是( )。
A. c=666B. c=‘c’C. c=“c”D. c=“abcd”10.若有定义语句:int a=3,b=2,c=1;,以下选项中错误的赋值表达式是( )。
A.a=(b=4)=3;B.a=b=c+1;C.a=(b=4)+c;D.a=1+(b=c=4);11.设ch是char型变量,其值为A,且有下面的表达式:ch=(ch>='A'&&ch<='Z')?(ch+32):ch.该表达式的值是( )。
A. AB. aC. ZD. z12.int x=3,y=2;则表达式x+=x*=y+8的值为( )。
A. 28B. 30C. 60D. 1713.设x=2.7,a=8,y=4.9,算术表达式x+a%3*(int)(x+y)%5/3的值为( )。
A. 2.7B. 3.7C. 4.7D. 4.0314. 若有定义语句:int a=10;double b=3.14;则表达式'A'+a+b 值的类型是( )。
A. charB.intC.doubleD.float15.若有定义语句:int k1=10,k2=20;,执行表达式(k1=k1>k2)&&(k2=k2>k1)后,k1和k2的值分别为( )。
A.0和1B.0和20C.10和1D.10和2016.C 语言中要求操作数必须是整数的运算符是( )。
A./B.%C.!=D.=17.以下关于运算符优先顺序的描述中正确的是( )。
A.关系运算符<算术运算符<赋值运算符<逻辑与运算符B.逻辑与运算符<关系运算符<算术运算符<赋值运算符C.赋值运算符<逻辑与运算符<关系运算符<算术运算符D.算术运算符<关系运算符<赋值运算符<逻辑与运算符18.以下叙述不正确的是( )。
A.逗号运算符的运算级最低B.ABC 和abc 是两个不同的变量C.若a 和b 类型相同,在执行a=b 后,b 的自身值不变D.‘a ’和“a ”是完全等价的常量19. 以下关于C 语言的叙述中正确的是( )。
A.C 语言中的注释不可以夹在变量名或关键字的中间B.C 语言中的变量可以再使用之前的任何位置进行定义C.在C 语言算术的书写中,运算符两侧的操作数类型必须一致D.C 语言的数值常量中夹带空格不影响常量值的正确表示20. 若有代数式cdab 3 ,则不正确的C 语言表达式是( )。
A .a/c/d*b*3 B .3*a*b/c/d C .3*a*b/c*d D .a*b/d/c*321. 逻辑运算符两侧运算对象的数据类型( )。
A .只能是0或1B .只能是0或非0正数C .只能是整型或字符型数据D .可以是任何类型的数据22.已知字符‘A ’的ASCII 为65,字符变量c1的值是‘A ’,c2的值是‘D ’。
执行语句printf(“%d,%d ”,c1,c2-2);后,输出结果是( )。
A. A,BB. A,68C. 65,66D. 65,6823. 有以下程序#include<stdio.h>main(){ int x=011;printf("%d\n",++x);} 程序运行后的输出结果是( )。
A. 12 B. 11 C. 10 D. 924. 若有定义和语句:int n=10;printf(“%\n”,n);其输出结果是( )。
A.输出10B.输出一空行C.没有输出D.编译不通过25.设有如下程序段:int x=2002,y=2003;printf("%d\n",(x,y));则以下叙述中正确的是A.输出语句中格式说明符的个数少于输出项的个数,不能正确输出B.运行时产生出错信息C.输出值为2002D.输出值为200326.若x,y定义为整型变量,z为double型,错误的输入语句是( )。
A. scanf("%d%lx,%le",&x,&y,&z);B. scanf("%2d*%d%lf",&x,&y,&z);C. scanf("%x%*d%o",&x,&y);D. scanf("%x%o%6.2f",&x,&y,&z);27. 若有定义:int a,b;,通过语句scanf("%d;%d",&a,&b);,能把整数3赋给变量a,5赋给变量b的输入数据是( )。
A. 3 5B. 3,5C. 3;5D. 3528. 若k1,k2,k3,k4均为int型变量,为了将整数10赋给k1和k3,将整数20赋给k2和k4,则对应以下scanf()函数调用语句的正确输入方式是( )。
scanf(“%d%d”,&k1,&k2);scanf(“%d,%d”,&k3,&k4);A.1020B.10[20 C.10,20 D. 10[201020 10[20 10,20 10,2029. 有以下程序:#include<stdio.h>main(){ int a=666, b=888;printf(“%d\n”,a,b);} 程序运行后的输出结果是( )。
A. 错误信息B.666C.888D.666,88830. 有如下程序,输入数据12345[678↙后,x的值y的值是( )。
#include<stdio.h>main(){ int x;float y;scanf(“%3d%f”,&x,&y);}A.123456 678.000000B.123 45.000000C.123 456.678000D.345 678.00000031. putchar函数可以向终端输出一个( )。
A.整型变量表达式值B.实型变量值C.字符串D.字符或字符变量值32.以下说法正确的是( )。
A.输入项可以为一个实型常量,如scanf(“%f,3.5);B.只有格式控制,没有输入项,也能进行正确输入,如scanf(“a=%d,b=%d);C.当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(“%4.2f",&f);D.当输入数据时,必须指明变量的地址,如scanf(“%f",&f);二、填空题1.在C语言中,标识符只能由_______________、_______________和_______________3种字符组成,且第一个字符必须是_______________或_______________。
2.C语言中定义char ch;描述“ch是否为小写字母”的表达式是。
3. 字符串常量是一对_______________括起来的字符序列,字符常量是一对_______________括起来的字符,转义字符‘\n’表示的含义_________________,‘\t’表示的含义_________________。
4. 在C语言中,可以利用_______________,将一个表达式的值转换成所需类型。
5. 在C语言中,输入语句的一般格式为___________________________ ,输出语句的一般格式为___________________________ 。
格式说明符中可以用“%d”表示_______________,“%f”表示_______________。
符号&是_______________运算符。
6. 有一输入函数scanf(”%d”,k);则不能使float类型变量k得到正确数值的原因是_______________。
7.定义int x,y;执行y=(x=1,++x,x+2);后,y的值是_______________。
8.定义int x=10,y,z; 执行y=z=x; x=y==z;后,x的结果是_______________。
9.若x=3、y=2、z=1,表达式x<y?y:x的值为_______________。
10.表达式8/4*(int)2.5/(int)(1.25*(3.7+2.3))的数据类型为_______________,值为_______________。
11.若有以下定义,请写出以下程序段中输出语句执行后的结果。
(1)(2)(3)int i = -200, j =2500;printf(“(1) %d %d”, i, j);printf(“(2) i = %d, j = %d\n”, i, j);printf(“(3) i = %d\n j = %d\n”, i, j);12.使用“getchar( )”函数时,程序的开头必须写一条包含命令为____________。