2.数据类型和运算符作业-
1
数据类型和运算符作业
一、 填空题
1. Java语言规定标识符由字母、下划线、美元符号和数字组成,并且第一个字符不能
是 数字 。
2. Java中整型变量有byte、short、int和long四种,不同类型的整数变量在内存中分
配的字节数不同,数值范围也不同。对于int型变量,内存分配 4 个字节。
3. 在Java中浮点型变量有float和double两种,对于float型变量,内存分配4个字
节,尾数可精确到7位有效数字,对于double型变量,内存分配 8 个字
节。
4. char c=’a’;System.out.println(c+1);运行结果为: 98 。
5. ______&&___是短路与运算符,如果左侧表达式的计算结果是false,右侧表达式将
不再进行计算。
6. 下面的语句是声明一个变量并赋值:boolean b1=5!=8; b1的值是____true______。 ×
7. 使用位运算符来实现运算效率最高,所以最有效率的方法算出2乘以8等于多少的
语句是 2<<3 。
8. 基本数据类型的类型转换中,要将double类型的常量3.14159赋给为整数类型变量
n的语句是____int_n=(int)(3.14159)________________。
9. 八进制整数012表示十进制的___10____,十六进制数0x3C表示十进制的_____60__。
10. 一个十进制整数转换成八进制数后是1234,则它转为十六进制数后是
29C 。
二、 选择题
1. 在Java中,以下错误的变量名是( d )。(选择一项)
A constant
B. flag
C. a_b
D. final
2.
以下选项中属于合法的Java标识符的是( cd )。(选择两项)
A.
public
B. 3num
C.
name
D.
_age
3. 在Java中,byte数据类型的取值范围是( a )。(选择一项)
A -128 ~ 127
B. -228 ~128
C. -255 ~ 256
D. -255 ~ 255
4. 下面的代码段中,执行之后i和j的值是( c )。(选择一项)×
int i=1; int j;
2
j=i++;
A 1,1
B.
1,2
C. 2,1
D. 2,2
5. 下面Java代码的执行结果是( a )。(选择一项)×
public class Test {
public static void main(String args[]) {
System.out.println(100 % 3);
System.out.println(100%3.0);
}
}
A 1 1.0
B. 1 1
C. 1.0 1.0
D. 33 33.3
6. 下面的赋值语句中错误的是( a )。(选择一项)
A float f = 11.1;
B.
double d = 5.3E12;
C. double d = 3.14159;
D. double d = 3.14D;
7. 在Java中,下面( ab )语句能正确通过编译。(选择两项)×
A System.out.println(1+1);
B. char i =2+'2';
System.out.println(i);
C. String s="on"+'one';
D. int b=255.0;
8. 以下Java运算符中优先级别最低的两个选项是( ab )。(选择二项)
A 赋值运算符=
B. 条件运算符 ?=
C. 逻辑运算符|
D. 算术运算符+
9. 有以下方法的定义,请选择该方法的返回类型( d )。(选择一项)×
method(byte x, double y) {
return (short)x/y*2;
}
A byte
B.
short
3
C. int
D. double
10. 关于以下Java程序中错误行的说明正确的是( b )。(选择一项)
public class Test2 {
public static void main(String[] args) {
short s1=1; //1
s1=s1+1; //2
s1+=1; //3
System.out.println(s1);
}
}
A 1行错误
B.
2行错误
C. 3行错误
D. 1行,2行,3行都错误
三、 判断题
1. Java中变量名不区分大小写,number和NuMbEr代表同一个变量。( × )
2. 在编译Java源程序时,计算机根本不会去识别各个变量名的具体含义,因此命名规
范对编写Java程序而言不是必要的,而且有可能会降低编写Java源程序的效率。
( × )
3. Java语言中不同数据类型的长度是固定的,不随机器硬件不同而改变。( √ )
4. char类型变量可以存储一个Unicode字符,在内存中占2个字节,该字符可以是一
个汉字。( √ )
5. 运算符||和&&既是逻辑运算符,也是位运算符。根据两侧操作数的类型判断是逻辑
运算符还是位运算符。( × )
6. ^ 是异或位运算符,运算规则是如果两个操作数相同,结果是0,否则结果是1。
( √ )
7. 赋值运算符优先级别低于条件运算符,条件运算符优先级别低于算术运算符。
( √ )
8. 赋值和条件运算符是运算级别最低的两种运算符,都具有自右向左的结合性。
( √ )
9. 整型常量的默认类型是int类型,浮点常量的默认类型是float类型。( × )
10. 00101010 & 00010111语句的执行结果为00111111( × )
四、 简答题
1. Java是一种强类型语言,说明Java的数据类型分类。
2. i++和++i的异同之处
3. 运算符||和|的异同之处
4. Java中基本数据类型转换的规则
4
五、 编码题
1. 输入自己的名字,年龄和性别,分别用不同的变量接收,并将输入的信息做输出。
2. 输入圆形半径,求圆形的周长和圆形的面积,并将结果输出。
3. 银行利率表如下表所示,请计算存款10000元,活期1年、活期2年,定期1年,
定期2年后的本息合计。
结果如下图所示。(结果四舍五入,不保留小数位。使用Math.round(double d)实现)
5
4. 某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加
密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位
和第四位交换,第二位和第三位交换。结果如图所示。
六、 可选题
1. 网上查询资料,了解如下内容
1) ASCII、ISO8859-1、GB2312、GBK、GB18030、BIG5、UNICODE、ANSI等字符集
的特点
2) 常用进制(二进制、八进制、十六进制、十进制)的特点及其转换
3) 源码、反码、补码含义、作用及其转换
2. 利用”异或”运算的性质,对几个字符进行加密并输出密文,然后再解密。加密算法
是:密钥是字符’8’,明文的每个字符和密钥进行异或运算,得到密文。密钥和密文
的每个字符再次进行异或运算,重新得到明文。结果如图所示。
c语言作业
作业一C语言概述一、选择题1-个C程序的执行是从A.本程序的main函数开始,到main函数结束B.本程序文件的第-个函数开始,到本程序文件的最后-个函数结束C.本程序的main函数开始,到本程序文件的最后-个函数结束D.本程序文件的第-个函数开始,到本程序main函数结束2以下叙述正确的是:A.在C程序中,main函数必须位于程序的最前面B.C程序的每行中只能写-条语句C.C语言本身没有输入输出语句D.在对-个C程序进行编译的过程中,可发现注释中的拼写错误3以下叙述不正确的是A.-个C源程序可由-个或多个函数组成B.-个C源程序必须包含-个main函数C.C程序的基本组成单位是函数D.在C程序中,注释说明只能位于-条语句的后面4C语言规定:在-个源程序中,main函数的位置A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后5-个C语言程序是由A.-个主程序和若干子程序组成B.函数组成C.若干过程组成D.若干子程序组成二、编程题编写一个C程序,输出以下信息:****************************************Hello,world!****************************************作业二程序的灵魂——算法一.填空题1.算法的五个特性是指:有穷性、、、、。
2、三种基本的程序结构是:、、。
3、程序中的子模块在C语言中用来实现。
作业三数据类型、运算符与表达式一、选择题1以下结果为整数的表达式(设有int i;char c;float f;)( ).A.i十f B.i*c C.c十f D.i十c十f2以下不正确的语句(设有int p,q)是( )。
A.P*=3; B.p/=q; C.p十=3; D.p&&=q;3以下使i的运算结果为4的表达式是( )。
A.int i=0,j=0;(i=3,(j十十)十i);B.int i=1,j=0;j=i=((i=3)*2);C.int i=0,j=1;(j==1)?(i=1);(i=3);D.int i=1,j=1;i+=j十=2;4下列四组选项中,均不是C语言关键字的选项是( ).A)define B)getc C)include D)whilei f char sanf gotype printf case pow5下列四个选项中,均是C语言关键字的选项是( )。
第二章+数据类型、运算符和表达式
格式项的一般形式为:
%[附加格式] 格式控制符
方括号中的内容可以缺省。
附加格式控制
含义说明
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语言基本数据类型及运算题库
第二章基本数据类型及运算一、选择题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语言试题数据类型运算符与表达式
C语言试题数据类型运算符与表达式一、单项选择题1、以下选项中,不正确的C语言浮点型常量是(C)。
A.160.B.0.12C.2e4.2D.0.0分析:e后面的指数必须为整数。
2、以下选项中,(D)是不正确的C语言字符型常量。
A.'a'B.'\\某41'C.'\\101'D.\分析:在C语言中,’a’表示字符常量,”a”表示字符串。
3、在C语言中,字符型数据在计算机内存中,以字符的(C)形式存储。
A.原码B.反码C.ASCII码D.BCD码分析:将一个字符常量放入一个字符变量中,实际上并不是将字符本身放到内存单元中,而是将字符的对应的ASCII码放到储存单元中。
4、若某、i、j和k都是int型变量,则计算下面表达式后,某的值是(C)。
某=(i=4,j=16,k=32)A.4B.16C.32D.52分析:(i=4,j=16,k=32)的值为最后一个表达式的值,即为32,所以某=32.5、算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为(B)。
A.算术运算、赋值运算、关系运算 B.算术运算、关系运算、赋值运算C.关系运算、赋值运算、算术运算D.关系运算、算术运算、赋值运算分析:算术运算符包括加法运算“+”符减法运算“-”符乘法运算符“某”以及除法运算符“/”,赋值运算符包括“=、+=、-=、某=、/=、”,关系运算符包括“、>=”。
3ae6、若有代数式bc,则不正确的C语言表达式是(C)。
A.a/b/c某e某3B.3某a某e/b/cC.3某a某e/b某cD.a某e/c/b某3分析:C选项表达的是3ace/b。
7、表达式!某||a==b等效于(D)。
A.!((某||a)==b)B.!(某||y)==bC.!(某||(a==b))D.(!某)||(a==b)分析:由符优先级先后顺序在!某||a==b中应先算“||”再算“!”,最后算“==”。
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章 数据类型
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。
chap2 基本数据类型、操作符和表达式
The latter form takes more space, but is convenient for adding a comment to each declaration for subsequent modifications. — K&R:P39
2.2.2 整型变量
整型变量在计算机内存中一般占两个字节或四个 字节。我们可以用sizeof(int)来测试。 用以说明整型变量的关键字(也称为数据类型符) 为int。定义变量数据类型语句的一般格式为: 数据类型符 变量名1,变量名2,… C语言规定,每个变量在使用前,都必须先定义。 int a,b;
— K&R:P36
The value of an integer can be specified in octal or hexadecimal instead of decimal. A leading 0 (zero) on an integer constant means octal; a leading 0x or 0X means hexadecimal. For example, decimal 31 can be written as 037 in octal and 0x1f or 0x1F in hex. Octal and hexadecimal constants may also be followed by L to make them long and U to make them unsigned: 0XFUL is an unsigned long constant with value 15 decimal.
There are some restrictions on the names of variables and symbolic constants. Names are made up of letters and digits; the first character must be a letter. The underscore ``_'' counts as a letter; it is sometimes useful for improving the readability of long variable names. Don't begin variable names with underscore, however, since library routines often use such names. Upper and lower case letters are distinct, so x and X are two different names.
数据类型之数字类型—运算符
数据类型之数字类型—运算符数字类型(Number)可分为以下⼏种: 整形(int)浮点型(float)布尔(bool)长整形(long)复数(complex)⼀、整形(int) 整形就是整数类型num = 123 # 数字类型不⽤加引号,加引号的都是字符串形式。
print(num) 字符串转换数字: int()num = '123'print(type(num), num) # type() 查看数据类型a = int(num)print(type(a), a)>>> <class'str'> 123<class'int'> 123num1 = '123a'b = int(num)print(type(b),b) # 报错,字符串转换数字不能有字母。
字符串转换为进制: base = 16num = 'a'a = int(num,base = 16) # base = 16,转换为16进制print(a)>>> 10 当前数字⼆进制⾄少⽤⼏位来表⽰: bit_length() 1转换⼆进制为:01 2转换⼆进制为:10 3转换⼆进制为:11 4转换⼆进制为:100 5转换⼆进制为:101num = 5bit = num.bit_length()print(bit)>>> 3 声明整形有4种⽅式: ⼆进制:0~1 表达形式:以0b或0B开头:0b010 ,-0B101 变量 = 0b⼆进制数字(0b是⼆进制的标志符号) ⼋进制:0~7 表达形式:以0o或0O开头:0o123, -0O456 变量 = 0o⼋进制数字(0o是⼋进制的标志符号) ⼗进制:0~9 表达形式:1010 , 99,-217 变量 =⼗进制数字 ⼗六进制:0~9 A~F 表达形式:以0x或0X开头:0x9a, -0X89 变量 = 0x⼗六进制数字(0x是⼗六进制的标志符号)dec = 15b = bin(dec) # ⼗进制转换⼆进制o = oct(dec) # 转换⼋进制h = hex(dec) # 转换⼗六进制print(dec)print(b, o, h)print(dec, eval(b), eval(o), eval(h))>>>150b1111 0o17 0xf15 15 15注:eval()函数,官⽅解释为:将字符串str当成有效的表达式来求值并返回计算结果。
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
