一、选择题
1.在C
语言中,下列类型属于构造类型的是
。
A)整型 B)字符型 C)实型 D)数组类型
2.在C
语言中,下列类型属于构造类型的是
。
A)空类型 B)字符型 C)实型 D)共用体类型
3.在C
语言中,下列类型属于构造类型的是
。
A)整型 B)指针类型 C)实型 D)结构体类型
4.在C
语言中,下列类型属于基本类型的是
。
A)整型、实型、字符型 B)空类型、枚举型
C)结构体类型、实型 D)数组类型、实型
5.下列类型属于基本类型的是
。
A)结构体类型和整型 B)结构体类型、数组、指针、空类型
C)实型 D)空类型和枚举类型
6.下列字符串属于标识符的是
。
A)INT B)5_student C)2ong D)!DF
7.下列字符串属于标识符的是
。
A)_WL B)3_3333 C)int D)LINE 3
8.下列字符串不属于标识符的是
。
A)sum B)average C).day_night D)M.D.JOHN
9.下列字符串不属于标识符的是
。
A)total B)lutos_1_2_3 C)_night D)$ 123
10.下列字符串不属于标识符的是
。
A)_above B)all C)_end D)# dfg
11.C语言中不能用来表示整常数的进制是
。
A)十进制 B)十六进制 C)八进制
D)二进制
12.C语言中能用来表示整常数的进制是
。
A)十进制、八进制、十六进制 B)十二进制、十进制
C)六进制、八进制 D)二进制、十进制
13.在C语言中,回车换行符是
。
A)\n B)\t C)\v D)\b
14.在C语言中,退格符是
。
A)\n B)\t C)\v D)\b
15.在C语言中,反斜杠符是
。
A)\n B)\t C)\v D)\ \
16.在ASCII码表中可以看到每个小写字母的ASCII码比它相应的大写字母的ASCII码
。
A)大32 B)大64 C)小32 D)小64
17.设d为字符变量,下列表达式不正确的是
。
A)d=97 B)d=’a’ C)d=”a” D)d=’g’
18.设d为字符变量,下列表达式正确的是
。
A)d=678 B)d=’a’ C)d=”d” D)d=’gjkl’
19.10+’a’+1.5-567.345/’b’的结果是
型数据。
A)long B)double C)int D)unsigned float
20.语句int
i=3;k=(i++)+(i++)+(i++);执行过后k的值为
,i的值为
。
A)9,6 B)12,5 C)18,6 D)15,5
21.如果i=3,则k=(i++)+(++i)+(i++)执行过后k的值为
,i的值为
。
A)12,6 B)12,5 C)18,6 D)15,5
22.如果i=3,则k=(++i)+(++i)+(i++)执行过后k的值为
,i的值为
。
A)15,6 B)12,5 C)18,6 D)15,5
23.如果i=3,则k=(++i)+(++i)+(++i)执行过后k的值为
,i的值为
。
A)9,6 B)12,5 C)18,6 D)15,5
24.如果int
i=3,则printf(“%d”,-i++)的结果为
,i的值为
。
A)-3,4 B)-4,4 C)-4,3 D)-3,3
25.如果int i=3,int
j=4,则k=i+++j执行之后k,i和j的值分别为
。
A)7,3,4 B)8,3,5 C)7,4,4 D)8,4,5
26.已知在ASCII字符集中,数字0的序号为48,下面程序的输出结果为
。
main()
{char x,y;
x=’0’;y=’9’;
printf(“%d,%d\n”,x,y);
}
A)因输出格式不合法,输出错误信息 B)48,57
C)0,9 D)48,58
27.已知在ASCII字符集中,字母A的序号为65,下面程序的输出结果为
。
main()
{char c=’A’;int i=10;
c=c+10;
i=c%i;
printf(“%c,%d\n”,c,i);
}
A)75,7 B)75,5
C)K,5 D)因存在非图形字符,无法直接显示出来
28.已知在ASCII集中,字母A的序号为65,下面程序的输出结果为
。
main()
{char c1=’B’,c2=’Y’;
printf(“%d,%d\n”,++c1,--c2);
}
A)输出格式不合法,输出错误信息 B)67,88
C)66,89 D)C,X
29.C语言中最简单的数据类型包括
。
A)整型,实型,逻辑型 B)整型,实型,字符型
C)整型,字符型,逻辑型 D)整型,实型,逻辑型,字符型
30.C语言中,运算对象必须是整型数的运算符是
。
A)% B)\ C)% 和
\ D)**
31..下列常数中,合法的C
常量是
。
A)-0. B)’105’ C)’AB’ D)3+5
32.下列常数中,合法的C
常量是
。
A)”x-y” B)’105’ C)’Be’ D)7ff
33.下列常数中,合法的C
常量是
。
A)’\n’ B)e-310 C)’DEF’ D)’1234’
34.下列常数中,不合法的C
常量是
。
A)-0x2al B)lg3 C)’[’ D]”CHINA”
35.下列常数中,不合法的C
常量是
。
A)-0x3bl B)123e+2.3 C)’}’ D)6e+7
36.下列符号中,可以作为变量名的是
。
A)+a B)12345e C)a3B D)5e+0
37.下列符号中,可以作为变量名的是
。
A)+c B)*X C)_DAY D)next day
38.下面程序的输出结果是
。
main()
{int x;
x=-3+4*5-6;printf(“%d”,x);
x=3+4%5-6; printf(“%d”,x);
x=-3*4%-6/5; printf(“%d”,x);
x=(7+6)%5/2; printf(“%d”,x);
}
A)11 1 0
1 B)11 –3 2 1
C)12 –3 2
1 D)11 1 2 1
39.下面程序的输出结果是
。
mian()
{int x=2,y=0,z;
x*=3+2; printf(“%d”,x);
x*=y=z=4; printf(“%d”,x);
}
A)8
40 B)10 40
C)10,4 D)8,4
40.下面程序的输出结果是
。
main()
{int x=2,y=0,z;
x+=3+2; printf(“%d”,x);
x*=y=z=4; printf(“%d”,x);
}
A)7
28 B)无法计算 C)7,4 D)8,4
41.下面程序的输出结果是
。
main()
{int x=4,y=0,z;
x*=3+2; printf(“%d”,x);
x*=y= =(z=4); printf(“%d”,x);
}
A)14
40 B)20
0 C)20
4 D)14 4
42.下面程序的输出结果是。
main()
{int i,j;
i=16;j=(i++)+i;printf(“%d”,j);
i=15;printf(“%d %d”,++i,i);
}
A)32 16
15 B)33 15 15
C)34 15
16 D)34 16 15
43.在C语言中,以下合法的字符常量是
。
A)'\084' B)'\x43' C)'0' D)"\0"
44.若已定义X和Y为double类型,则表达式:x=1,y=x+3/2的值为
。
A)1 B)2 C)2.0 D)2.5
45.下列程序的执行结果是
。
#include
#define sum 10+20
main()
{
int b=0,c=0;
b=5;
c=sum*b;
printf("%d",c);
}
A)100 B)110 C)70 D)150
46..下列程序的执行结果是
。
#include
#define sum(10+20)
mian()
{
int a=0,b=0,c=0;
a=sum;
b=5;
c=sum*b;
printf("%d",c);
}
A)100 B)110 C)70 D)150
47.表达式(int)2.1416的值为
。
A)2 B)2.1 C)0 D)3
48.表达式(double)(20/3)的值为
。
A)6 B)6.0 C)2 D)3
49. 在下面几组数据类型中,
全是基本数据类型是哪一组
。
A)整型 实型
字符型 B)整型 数组 指针
C)数组 结构体
共用体 D)指针 逻辑型 空类型
50. 以下说法正确的是
。
A)在C程序中, 每行只能写一条语句.
B)在C程序中, 无论是整数还是实数, 其存放形式都一致.
C)在C程序中, %是只能用于整数运算的运算符.
D)在C程序中, 变量可以不必先定义就可使用.
51. 假设所有变量均为整型, 则表达式( a=5, b=2, a++, a+b ) 的值是
。
A)8 B)7
C)6 D)5
52. 若有以下定义, 则正确的赋值语句为
。
int a, b ;
float x;
A)a=1,
b=2, B)b++;
C)a=b=5 D)b= int (x) ;
53.
.C语言规定标识符由
等字符组成.
A)字母 数字 下划线 B)中划线 字母 数字
C)字母 数字 逗号 D)字母 下划线 中划线
54. 若有如下定义:int a=2,b=3;
float x=3.5,y=2.5; 则表达式:
(float)(a+b)/2+(int)x%(int)y的值是
。
A)2.500000 B)3.500000 C)4.500000 D)5.000000
55. 以下表达式: 2+’a’+i*f,
其中i为整型变量,f为float型变量,则表达式的最终数据类型为
。
A)int B)float C)char D)double
56. 若有:int
a,b=2;则a=(b*100+1.5,100)则a的值是
。
A) 100 B) 100.5 C)200.5 D)
300.5
57. 有如下语句:
printf(“%s,%5.3s\n”,“COMPUTER”,“COMPUTER”);
执行语句后的最终结果为
。
A)COMPUTER ,CMP . B)COMPUTER, CMP.
C)COMPU, CMP. D)COMPU,
CMP
58. 已知ch是字符型变量,下面不正确的赋值语句
是:。
A)ch=‘\0’ B)ch=‘a+b’
C)ch=‘7’+‘9’
D)ch=7+9
59. 若x和y都为float型变量,且x=3.6, y=5.8
执行下列语句后输出结果为:
。
printf(“%f”,(x,y));
A)3.600000 B)5.800000
C)3.600000,5.800000 D)输出符号不够,输出不正确值
60.设变量a是整型,变量f是实型,变量I是双精度型,则表达式 10 + ‘a’+I * f
值的数据类型:
。
A)int B)float C)double D)不确定
61.
已知字母A的ASCII码为十进制65,下面程序段的运行结果为:
。
char ch1,ch2;
ch1= ‘A’+5-3; ch2=
‘A’+6-3;
printf(“%d, %c\n”, ch1,ch2);
A)67,
D B)B,
C C)C,
D D)不确定值
62.以下不正确的C语言标识符是
。
A)ABC B)abc C)a_bc D)ab.c
63.设x、y均为float型变量,则以下不合法的赋值语句是
。
A) + +
x; B)y = ( x%2 ) / 10;
C)x * = y +
8; D)x = y = 0;
64. 若有说明语句:char c= ‘\64’ ;
则变量C包含:
。
A)1个字符 B)2个字符
C)3个字符 D)说明不合法,C值不确定。
65. 表达式
18/4*sqrt(4.0)/8值的数据类型为
。
A)int B)float C)double D)不确定
66.
设整型变量a值为9,则下列表达式中使b的值不为4的表达式:
。
A)b=a/2 B)b=a%2
C)b=8-(3,a-5) D)b=a>5?4:2
67.
设有以下定义,则能使值为3的表达式是:
。
int k=7, x=12;
A)x%=(k%=5) B)x%=(k-k%5)
C)x%=k D)(x%=k)-(k%=5)
68.
以下选项中是C语言的数据类型的是:
。
A)复数型 B)逻辑型
C)双精度型 D)集合型
二、填空题
1.C语言的数据类型有四大类,分别是
、
、
、
。
2.C语言数据类型中构造类型包括三种,他们是
、
、
。
3.C语言基本数据类型包括
、
、
、
。
4.在C语言中,程序运行期间,其值不能被改变的量叫
。
5.在C语言中,常量有不同的类型,包括
、
、
和
等。
6.符号常量是指
。
7.整型常量和实型常量也称为
,它们有正负之分。
8.在C语言中,在习惯上符号常量名用
,变量用
。(大写或小写)
9.在C语言中,变量是
。
10.变量也有不同类型,如
、
和
等。
11.C语言在定义变量的同时说明变量的
,系统在编译时就能根据变量定义及其
为它分配相应数量的存储空间。
12.在C语言中,用来标识变量名,符号常量名,函数名,数组名,类型名,文件名的有效字符序列称为
。
13.在C语言中,标识符只能由
、
和
三种字符组成,且第一个字符必须
或
。
14.在
C语言中,要求对所有甬道的变量,遵循先定义后 的原则。
15.可以用来表示C的整常数的进制是
、
、
。
16.整型变量可分为
、
、
、
四种,分别用
。
17.在一个整常量后面加一个字母
和
,则认为是long int 型常量。
18.在C语言中,实数有两种表现形式,是
和
。
19.实型变量分为
和
,即float和double型。
20.C的字符常量是用
括起来的一个字符。
21.在一个变量定义语句中可以同时定义多个变量,变量之间用
隔开。
22.C语言中规定,在变量定义的同时也可以给变量赋初值,叫做
。
23.下面的程序
mian()
{printf("abc\tde\rfg\n");
printf("h\ti\b\bjk");
}
运行结果是
。
24.int型的取值范围是
。
25.在C语言中,字符型数据和整型数据之间可以通用,一个字符数据既能
输出,也可以
输出。
26.下面的程序
main()
{char c1,c2;
c1='a';c2='b';
c1=c1-32;c2=c2-32;
printf("%c %c",c1,c2);
}
运行结果为
。
27.在ASCⅡ代码表中可以看到每一个小写字母比相应的大写字母的ASCⅡ代码大
。
28.C的字符串常量是用
括起来的字符序列。
29.在C
语言中,系统在每一个字符串的结尾自动加一个“字符串结束标志符”即
,以便系统据此数据判断字符串是否结束。
30.表达式10+'a'+1.5-0.5*'b'的结果
。
31.表达式10+'a'+1.5-567.345/'b'的结果是
型数据。
32.
在TURBO中,单精度实数的取值范围在
之间。
33.在C语言中,加减乘除这些运算符需要两个运算对象,称为
运算符。
34.在C语言中,算术运算符的结合性是
。
35.下面的程序
mian()
{float x;int i;
x=3.6;i=(int)x;
printf("x=%f,i=%d",x,i);
}
运行结果为
。
36.如果int
i=3,则printf("%d",-i++)执行后输出是
,i的结果是。
37.在C语言中,表达式的类型有
,
,
,
,
,
。
38.逗号表达式的形式如下:
表达式1,表达式2
则逗号表达式的结果是
的值.
39.表达式x=(a=3,6*3)和表达式x=a=3,6*a分别是
表达式和
表达式,两个表达式执行完的结果是
和
.执行后X的值分别是
,
.
40.main()
{int i,j,m,n;
i=8;j=10;
m=++i;n=j++;
printf("%d,%d,%d,%d",i,j,m,n);
}
运行后i,j,m,n的值是
.
41.在C语言中的运算符优先级最小的是
运算符.
42.在C语言中,可以利用
,将一个表达式的值转换成指定的类型。