A.当
x<0
时整个循环结束
B.x>=0
时什么也不输出
C.cout
永久也不履行
D.最多同意输出
100个非负整数
35.定义一个函数实现互换x和y的值,并将结果正确返回。
能够实
现此功能的是。
A.swap(intx,inty){intt;t=x;x=y;y=t;}
B.swap(int*x,int*y){intt;t=x;x=y;y=t;}
C.swap(int*x,int*y){intt;t=*x;*x=*y;*y=t;}
D.swap(int*x,int*y){int*t;t=x;x=y;y=t;}
36.如有代数式3ae/bc,则不正确的C语言表达式是
A.a/b/c*e*3B.3*a*e/b/c
C.3*a*e/b*cD.a*e/c/b*3
。
37.以下表达式值为3的是
A.16-13%10B.2+3/2
C.14/3-2D.(2+6)/(12-9)
。
38.设有说明语句,intk=7,x=12;则以下能使值为
3的表达式是
。
A.x%=(k%=5)
B.x%=(k-k%5)
C.x%=k-k%5
D.(x%=k)-(k%=5)
39.如有条件表达式(exp)?
A++:
b--,则以下表达式中能完整等价于表
达式(exp)的是。
A.(exp==0)B.(exp!
=0)C.(exp==1)D.(exp!
=1)
40.设有以下语句:
typedefstructREC
{charc;inta[4];}REC1;
则下边表达中正确的选项是。
A.能够用REC定义结构体变量
B.REC1是structREC种类的变量
C.REC是struct种类的变量
D.能够用REC1定义结构体变量
41.以下对于结构的语法错误的选项是
A.结构是由用户自定义的一种数据种类
B.结构中可设定若干个不一样数据种类的成员
C.结构中成员的数据种类能够是另一个已定义的结构
D.在定义结构时,能够为成员设置默认值
42.以下对于结构体的表达中,错误的选项是。
A.结构体是一种可由用户结构的数据种类
B.结构体中的成员能够拥有不一样的数据种类
C.结构体中的成员不可以够与结构体变量同名
D.结构体中的成员能够是指向自己结构的指针种类
43.说明一个结构体变量时,系统分派给它的内存是。
A.各成员所需内存量的总和
B.结构中第一个成员所需内存量
C.成员中占内存量最大者所需的容量
D.结构中最后一个成员所需内存量
44.设有以下说明语句:
structstu
{inta;floatb;}stutype;
则下边的表达不正确的选项是。
A.struct是结构体种类的重点字
B.structstu是用户定义的结构体种类名
C.stutype是用户定义的结构体种类名
D.a和b都是结构体成员名
45.如有以下定义
structdata
{intx,y;}
test1={10,20},test2;
则以下赋值语句中错误的选项是
。
A.test2=test1;B.test2.x=test1.x;
C.test2.x=test1.yD.test2={30,40};
46.以下对结构体变量stu1中成员age的非法引用是
structstudent
{intage;intnum;}stu1,*p;
p=&stu1;
。
A.stu1.ageB.student.ageC.p->ageD.(*p).age
47.当说明一个共用体变量时,系统分派给它的内存是。
A.各成员所需内存量的总合
B.结构中第一个成员所需内存量
C.成员中占内存量最大者所需的容量
D.结构中最后一个成员所需内存量
48.以下对C语言中共用体种类数据的表达正确的选项是。
A.能够对共用体变量名直接赋值
B.一个共用体变量中能够同时寄存其全部成员
C.一个共用体变量中不可以同时寄存其全部成员
D.共用体种类定义中不可以出现结构体种类的成员
49.如有以下定义和语句:
uniondata
{inti;charc;floatf;}a;intn;
则以下语句正确的选项是。
A.a=5;
B.a={2,’a’,1.2}
C.printf(“%d\n”,a);
D.n=1;
50.设有以下说明,则下边不正确的表达是。
union
{inti;charc;floatf;}un;
A.un所占的内存长度等于成员f的长度
B.un的地点和它的成员地点都是同一地点
C.un能够作为函数参数
D.不可以对un赋值,但能够在定义un时对它初始化
51.C语言共用体种类变量在程序运转时期
A.全部成员向来驻留在内存中
B.只有一个成员驻留在内存中
C.部分红员驻留在内存中
D.没有成员驻留在内存中
52.使用typedef定义一个新种类的正确步骤是
。
A.
(2)、(4)、
(1)、(3)B.
(1)、(3)、
(2)、(4)
C.
(2)、
(1)、(4)、(3)D.(4)、
(2)、(3)、
(1)
(1)把变量名换成新种类名
(2)按定义变量的方法写出定义体
(3)用新种类名定义变量
(4)在最前方加上重点则typedef
53.下边对typedef的表达中不正确的选项是。
A.用typedef能够定义各样种类名,但不可以用来定义变量B.用typedef能够增添新种类
C.用typedef不过将已存在的种类用一个新的表记符来代表D.使用typedef有益于程序的通用和移植
54.下边试图为double说明一个新种类名real的语句中,正确立
是。
A.typedefrealdouble;
B.typedefdoublereal;
C.typedefreal=double;
D.typedefdouble=real;
55.下边不可以正确进行字符串赋值操作的是
。
A.chars[5]={“ABCDE”};
B.chars[5]={‘A’,‘B’,‘C’,‘D’,‘E’};
C.char*s;s=“ABCDE”;
D.char*s;scanf(“%s”,s);
56.下边程序段的运转结果是
。
char*s=”abcde”;
s+=2;
printf(“%d”,s);
A.cde
B.字符c
C.字符c的地点
D.无确立的输出结果
57.下边程序段的运转结果是
。
chara[]=”language”,*p;
p=a;
while(*p!
=’u’){printf(“%c”,*p-32);p++;}
A.LANGUAGE
B.languageC.LANG
D.langUAGE
58.有以下说明语句,则以下不正确的表达是
。
chara[]=”Itismine”;
char*p=”Itismine”;
A.a+1表示的是字符t所在储存单元的地点
B.p指向此外的字符串时,字符串的长度不受限制
C.p变量中寄存的地点值能够改变
D.a中只好寄存10个字符
答案:
1.A2.C3.C4.D5.C6.B7.D
8.A
9.B10.A11.B12.C13.D14.B15.C16.B
17.D
18.A19.D
20.A
21.C
22.D23.B
24.A
25.C
26.D27.C
28.C
29.C
30.A
31.D
32.B
33.B
34.D35.C
36.C
37.B
38.
D
39.B
40.D
41.D
42.C
43.A
44.C
45.D46.B47.C
48.C
49.B
50.C
51.B52.C
53.B
54B
55.C
56.C
57.C
58.D
二、填空题
1.
程序的三种基本的控制结构是:
、
、
。
2.
C语言中的每条基本语句以
作为结束符,每条复合语句
以
作为结束符。
3.
关系表达式x+y>5的相反表达式为
。
4.
下边的程序段中循环体的履行次数是
。
a=10;b=0;
do{b+=2;a-=2+b;}while(a>=0);
5.
下边程序段的运转结果为
。
x=2;
do{cout<<“*”--;;x}while(!
x==0);
6.已知inta[3][2]={3,2,1};则表达式“a[0][0]/a[0][1]”的值
是。
7.若用数组名作为函数调用时的实参,则实质上传达给形参的
是
。
8.
假如一个函数无返回值,定义它时函数种类应是
。
9.
预办理命令以
开头。
10.指针种类变量用于储存,在内存中它据有一个
储存空间。
11.赋值语句在履行时先计算,再将该值变换成与一
致的值,并将值赋给左部变量。
12.
在程序中else老是与
的if
配对,而不论程序的书写
格式怎样。
13.
在函数中使用
语句返回值。
14.
函数的形参在未被调用前
分派空间,函数形参的
要
和实参同样。
15.
函数调用一般分
、
,前者的特色是形
参和实参各有独立的储存空间,形参的储存空间在函数被调用时才分
配,形参内容的变化不影响实参,后者的特色是形参实参共用一个储存空间,形参内容的改变能够改变实参值。
16.
在传值调用中,实质是把实参的
传给形参。
17.inta[3]={3};
则a[2]=
。
18.inta[3]={1,3,5,7};则
。
19.
数组由
和
构成,其数组元素的数据种类
是
。
20.
申明长度为
10的float
型数组a,且初始化为0
的语句
是:
。
21.
指针是寄存一个变量的
的变量。
22.
当数组名作形参时,相当于
。
23.
要接见数组元素能够采纳
、
、
。
24.定义一个指针p,它指向一个有6个整型元素的一维数组,定义
语句为。
25.定义一个指针数组p,它有4个元素,每个指针指向一个整型数
据,定义语句为。
26.指针能够指向字符串,在定义一个字符型指针时,能够给它初始
化,目的是把字符串的放入指针变量。
27.
指针能够指向函数,这时它所指的是函数的
。
28.C语言的源程序一定经过
和
后,才能被计算
机履行。
29.C语言源程序言件的后缀是
;经过编译后,生成文件的
后缀是
;经过连结后,生成文件的后缀是
。
30.
在C语言中,表示逻辑“真”值用
。
31.
设y为int型变量,请写出描绘“y是奇数”的表达式
。
32.C语言供给的3种逻辑运算符是
、
和
。
33.若x、y、z均为int型变量,则描绘“x或y中有一个小于z”的
表达式是
。
34.设
c>a
a、b、c均为
||a
int型变量且
!
c>b的值是
a=7.5,b=2,c=3.6,则表达式。
a>b
&&
35.设a、b、c均为b+c/2的值是
int
型变量且。
a=6,b=4,c=2,则表达式
!
(a-b)+c-1
&&
36.
设a、b均为int型变量且a=2,b=4,则表达式!
(x=a)||(y=b)
&&
0的值是
。
37.
设a、b、c均为int型变量且a=1,b=4,c=3,则表达式!
(a
||!
c&&1的值是
。
38.
如有条件“2。
答案:
1.
次序结构
选择结构
循环结构
2.
;}
3.x+y<=5
4.3
5.**
6.1
7.数组首地点
8.内置函数
9.#
10.所指变量的地点
11.表达式的值左部变量种类
12.它前方近来且未配对
13.return
14.不种类及数目
15.传值调用传址调用
16.值
17.0
18.会犯错