基本数据类型
一、选择题
1.下列数据中,不正确的数值或字符常量是( )。 A.0.825e2 B.5L C.0xabcd D. o13
2.以下字符中,不正确的C语言转义字符是( )。 A.'\\\\' B.'\\018' C.'\\xaa' D.'\\t'
3.已知大写字母A的A SCII码值是65,小写字母a的A SCII码是97,则用八进制表示的字符常量'\\101'是( )。
A.字符A A.10110B
B.字符a B.0386
C.字符e C.0Xffa
D.非法的常量 D.x2a2
//p18
4.以下选项中可作为C语言合法整数的是( )。 5.以下符合C语言语法的实型常量是( )。 A.1.2E0.5 B.3.14.159E C..5E-3 D.E15 A.ch='\\'; B.ch=62+3; C.ch=NULL; D.ch='\\xaa'; 7.已定义c为字符型变量,则下列赋值中正确的是( )。 A.c='97'; B.c=\C.c=97; D.c=\8.C语言中最基本的数据类型包括( )。
A.整型、实型、逻辑型 B.整型、实型、字符型 //P14图2.1 C.整型、字符型、逻辑型 D.整型、实型、逻辑型、字符型 9.在C语言中,合法的字符常量是( )。 A. . '\\084' B. '\\x43' C. 'ab' D. \
10.已知在ASCII代码中,字母A的序号为65,以下程序的输出结果是( )。 #include
{char c1='A ', c2='Y '; printf(\%d,%d\\n\
A.输出格式非法,输出错误信息 B.65, 90 C.A, Y D.65, 89 二、填空题
1.C语言中,常量包括_整型常量、_实型常量_、字符型常量__和_字符串常量__。 2.C语言中,数据类型包括基本类型、构造类型、指针类型、空类型。 3.字符串ab在C语言中表示为 “ab” 。
4. C语言中的变量实际代表内存中的一个存储单元______。//P16
5. 在C语言中,整数可用10进制数、8进制数与16进制数3种来表示,以0x打头的是 16 进制数,以0打头的是 8 进制数。 //P17
6.已定义ch为字符型变量,以下赋值中错误的是( )。
//p19 //8进制里没有8以上的数字
6.若有说明语句:char c=‘\\035’;则变量c包含 1 个字符。 三、简答题
1.C语言的基本数据类型有几种//3,分别是什么,并指出各种数据类型的关键字? int\\float\\char//
2. 常量和变量的区别是什么?//不变/变 3. 在程序中如何使用变量?//先定义,后使用
4.字符和字符串表示形式有什么区别?'a'和\有什么不同?9和'9'有何不同?空字符'\\0'和空格字符' '有何区别?//””\\’’ 字符:一个字节 。字符串:最少两个(双引号里面字符个数+1)
运算符与表达式
一、选择题
1.在下列运算符中,优先级最高的运算符是( )。 //P28 A.<= B.% C.= D.&&
2.若有代数式ae/ bc,则错误的C语言表达式是( )。 //P24 A.a/b/c*e B.a*e/b*c C.a*e/b/c D.a*e/c/b 3.已知有以下变量定义: int i=8,k,a,b; unsigned long w=5; double x=1.42,y=5.2;
则不符合C语言语法的表达式是( )。
A.k=i++ B.(int)x+0.4 C.w+=-2 D.a=2*a=3 不能是表达式 //P25
4.运行以下程序段后,x的值为( )。 //P25//++使变量的值 int m=3, n=4, x; x = -m++; x = x+8/++n;
A.3 B.5 C.-1 D.–2 5.设有以下定义 int a = 0; double b = 1.25; char c = 'A '; #define d 2
//d为符号常量,++必须是变量
则下面语句中错误的是( )。
A.a++; B.b++; C.c++; D.d++;
//赋值号左边只能是变量,
6.设有如下程序段: int x=2002, y=2003; printf (\(x,y));
//(x,y)逗号表达式 值2003
则以下叙述中正确的是( )。
A.输出语句中格式说明符的个数少于输出项的个数,不能正确输出 B.运行时产生出错信息 C.输出值为2002 D.输出值为2003
7.以下非法的赋值语句是( )。
A.n =(i=2, ++i); B.j++; C.++(i+1); D.x = j>0; //++只能为变量,i+1是表达式 8.设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是( )。 A.6.500000 main() {
int k=2,i=2,m ; m=(k+=i*=k); printf(\}
执行后的输出结果是( )。 A.8,6 B.8,3 10.若有定义:
int a=8, b=5, c; 执行语句c=a/b+0.4;后,c的值为( )。 A.1.4 B.1 C.2.0
D.2
//P14
11.下列选项中哪个是合法的标识符( )。
A.char B.5abc C.t_a D._*m2 二、填空题
1.C语言中的表达式包括算术表达式、关系表达式、逻辑表达式、逗号表达式、条件表达式和赋值表达式。
//P24
2.C语言中的结合方向有自左向右和_自右向左。
3.若有定义:int a=0;则执行赋值语句a+=a*=a% =a-=15;后变量a中的值是__0__。//P26
4.printf(\(int)(2.5+3.0)/3);的输出结果是_1__。 5.设int x=9; 执行 x+=3+x%(-3);后x的值为 12 。
6.假设变量a为整型,则执行a=3+5,a*4;printf(\后的输出结果是__8。 7.条件:“0
8.设x和y均为int型变量,且x=1,y=2,则表达式1.0+x/y的值为_1.0_。 //x/y=0
9.在C语言中,要求运算数必须是整型的运算符是 % 。//24
//5/3=1
C.6,4
D.7,4
B.6 C.5.500000 D.6.000000
//26
//P22P23
9.若有以下程序:
10.在C语言中,表示逻辑“假”的值用 0 。 11.表达式7>6>5的值为 0 。//7>6 1>5 三、计算下列各表达式的值。 1.5/2+5.0/2+7%6 3.a=3*5,a*4,a+5 4.5>2>1 四、编程题
1.输入一个整数,取出它的个位数部分。//n 2.输入一个浮点数,分别输出它的整数部分和小数部分。
//5.5 //2+2.5+1 //0 //20 //0
2.a=3,b=4,c=5,a+b>c&&b==c
//P27
12.设a=0,b=1,c=2,则表达式a||b+c&&b==c的值是 0 。 //P29
顺序结构程序设计
一、选择题
1.请选出合法的C语言赋值语句( )。
A.a=b=58 B.(i+1)++ ; C.a=58, b=58 D.k=(int)a+b ; //分号结束 2.以下选项中,不正确的赋值语句是( )。 A.t=t+1; B.n1=(n2=(n3=0)); C.k=i=j; D.a=b+c=1;
3.若有定义:int a,b,c;,要给变量a,b,c输入数据,正确的输入语句是( )。 A.scanf(\% d% d% d\& a,& b,& c); B.scanf(\D% D% D \C.read(a,b,c);
D.scanf(\4. 阅读程序: #include
int a ; float b , c;
scanf(\ 2d% 3f% 4f\ printf(\}
若运行时从键盘上输入987654321↙,则程序的输出结果是( )。 A.a=98 , b=765 , c=4321 B.a=98 , b=765.000000 , c=4321.000000 C.a=98 , b=765.0 , c=4321.0 D.a=98.0 , b=765.0 , c=4321.0
//p41
5.已知字母A的A SCII码为十进制的65,下面程序的输出结果是( )。 #include
char ch1 , ch2 ; ch1='A '+'5'-'3' ; ch2='A '+'6'-'3' ;
printf(\% d , % c\\n\ }
A.67 , D B.B , C C.C , D
6.设有如下定义: int x=10 , y=3 , z ;
则语句: printf(\的输出结果是( )。 A.1 B.0 C.4 D.3 7. 若有以下定义和语句: char c1='b' , c2='e' ;
printf(\% d,% c\\n\则输出结果是( )。 A.2 , M B.3 , E 8.以下叙述中正确的是( )。
A.输入项可以是一个实型常量,例如: scanf(\
B.只有格式控制,没有输入项,也能正确输入数据到内存,例如: scanf(\
C.输入一个实型数据时,格式控制部分可以规定小数点后的位数,例如: scanf(\
D.当输入数据时,必须指明变量地址,例如: scanf(\&f) ; 二、填空题
1.结构化程序设计所规定的三种基本控制结构是顺序结构、选择结构、循环结构结构。
2.输出字段宽为4的十进制数应使用M,字段宽度为6的十六进制数应使用 %6x ,八进制整数应使用%6o ,字段宽度为4的字符应使用 L ,字段宽度为8,保留3位小数的实数应使用 %8.3f ,字段宽度为5的字符串应使用 %5s 。//p37
3.若有定义:int x=0;,则执行赋值语句:x=(x=3+5,x*5);后,变量x中的值是__40__。
C.2 , E
D.输出结果不确定
D.不确定的值