第二章 基本语法规则
2.1数据类型、运算符、表达式
一、选择题
1.C语言中确定数据存储的格式、范围与有效位数的依据是
A.数据正负 B.数据范围 C.数据类型 D.数据大小
2.一般说在C语言中字符型数据、整型数据、单精度浮点型及双精度浮点型数据的存储长度分别为
A.2、4、8、1 B.4、2、1、8
C.1、2、4、8 D.1、4、2、8
3.转义字符“\t”表示
A.横向跳格,即跳到下一个输出区 B.竖向跳格
C.退格 D.换行
4.以下叙述不正确的是
A.C语言中的常量分别为整型常量、浮点常量、字符常量、符号常量
B.整型常量在C语言中有十进制、八进制和十六进制等3种不同形式
C.C语言中,变量必须先定义后使用
D.变量被定义后,变量名是固定的,变量的值在程序运行过程中是不可以随时被改变的
5.以下叙述不正确的是
A.C语言中的字符常量是用一对单引号(' ')括起来的单个字符
B.字符串常量是用一对双引号(“ “)括起来的字符序列
C.字符型数据与整型数据之间不可以通用。
D.为了便于判断字符串是否结束,系统会自动在最后一个字符后面加上一个转义字符(‘\0’)
6.在赋值语句中用来将运算表达式的值赋给变量的“=”称为
A.等号 B.赋值运算符
C.关系运算符 D.逻辑运算符
7.设a=12,n=3,则执行表达式a%=n+3后a的值为
A.3 B.0 C.6 D.12
8.设,A=0,B=1表达式!A&&B的值是
A.1 B.0 C.2 D.3
9.在16位PC机环境下,字符串“A”应占的字节数为
A.2 B.1 C.0 D.4
10.采用十进制数为表示方法,则077是
A.77 B.112 C.63 D.119
11.设x为float型变量,y为double型变量,a为int型变量,b为long型变量,c为char型变量,则表达式x+y*a/x+b/y+c计算结果的类型为
A.int B.long C.double D.char
12.设a,c为int型变量,进行a=(c=5,c+5,c/2)运算后的结果为
A.2 B.5 C.2.5 D.0
13.在C语言中,表示逻辑“真”和“假”的值分别是
A.0、1 B.1、2 C.1、0 D.2、1
14.C语言中表示a小于b或小于c的表达式为
A.a<b<c B.a<b||b<c
C.a<b||a<c D.a<b&&a<c
15.C语言中表示a和b都大于c的表达式为
A.a>c&&b>c B.a>c||b>c
C.a>b||b>c D.a>b&&b>c
16.a和b中有一个小于c的表达式为
A.a<c||b<c B.a<c&&b<c
C.a<b||b<c D.a<b&&b<c
17.若有a=2,b=3,c=4,则表达式a= =3和a=3的值分别为
A.0和0 B.1和3 C.3和3 D.0和3
18.表达式!(1<3)||(2>5)和!(4<=8)&&(7>=3)的值分别为
A.1和0 B.0和0 C.0和1 D.1和1
*19.设a=4,计算表达式a=1,a+5,a++的值为
A.1 B.5 C.10 D.2
20.设x=4,y=8,计算表达式y=(x++)*(--y)的值为
A.28 B.32 C.40 D.35
21.设有语句char a=`\72`;则变量包含的字符数为
A.3 B. 2个 C.1 D.4
22.设有说明语句:char a= '\123abc';则变量a包含的字符数为
A.4 B.6 C.5 D.7
23.下列叙述正确的是
A.赋值语句中的“=”是表示左边变量等于右边表达式
B.赋值语句中左边的变量值不一定等于右边表达式的值
C.赋值语句是由赋值表达式加上分号构成的
D.x+=y;不是赋值语句
24.下列选项中,可以作为C语言标识符的是
A.3stu B.#stu C.stu3 D.stu.3
25.下列选项中,不可以作为C语言标识符的是
A.num B.turbo_c C.print D.student3
26.下列选项中,不可以作为C语言常量的是
A.”abc” B.1/2 C.‘M’ D.13.8e
27.下列选项中,正确的一组语句是
A.char a; B.char b; C.char c; D.char d;
a=’M’; b=’55’; c=”M”; d=”55”;
28.已知字母’b’的ASCII码值为98,如ch为字符型变量,则表达式ch=’b’+’5’-‘2’的值为
A.e B.d C.102 D.100
29.下列不是字符串常量的是
A.“1818" B.“aads” C._abdc D.“a”
30.在C语言中,int、char和short三种类型数据所占用的内存是
A.均为2个字节 B.由用户定义
C.是任意的 D.由所用机器的机器字长决定
31.设int类型的数据长度为2个字节,则unsigned int类型数据的取值范围是
A.0至255 B.0至65535
C.-32768至32767 D.-256至255
32.以下是不正确的转义字符是
A.‘\\’ B.‘\’’ C.‘\081’ D.‘\0’
33.在C语言中,char型数据在内存中的存储形式是
A.原码 B.补码 C.ASCII码 D.反码
*34.若x为unsigned int变量,则执行以下语句后的x值为。
x=65535;printf(“%d\n”,x);
A.65535 B.1 C.-1 D.无定值
35.ex+SIN(x2)/(2a)的算法语言表达式是
A.ex+sin(x*x)/(2*a) B.exp(x)+sin(x*x)/(2*a)
C.ex+sin(x*x)/2*a D.EXP(X)+SIN(X*X)/(2*A)
36.设x和y均为int型变量,则执行以下语句后的输出为
x=15;y=5;printf(“%d\n”,x%=(y%2));
A.0 B.1 C.6 D.12
37.设i=5;执行i*=i++;后,i的值为。
A.25 B.26 C.5 D.6
38.设a的值为12,则执行表达式a+=a-=a后a的值为
A.0 B.12 C.10 D.24
39.若x为int型变量,则执行x=6; x+=x-=x*x; 语句后,x的值为
A.36 B.-60 C.60 D.-24
40.若有说明语句int i,j;且i的值为6,则执行语句j=(++i)+(i++);后j的值是
A.4 B.14 C.13 D.15
41.关系运算中用来表示等于、不等于、小于的符号分别为
A.=,=< B.==,=< C.=,<>,< D.= =,!=,<
42.设a=2, b=7.5, c=-3.6,以下哪两个逻辑表达式的值相同
A.1) ‘a’>‘c’||‘x’<‘y’ 2) b-a<=c/2&&c=-3.6
B.1) ‘a’>‘c’&&‘x’<‘y’ 2) a-7<b-6.5
C.1) ‘a’>‘c’||‘x’>‘y’ 2)‘a’<‘c’&&a>b
D.1) ‘a’>‘c’&&‘x’>‘y’ 2)‘a’<‘c’||a>c
43.逻辑运算中的非、与、或的运算次序是
A.&&,||,! B.&&,!,|| C.!,||,&& D.!,&&,||
44.若w=1,x=2,y=3,z=4,则条件表达式w<x?w:y<z? y:z的结果为。
A.4 B.3 C.2 D.1
*45.表达式0x08>>2的值为
A.2 B.8 C.1 D.4
*46.定义:int x=5,y=1;表达式x&y==y?x|y:x∧y的值为。
A.1 B.0 C.4 D.5
47.若有定义:int a=10,b=9,c=8;执行下面两条语句c=(a-=(b-5));c=(a%11)+(b=3);后,变量b的值为
A.9 B.4 C.3 D.2
48.设x,y,z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为
A.52 B.32 C.16 D.4
49.使条件表达式(year%4==0&&year%100!=0)||(year%400==0)结果为假的值是
A.1950 B.2000 C.1996 D.2004
50.已知int i=1,j;执行语句j=-i++;后,i 和j的值分别为
A.1,1 B.1,-1 C.2,-1 D.2,-2
二、阅读程序,写出程序的运行结果。
1. main( )
{ char c1=’6’,c2=’0’;
printf(“%c,%c,%d\n”,c1,c2,c1-c2);
}
A.因程序格式不合法,提示出错信息。 B.6,0,6
C.6,0,7 D.6,0,5
2. main( )
{ int x=010,y=10,z=0x10;
printf(“%d,%d,%d\n”,x,y,z);
}
A.8,10,16 B.8,10,10 C.10,10,10 D.10,10,16
3. main()
{ int a,b,c;
{ int a,b,c;
a=b=c=1;
b=b+c;
a=a+b;
printf(“%d\n”,(c<b)?b:a);
}
A.3 B.1 C.2 D.4
4. #include <stdio.h>
main()
{ int x=1,y=1,z=1;
y=y+z;
x=x+y;
z=x<y?y:x;
printf (“%d\n”,z>=y&&y>=x);
}switch case判断字符串
A.0 B.1 C.3 D.2
5. #include <stdio.h>
#include <math.h>
main()
{ int a=1, b=4, c=2;
float x=5.5, y=9.0, z;
z=(a+b)/c+sqrt((double)y)*1.2/c+x;
printf(“%f\n”,z);
}
A.9.300000 B.9.800000 C.12.900000 D.8.500000
6.main()
{ int x=3; y=z=4;
printf( “%d\n”, z>=y>=x);
}
A.3 B.4 C.1 D.0
7.main()
{ int p=30;
printf("%d\n",(p/3>0 ? p/10:p%3));
}
{ int p=30;
printf("%d\n",(p/3>0 ? p/10:p%3));
}
A.10 B.1 C.3 D.0
8.#include"stdio.h"
main( )
{ int a,b,d=241;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论