C语言题库第2章 数据类型运算符和表达式√
C语言程序设计 第二章 基本数据类型、运算符及表达式
一、选择题1、C语言中的数据的基本类型包括()A、整型、实型、字符型和逻辑型B、整型、实型、字符型和结构体C、整型、实型、字符型和枚举型D、整型、实型、字符型和指针型2、在C语言中,不合法的int型常量是()A、32767B、0678C、0XABCD、32768L3、在C语言中,运算对象必须是整型数的运算符是()A、%B、\C、%和\ D、**4、若已定义X和Y为double型,则表达式:x=1,y=x+3/2的值是()A、1B、2C、2.0D、2.55、若t为double类型,表达式t=1,t+5,t++的值就是()A、1B、6.0C、2.0 D、 1.06、若有定义:int a=10,b=9,c=8;执行下面两条语句c=(a-=(b-5));c=(a%11)+(b=3);后,变量b的值为()A、9B、4C、3D、27、设int a=12,则执行完语句a+=a-=a*a后,a的值是_____A、22B、264C、144 D、 -2648、以下结果为整数的表达式(设有int i;char c;float f;)( ).A.i十f B.i*c C.c十f D.i十c十f9、以下不正确的语句(设有int p,q)是( )。
A.P*=3; B.p/=q; C.p十=3; D.p&&=q;10、以下使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;11、下列四组选项中,均不是C语言关键字的选项是( ).A)define B)getc C)include D)whilei f char sanf gotype printf case pow12、设char ch;以下正确的赋值语句是(B).A.ch='123'; B.ch=\xff'; C.ch='\08’; D.ch="\”;13、下面四个选项中,均是合法整形常量的选项是( ).A)160 B)-0xcdf C)-01 D)-0x48a-0xffff 01a 986,012 2e5011 0xe 0668 0x14、设n=10,i=4、则赋值运算n%=i+1执行后,n的值是( ).A.0 B.3 C.2 D.115、下面四个选项中,均是不合法浮点数的选项是( ).A)160. B)123 C)-.18 D)-e30.12 2e4.2 123e4 0.234e3 .e5 0.0 1e316、下面四个选项中,均是合法浮点数的选项是( ).A)+1e+1 B)-.60 C)123e D)-e35e-9.4 12e-4 12e-.4 .8e-403e2 -8e5 +2e-1 5.e-017、逗号表达式(a=3*5,a*4),a十15的值为( ),a的值为( )。
第2章_数据类型运算符及表达式--参考答案
C) double型D)不确定
C
13. C语言中的变量名只能由字母,数字和下划线三种字符组成,且第一个字符:
A)必须为字母B)必须为下划线
C)必须为字母或下划线D)可以是字母,数字或下划线中的任意一种
C
14.若有定义int x=3,y=2和float a=2.5,b=3.5,则表达式:
1、一个C语言的执行是从:()
A)本程序的主函数开始,到本程序的主函数结束
B)本程序的第一个函数开始,到本程序的最后一个函数结束
C)本程序的主函数开始,到本程序的最后一个函数结束
D)本程序的第一个函数开始,到本程序的主函数结束
A
2.以下叙述正确的是:
A)在C程序中,主函数必须位于程序的最前面
B)在C程序中,一行只能写一条语句
C) 3*a*e/b*c D) a*e/c/b*3
C
28.已知x=43,ch='A',y=0,则表达式(x>=y&&ch<'B'&&!y)的值是:
A) 0 B)语法错
C) 1 D) "假"
C
29.若已定义x和y是整型变量,x=2;,则表达式y=2.75+x/2的值是:
A) 5.5 B) 5
C) 3 D) 4.0
A
37.下面程序的输出的是
main()
{int x=10,y=3;
printf("%d\n",y=x/y);
}
A) 0 B)1 C) 3 D)不确定的值
C
38.若有说明和语句
int a=5;
a++;
数据类型运算符与表达式2
main() { char c1,c2;
c1=97;c2=98;
c1=97 等效于 c1=‘a’
printf(“%c %c”,c1,c2);
} %c 效果运不行同结于果:a b
字%符d变量以字符或整数两种形式输出:
printf(“%c %d %c %d”,c1,c1,c2,c2);
运行结果:a 97 b 98
3.7 各类数值型数据间的混合运算
整型、字符型、单精度型和双精度型数据之 间可以混合运算。例如
10+‘a’+1.5-8765.1234
=-8656.623400
在进行运算时,不同类型的数据要先转换成 同一类型,然后进行运算。转换规则是:
高
double←float
↑
↑表示转换的方向
long
↑
←表示系统内部必
运行结果:12345678848.000000
(12345678920)
3.5 字符型数据
一、字符常量 字符常量是用两个单引号括起来的单个字符
,如 ‘a’、’A’、’1’、’%’等。 特殊形式的字符常量以一个“\”开头的字符序
列,也叫做转义字符。(P48表3-3) [例]转义字符的使用 main() { printf(“□ab□c\t□de\rf\tg\n”); printf(“h\ti\b\bj□k”); }
注:long的格式输 出符为%ld
Printf(“%ld”,b);
3.4 浮点型数据
一、浮点型常量 浮点型常量又称浮点数,就是通常带小数点
的实数。它只使用十进制数,其书写方法有两 种:
⑴十进制小数形式 由整数、小数点和小数三部分组成规。范化的指 例如:12.345, -1.2345, 47.0 数形式
C语言 基本数据类型、运算符及表达式
+ - * / % ++ -> >= < <= == != ! && || << >> ~ ∣ ∧ & = 复合赋值运算符 ?:
(7) 逗号运算符 (8) 指针运算符 (9) 求字节数运算符 (10)强制类型转换运算符 (11)分量运算符 (12)下标运算符 (13)其它
, *和& sizeof (类型标识符) ·→ [] 函数名( )
形式:(1)定点数形式: 它由数字和小数点组成。整数和小数部分可以省 去一个,但不可两者都省,而且小数点不能省。
如:1.234,.123,123.,0.0等。
(2)指数形式(或称科学表示法): 它是用整数或定点数后加e(或E)和指数来表示; 指数可正可负必须为整数, 字母e之前必须有数字。
如: 1.234e3, 12.34e2 均合法表示 1.234*103; 而 e3,1e2.3,.e3,e 均不合法。
c1=C, c2=A, c3=C i=3, j=5, k=3
j=i--;
k=--i;
printf("c1=%c,c2=%c,c3=%c\n",c1,c2,c3);
printf("i=%d,j=%d,k=%d\n",i,j,k);
}
int i=3;
说明:m=(i++)+(i++)+(i++);
int i=3;
用难于理解和容易出错的表达方式,尤其 是具有二义性的表达式。
2、算术表达式
用算术运算符将运算对象连接起来,符合 C语法规则,并能说明运算过程的式子。
赋值运算符与赋值表达式
c语言练习题
《C语言程序设计》课程自测1章C语言概述一、判断题1. C语言程序中,任何英语单词均可以作标识符。
()答案为×2. 在C语言的源程序中,注释使用越多,编译之后的可执行程序的执行效率越低。
()答案为×3. C语言是一种面向过程的语言。
()答案为√4. 当主程序执行完毕时,亦即程序执行完毕。
()答案为√5. C程序有且仅有一个main()函数。
()答案为√6. C语言中不区分大小写英文字母。
()答案为×7. 用C语言编写的程序是一种需要经过编译和连接才能运行的程序。
()答案为√8. C语言是一门对标识符大小写敏感的程序设计语言。
()答案为√二、单选题1. 一个C程序的组成部分可以是()。
A)一个主函数和一至若干个其他函数B)一至若干个主函数C)一个主程序和一至若干个其他函数D)一个主程序和一至若干个子程序答案为A2. 以下叙述的是()。
A)在C程序中,main函数必须位于程序的最前面B)C程序的每行中只能写一条语句C)C语言本身没有输入输出语句D)在对一个C程序进行编译的过程中,可发现注释中的拼写错答案为C3. C语言规定,C程序执行的开始处为()。
A)源程序中排列在最前面的函数B)一个指定的系统库函数C)用户指定的一个特定函数D)程序的主函数答案为D4. 一个C程序的执行是从()。
(A)本程序的main函数开始,到main函数结束(B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束(C)本程序的main函数开始,到本程序文件的最后一个函数结束(D)本程序文件的第一个函数开始,到本程序main函数结束答案为A5. 一个C语言程序是由()组成。
(A)一个函数(B)一个或若干个函数(C)一个过程(D)一个过程或若干个过程答案为B6. 下列说法中错误的是()。
(A)程序的执行总是从主函数开始。
(B)主函数可以调用任何非主函数的其它函数(C)任何非主函数可以调用其它任何非主函数(D)程序可以从任何非主函数开始执行答案为D7. C程序的基本单位是()。
c语言第二章试题库及答案详解
c语言第二章试题库及答案详解C语言作为一门经典的编程语言,其试题库及答案详解对于学习者来说至关重要。
以下是C语言第二章的试题库及答案详解,内容涵盖了基本的C语言概念、数据类型、运算符和表达式等。
一、选择题1. 在C语言中,以下哪个是合法的整型常量?- A. 2023- B. 0x1A3F- C. 2023.0- D. '2023'答案: A, B2. 以下哪个选项表示的是C语言中的浮点型常量?- A. 3.14159- B. 2.5e2- C. 0.314E-2- D. All of the above答案: D3. 在C语言中,哪个运算符用于计算两个数的乘积?- A. +- B. -- C. *- D. /答案: C二、填空题1. 在C语言中,基本数据类型包括______、______、______和______。
- 答案:整型(int),字符型(char),浮点型(float),双精度型(double)2. 赋值语句的一般形式是______。
- 答案:变量名 = 表达式3. 表达式 `5 + (fl + 2) * 3 / 2` 的正确计算顺序是先计算______,然后是______,最后是______。
- 答案:括号内的表达式,乘除,加减三、简答题1. 请简述C语言中的变量声明和变量初始化的区别。
- 答案:变量声明是指告诉编译器变量的类型和名称,但不赋予其具体的值。
而变量初始化是在声明的同时赋予变量一个初始值。
2. 解释C语言中的运算符优先级及其对表达式求值的影响。
- 答案:运算符优先级决定了在没有括号的情况下,表达式中各个运算符的执行顺序。
例如,乘法和除法的优先级高于加法和减法,因此在没有括号的情况下,乘除运算会先于加减运算执行。
四、编程题1. 编写一个C语言程序,计算并输出1到10的整数之和。
```c#include <stdio.h>int main() {int sum = 0, i;for(i = 1; i <= 10; i++) {sum += i;}printf("The sum of integers from 1 to 10 is: %d\n", sum);return 0;}```2. 编写一个C语言程序,实现两个浮点数的加法,并输出结果。
C语言程序设计第2章数据类型与运算练习题及解答
C语⾔程序设计第2章数据类型与运算练习题及解答第2章数据类型和运算符习题及解答⼀.选择题。
1.下列是⽤户⾃定义标识符的是A)_w1 B)3_xy C)int D)LINE-3答案:A解析: C语⾔规定⽤户标识符由英⽂字母、数字和下划线组成,且第⼀个字符必须是字母或下划线,由此可见选项B),D)是错的;此外,C语⾔不允许⽤户将关键字作为标识符,⽽选项C)选项项中的int 是C语⾔的关键字。
语⾔中最简单的数据类型包括A)整型、实型、逻辑型 B)整型、实型、字符型C)整型、字符型、逻辑型 D)字符型、实型、逻辑型答案:B解析:本题考查C语⾔的数据类型。
在C语⾔中,没有专门的逻辑型数据类型,可以⽤0和1来表⽰逻辑值。
所以,在本题的选择答案中,不应该包括逻辑型。
3.假定int类型变量占⽤两个字节,其有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是A)3 B)6 C)10 D)20答案:D解析: x数组共有10个元素,在花括弧内只提供3个初值,这表⽰只给前⾯的3个成员赋值,后7个元素的值为0,所以,⼀共有20个字节。
4.以下选项中不正确的实型常量是A) B) C) D)234e-2答案:B解析:实型常量表⽰时字母E或e前必须有数字,其后数字必需为整数,故B错。
5.若变量已正确定义并赋值,以下符合C语⾔语法的表达式是A)a:=b+1 B)a=b=c+2 C)int %3 D)a=a+7=c+b答案:B解析:选项A)中包含⼀个不合法的运算符“:=”;选项C)应改为(int)%3;选项D)可理解为两个表达式:a+7=c+b和a=a+7,其中第⼀个是错的,因为C语⾔规定赋值号的左边只能是单个变量,不能是表达式或常量等。
因此,正确答案是选项B),它实际上相当于a=(b=c+2),进⽽可分解为两个表达式:b=c+2和a=b。
6.下列可⽤于C语⾔⽤户标识符的⼀组是A)void, define, WORD B)a3_b3, _123,CarC)For, -abc, IF Case D)2a, DO, sizeof答案:B解析: C语⾔规定标识符只能由字母、数字和下划线三种字符组成,且第⼀个字符必须为字母或下划线,排除选项C)和D)。
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语言第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语言题库(2020版)第2章 数据类型运算符和表达式√
第二章数据类型运算符和表达式一、单项选择1.若有定义语句:int k1=10,k2=20;,执行表达式(k1=k1>k2)&&(k2=k2>k1)后,k1和k2的值分别为( B )2.下面四个选项中,均是不合法的用户标识符的选项是( B )。
3.判断字符型变量c1是否为数字字符的正确表达式为( A )4.在C语言中,要求运算数必须是整型的运算符是( A )5.下面四个选项中,均是合法的用户标识符的选项是(A)。
6.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是(B)。
7.若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为(B)。
8.表达式18/4*sqrt(4.0)/8值的数据类型为(B)。
9.若a是数值类型,则逻辑表达式(a==1)||(a!=1)的值是( D )10.判断字符型变量c1是否为小写字母的正确表达式为(B)。
11.在C语言中,char型数据在内存中的存储形式是(C)。
12.以下选项中关于C语言常量的叙述错误的是:( D )13.下面正确的字符常量是(B)14.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符( D)15.以下选项中,能表示逻辑值"假"的是( B )16.设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为(C)17.以下选项中非法的字符常量是( B )18.以下关于C语言数据类型使用的叙述中错误的是(B )19.设:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b) && (n=c>d)后n的值为(C)。
20.若有数学式3aebc,则不正确的C语言表达式是(A)21.下列表达式中,不满足"当x的值为偶数时值为真,为奇数时值为假"的要求的是(C)二、填空1.若s是int型变量,s=6;则表达式s%2+(s+1)%2的值为___1__2.假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为___9__3.C语言中的标识符只能由三种字符组成,它们是__字母___,_数字____和____下划线_4.若a.b和c均是int型变量,则计算表达式a=(b=4)+(c=2)后,a值为 6,b值为_4,c值为_2_5.在C语言中,不带任何修饰符的浮点常量,是按___double__类型数据存储的。
C语言-数据类型习题及答案
第二章数据类型,运算符与表达式一.选择题1.不合法的字符常量是(B)。
A)…\t?B) “A” C)…a?D)?\x32?2、合法的字符常量是(D)。
A)…\084?B) …\84? C)…ab?D)?\x43?2.(B)是C语言提供的合法的数据类型关键字。
A)Float B)signed C)integer D)Char3.在以下各组标识符中,合法的标识符是(4)。
(1)A)B01 B)table_1 C)0_t D)k%(2)A)Fast_ B)void C)pbl D)<book>(3)A)xy_ B)longdouble C)*p D)CHAR(4) A) sj B)Int C)_xy D)w_y234.属于合法的C语言长整型常量的是(B)。
A)5876273 B)0L C)2E10 D)(long)58762735.下面选项中,不是合法整型常量的是(B)。
A)160 B)-0xcdg C)-01 D)-0x48a6.判断int x = 0xaffbc;x的结果是(B)(turbo c 版本)。
A)赋值非法B)溢出C)为affb D)为ffbc7.下面选项中,均是合法浮点数的是(B)。
A)+1e+1 B)-.60 C)123e D)-e3A)5e-9.4 B)12e-4 C)1.2e-.4 D).8e-4A)03e2 B)-8e5 C)+2e-1 D)5.e-08.在C语言中,要求参加运算的数必须是整数的运算符是(C)。
A)/ B)* C)% D) =9.在C语言中,字符型数据在内存中以(D)形式存放。
A)原码B)BCD码C)反码D)ASCII码10.下列语句中,符合语法的赋值语句是(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;11.(B)是非法的C语言转义字符。
A)…\b?B)…\0xf? C)…\037? D)…\??12.对于语句:f=(3.0,4.0,5.0),(2.0,1.0,0.0);的判断中(B),是正确的。
第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) 转义字符使用实例
c语言数据类型、运算符与表达式
第一部分写在作业本上三、读程题:1.读下列程序的运行结果#include <stdio.h>main(){int a=-1,b=4,k;k=(++a<0)&&(b<0);printf("%d,%d,%d\n",k,a,b);}2.读下列程序的运行结果#include <stdio.h>main(){int x,y,z;x=y=5;z=++x;printf(“\n %d %d %d”,z,x,y,);x=y=5;z=x++;printf(“\n %d %d %d”,z,x,y,);x=y=5;z=--x;printf(“\n %d %d %d”,z,x,y,);x=y=5;z=x--;printf(“\n %d %d %d”,z,x,y,);}3.读下列程序的运行结果main(){int w,x,z;w=3;x=z=10;printf("%d",x>10?x+100:x-10);printf("%d",w--||z++);printf("%d",x++>=z);printf("%d",--w&&z);printf("%d%d%d\n",w,x,z);}4.读下列程序的运行结果main( ){char c1,c2;c1=…a‟+‟6‟-‟2‟;c2=…a‟+‟6‟-‟3‟;printf(“%c,%d\n”,c2,c1);}5.读下列程序的运行结果main(){int j,k,l,a=3,b=2;j=(-a==b++)?--a:++b;k=a++;l=b;printf("%d,%d,%d",j,k,l);}6.读下列程序的运行结果main(){int j,k,l,a=3,b=2;j=(--a==b++)?--a:++b;k=a++;l=b;printf("%d,%d,%d",j,k,l);}四、完善程序题(即:给出了程序所完成的功能,根据此功能在上填写合适的一条语句)1.下面的程序是借肋于第三个变量将a,b中的值交换。
C语言 数据类型、运算符与表达式
数据的基本表现形式是常量和变量。
1、常量
常量是程序运行过程中,值不能修改的量。
常量区分不同类型: 整型常量:123,-3 实型常量:1.23,0.5 字符常量:’a‟, „9‟ 字符串常量:”abc”, “1234”
2.2
常量与变量
常量有两种表示形式:
直接常量(从字面形式即可判定):-1.5, 8, „a‟, “abcde” 等 符号常量(用一个符号名表示一个常量)
(4)当有若干个+或- 组成运算符串时,C规定,
自左向右尽可能多地符号组成一个运算符; 例: a+++b 理解为 (a++)+b
2.7 算术运算符和算术表达式
3) 强制性数据类型转换 格式: (数据类型符)(表达式) 利用强制类型转换可以将一个表达式转换成所需 类型 例: (int)(a+b) (int) a+b (int) a
2.7 算术运算符和算术表达式
2)自增、自减运算
对象数 名称 增1(前缀) 单目 增1(后缀) 减1(前缀) 减1(后缀) 运算符 ++ ++ --运算规则 先加1,后使用 整型、 先使用,后加1 字符型、 同运算 指针型 对象类 变量或 型 先减1,后使用 数组元 素 先使用,后减1 自右向左 运算对 象 运算结 果 结合性
2.3 整型数据
2、整型变量
整型变量的分类 int: (基本整型) short: ( 短整型) long: (长整型)
无符号型
修饰符unsigned,用于变量类型 (int/short/long)前面,表示无符号整数
2.3 整型数据
Turbo C表示的值的范围;(一般来说,与机器相关)
c语言第4版习题答案
c语言第4版习题答案C语言第4版习题答案C语言是一门广泛应用于计算机科学和软件开发领域的编程语言。
对于学习C语言的人来说,习题是非常重要的一部分,通过解答习题可以巩固所学的知识,并提升编程能力。
本文将为读者提供C语言第4版习题的答案,帮助读者更好地理解和掌握C语言。
第一章:开始1.1 问题一:请写出一个简单的C程序。
答案:以下是一个简单的C程序示例:```c#include <stdio.h>int main() {printf("Hello, World!");return 0;}```1.2 问题二:请解释#include <stdio.h>的作用是什么?答案:#include <stdio.h>是一个预处理指令,它告诉编译器在编译过程中将stdio.h这个头文件包含进来。
这个头文件中包含了一些输入输出函数的声明,如printf和scanf。
第二章:数据类型、运算符和表达式2.1 问题一:请写一个程序,计算两个整数相加的结果。
答案:以下是一个计算两个整数相加的程序示例:```c#include <stdio.h>int main() {int a, b, sum;printf("请输入两个整数:");scanf("%d %d", &a, &b);sum = a + b;printf("两个整数的和为:%d", sum);return 0;}```2.2 问题二:请解释赋值运算符和算术运算符的区别。
答案:赋值运算符(=)用于将一个值赋给一个变量。
例如,a = 5; 将5赋给变量a。
而算术运算符(+、-、*、/等)用于执行算术运算,如加法、减法、乘法和除法。
例如,a + b 将变量a和b的值相加。
第三章:控制流3.1 问题一:请写一个程序,判断一个数是否为正数、负数或零。
C语言-数据类型运算符和表达式
3/86
C程序常见符号分类
关键字(Keyword) – 又称保留字( C Reserved Word )
A word that has special meaning in C
标识符(Identifier) – C Standard Identifier(系统预定义标
识符)
A word having special meaning but may be redefined (but is not recommended!!)
习题2.2(4)字符串"\t\"Name\\Address\n"的长度?
– 15
2020/5/7
11/86
变量(Variable )
A name associated with a memory cell whose value can change – 其值在程序执行过程中是可以改变的 Properties of a variable – Name 变量名 – Type 变量类型 – Value 变量的值 – Address 变量的存储单元——地址
第2章 数据类型、运算符与表达式
思考
C程序的框架是什么样的? 如何编写程序实现,计算两个整数x=2,y=3的和,然后 显示器输出两个数相加的结果?
如何编写程序实现从键盘输入两个整数,然后显示器 输出两个数相加的结果?
2020/5/7
2/86
一个简单的C程序例子
#include <stdio.h>
unsigned – 用来修饰char、int、short和long – 无符号整数(正整数和0)
2020/5/7
24/86
不同类型取值范围不同
C语言直接提供的任何类型都有取值范围。
第2章数据类型运算符和表达式习题
第2章数据类型运算符和表达式习题1. 单项选择题(1) 以下选项中,正确的C 语言整型常量是 D 。
A. 32LB. 510000C. -1.00D. 567(2) 以下选项中, D 是不正确的C 语言字符型常量。
A. 'a'B. '\x41'C. '\101'D. "a"(3) 在C 语言中,字符型数据在计算机内存中,以字符的C 形式存储。
A. 原码B. 反码C. ASCII 码D. BCD码(4) 字符串的结束标志是 C 。
A. 0B. '0'C. '\0'D. "0"(5) 算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为B。
A. 算术运算、赋值运算、关系运算B. 算术运算、关系运算、赋值运算C. 关系运算、赋值运算、算术运算D. 关系运算、算术运算、赋值运算(6) 逻辑运算符中,运算优先级按从高到低依次为D。
A. &&,!,||B. ||,&&,!C. &&,||,!D. !,&&,||(7) 表达式!x||a==b 等效于 D 。
A. !((x||a)==b)B. !(x||y)==bC. !(x||(a==b))D. (!x)||(a==b)(8) 设整型变量m,n,a,b,c,d 均为1,执行(m=a>b)&&(n=c>d)后, m,n 的值是A 。
A. 0,0B. 0,1C. 1,0D. 1,1(9) int b=0,x=1;执行语句if(x++) b=x+1; 后,x,b 的值依次为 A 。
A. 2,3B. 2,0C. 3,0D. 3,2(10) 设有语句int a=3;,则执行了语句a+=a-=a*=a; 后,变量a 的值是B 。
A. 3B. 0C. 9D. -12(11) 在以下一组运算符中,优先级最低的运算符是 D 。
第02章数据类型、运算符与表达式
第02章数据类型、运算符与表达式第2章数据类型、运算符与表达式2.1选择题2.1 在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为________。
A)char<int<="float<double</p">B)char=int<="float<double</p">C)char<intD)char=int=long int<=float<double< p="">2.2 若x,i,j和k都是int型变量,则计算下面表达式后,x的值为————。
X=-(i=4,j=16,k=32)A) 4 B) 16 C) 32 D) 522.3 假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是————。
A)7 B)8 C)32 D)22.4 下列四组选项中,均不是C语言关键字的选项是————。
A)define B) getc C) include D) while IF char scanf gotype printf case pow2.5 下列四组选项中,均是C语言关键字的选项是————。
A)auto B) switch C) signed D) if enum typedef union struct include continue scanf type2.6 下列四组选项中,均是不合法的用户标识符的选项是————。
A) A B) float C) b-a D) _123 P_0 la0 goto tempdo _A int INT2.7 C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符——。
A)必须为字母B)必须为下划线C)必须为字母或下划线D) 可以是字母、数字和下划线中任一种字符。
2.8 下面四个选项中,均是合法整形常量的选项是————。
C语言题库第2章数据类型运算符和表达式√
C语言题库第2章数据类型运算符和表达式√第二章数据类型运算符和表达式一、单项选择1.若有定义语句:int k1=10,k2=20;,执行表达式(k1=k1>k2)&&(k2=k2>k1)后,k1和k2的值分别为( B )2.下面四个选项中,均是不合法的用户标识符的选项是( B )。
3.判断字符型变量c1是否为数字字符的正确表达式为( A )4.在C语言中,要求运算数必须是整型的运算符是( A )5.下面四个选项中,均是合法的用户标识符的选项是(A)。
6.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是(B)。
7.若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为(B)。
8.表达式18/4*sqrt(4.0)/8值的数据类型为(B)。
9.若a是数值类型,则逻辑表达式(a==1)||(a!=1)的值是( D )10.判断字符型变量c1是否为小写字母的正确表达式为(B)。
11.在C语言中,char型数据在内存中的存储形式是(C)。
12.以下选项中关于C语言常量的叙述错误的是:( D )13.下面正确的字符常量是(B)14.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符( D)15.以下选项中,能表示逻辑值"假"的是( B )16.设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为(C)17.以下选项中非法的字符常量是( B )18.以下关于C语言数据类型使用的叙述中错误的是(B )19.设:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b) && (n=c>d)后n的值为(C)。
20.若有数学式,则不正确的C 语言表达式是(A )21.下列表达式中,不满足"当x 的值为偶数时值为真,为奇数时值为假"的要求的是(C )二、填空1.若s 是int 型变量,s=6;则表达式s%2+(s+1)%2的值为___1__2.假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为___9__3.C 语言中的标识符只能由三种字符组成,它们是__字母___,_数字____和____下划线_ 3aebc4.若a.b和c均是int型变量,则计算表达式a=(b=4)+(c=2)后,a值为 6,b值为_4,c值为_2_5.在C语言中,不带任何修饰符的浮点常量,是按___double__类型数据存储的。
第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、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二章数据类型运算符和表达式
一、单项选择
1.若有定义语句:int k1=10,k2=20;,执行表达式(k1=k1>k2)&&(k2=k2>k1)后,k1和k2的值分别为( B )
2.下面四个选项中,均是不合法的用户标识符的选项是( B )。
3.判断字符型变量c1是否为数字字符的正确表达式为( A )
4.在C语言中,要求运算数必须是整型的运算符是( A )
5.下面四个选项中,均是合法的用户标识符的选项是(A)。
6.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是(B)。
7.若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为(B)。
8.表达式18/4*sqrt(4.0)/8值的数据类型为(B)。
9.若a是数值类型,则逻辑表达式(a==1)||(a!=1)的值是( D )
10.判断字符型变量c1是否为小写字母的正确表达式为(B)。
11.在C语言中,char型数据在内存中的存储形式是(C)。
12.以下选项中关于C语言常量的叙述错误的是:( D )
13.下面正确的字符常量是(B)
14.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符( D)
15.以下选项中,能表示逻辑值"假"的是( B )
16.设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为(C)
17.以下选项中非法的字符常量是( B )
18.以下关于C语言数据类型使用的叙述中错误的是(B )
19.设:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b) && (n=c>d)后n的值为(C)。
20.若有数学式,则不正确的C 语言表达式是(A )
21.下列表达式中,不满足"当x 的值为偶数时值为真,为奇数时值为假"的要求的是(C )
二、填空
1.若s 是int 型变量,s=6;则表达式s%2+(s+1)%2的值为___1__
2.假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为___9__
3.C 语言中的标识符只能由三种字符组成,它们是__字母___,_数字____和____下划线
_ 3ae
bc
4.若a.b和c均是int型变量,则计算表达式a=(b=4)+(c=2)后,a值为 6,b值为_4,c值为_2_
5.在C语言中,不带任何修饰符的浮点常量,是按___double__类型数据存储的。
6.已知A=
7.5,B=2,C=3.6,表达式A>B && C>A || A<B && !C>B的值是__0___
7.设有以下变量定义,并已赋确定的值,char w; int x; float y; double z;则表达式:w*x+z-y所求得的数据类型为_double____
8.假设m是一个三位数,从左到右用a、b、c表示各位的数字,则从左到右各个数字是bac的三位数的表达式是
9.若有的值是_0____
10.数学表达式等价的C语言表达式是sqrt(fabs(a-b))/(3*(a+b))
11.表达式8/4*(int)2.5/(int)(1.25*(3.7+2.3))值的数据类型为__int___
12.若a是int型变量,则表达式(a=4*5,a*2),a+6的值为_26__
13.若x和n均是int型变量,且x和n的初值均为5,则精神表达式x+=n++后x的值为__10___,n的值为___6__
14.执行以下程序段后,a=___10__,b=___9__,c=____11_。
int x=10,y=9 ;
int a,b,c ;
a = (x--==y++) ? x-- : y++ ;
b = x++ ;
c = y ;
15.设x,y,z均为int型变量;写出描述“x,y和z中有两个为负数”的C语言表达式:
(x<0&&y<0)||(x<0&&z<0)||(y<0&&z<0)
16.已知int a=7;float x=2.5,y=4.7;计算表达式
4/2
)%
(int)(
*
3
%y
x
a
x+
+的值为
2.5
17.若有定义:int e=1,f=4,g=2;float m=10.5,n=4.0,k;则计算赋值表达式
k=(e+f)/g+sqrt((double)n)*1.2/g+m后k的值是_13.7____
18.若x为int类型,请以最简单的形式写出与逻辑表达式!x等价的C语言关系表达式_x==0____。