小学C语言基础试题Word文件下载.docx
《小学C语言基础试题Word文件下载.docx》由会员分享,可在线阅读,更多相关《小学C语言基础试题Word文件下载.docx(16页珍藏版)》请在冰点文库上搜索。
A.必须在最开始
B.必须在系统调用的库函数的后面
C.可以任意
D.必须在最后
10、一个C语言程序是由B
A.一个主程序和若干子程序组成
B.函数组成
C.若干过程组成
D.若干子程序组成
二、填空题:
1、函数体用____{___开始,用____}__结束。
2、C源程序的基本单位是____函数__________
3、一个C源程序中至少应包括一个____MAIN函数_________
4、在一个C源程序中,注释部分两侧的分界符分别为___/*_____和_____*/___
三、程序设计题:
(这两个程序设计题上课讲过我就不做了,自己写
吧)
1、编写一个C程序,输出以下信息:
*********************
Verygood!
2、编写一个程序,输入a,b,c三个值,输出其中最大者。
第2章程序设计的灵魂——算法
1、将三个数排序需要比较__B____次。
A.2
B.3
C.4
D.不确定
2、算法的表示方法有___A_____。
A.自然语言,传统流程图,N-S流程图,伪代码,计算机语言
B.高级语言,汇编语言,机器语言
C.C语言,QBASIC语言,InterDev
D.图形图像法,描述法,编程法
二、问答题:
1、什么是结构化的算法,为什么要提倡结构化的算法,
2、算法有哪些特性,
3、什么叫算法,为什么要提倡结构化算法,
第3章数据类型、运算符和表达式
1、设intb=2;
表达式b/(b*2)的值是____A____.
A.0
B.0.5
C.0.500000
D.0.000000
2、设有如下定义:
inta=1,b=2,c=3,d=4,m=2,n=2;
则执行表达式:
(m=a<
b)&
&
(n=c>
d)后,m的值为__A___。
A.1
B.2
C.3
D.0
3、设有a=b=c=2,求表达式a+++b+++c++的结果是___A____。
A.6
B.9
C.8
D.表达式出错
4、表示关系X<
=Y<
=Z的C语言表达式为___A_____。
A.(X<
=Y)&
(Y<
=Z)
B.(X<
=Y)AND(Y<
C.(X<
=Z)
D.(X<
5、选出运行结果为4的表达式(C);
A.inti=0,j=1;
(i=3,(++j>
+1))
B.inti=0,j=1;
(j==1)?
(i=1):
(i=3)
C.inti=1,j=1;
i+=j+=2;
D.inti=1,j=0;
j=i=((i=3)*2);
6、表达式(a=3*5,a*5),a+5的值是多少(B)
A.20
B.80
C.不能确定
D.15
7、设有整型变量a,b,c,它们的初值是1运行表达式:
++a||++b&
++c后,a,b,c的值分别是:
___A_____。
(这个最好电脑上通过一下)
A.2,1,1
B.2,2,1
C.1,2,1
D.1,1,2
8、下面的表达式中__A__满足:
当x为偶数时值为“真”,为奇数时值为“假”
A.x%2==0
B.!
x%2!
=0
C.2*x/2-x==0
D.!
(x%2)
9、C语言的对语句中用作判断的表达式一般为__E__
A.关系表达式
B.逻辑表达式
C.算术表达式
D.逻辑表达式和关系表达式
E.关系或逻辑表达式
10、若已定义x和y为double型,则表达式:
x=1,y=x+3/2的值是
(D)
C.2.0
D.2.5
11、若有以下定义:
chara;
intb;
floatc;
doubled;
则表达式a*b+d-c值的类型为__D____.
A.float
B.int
C.char
D.double
12、以下定义和语句:
charcl='
b'
c2='
e'
;
printf(″,d,,c\n″,c2,c1,c2,'
a'
,'
A'
);
则输出结果是:
___B____.
A.2,M
B.3,E
C.2,E
D.输出项与对应的格式控制不一致,输出结果不确定
13、语句:
printf("
%d\n"
12&
12);
的输出结果是___B_____.
A.12
B.1
C.24
14、设A=3,B=4,执行
%d,%d"
(A,B),(B,A));
的输出是___B___.
A.3,4
B.4,3
C.3,3
D.4,4
15、若x和y都是int型变量,x=100,y=200,且有下面的程序片段:
%d"
(x,y));
上面程序片段的输出结果是A
A.200
B.100
C.200100
D.输出格式符不够,输出不确定的值
16、表达式:
10~=9的值是__D_
A.true
B.非零值
C.0
D.1
17、请读程序:
main()
{intA;
floatB,C;
scanf("
%2d%3f%4f"
&
A,&
B,&
C);
\nA=%d,B=%f,C=%f\n"
A,B,C);
}
若运行时从键盘上输入9876543210(表示回车),则上面程序的输出结
果是B
A.A=98,B=765,C=4321
B.A=10,B=765.000000,C=4321.000000
C.A=98,B=765.0,C=4321.0
D.以上答案都不正确
18、执行程序段charstr[20]={'
'
c'
\o'
};
intlen=strlen(str);
变量len的值为(C)
B.4
D.3或4或20
19、若x,i,j和k都是int型变量,则计算下面表达式后,x的值为C
x=(i=4,j=16.k=32)
A.4
B.16
C.32
D.52
20、下列四组选项中,均不是C语言关键字的选项是A
A.defineIFtype
B.getccharprintf
C.includescanfcase
D.whilegopow
21、下列四个选项中,均是C语言关键字的选项是B
A.autoenuminclude
B.switchtypedefcontinue
C.signedunionscanf
D.ifstructtype
22、C语言中的标识符只能由字母,数字和下划线三种字符组成,且
第一个字符C
A.必须为字母
B.必须为下划线
C.必须为字母或下划线
D.可以是字母,数字和下划线中任一字符
23、下面四个选项中,均是不合法的浮点数的选项是B
A.160.0.12e3
B.1232e4.2.e5
C.-.18123e40.0
D.-e3.2341e3
24、已知各变量的类型说明如下:
A
intk,a,b;
unsignedlongw=5;
doublex=1.42;
则以下不符合C语言语法的表达式是
A.x%(-3)
B.w+=-2
C.k=(a=2,b=3,a+b)
D.a+=a-=(b=4)*(a=3)
25、以下不正确的叙述是D
A.在C程序中,逗号运算符的优先级最低
B.在C程序中,APH和aph是两个不同的变量
C.若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变
D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值
26、若有定义:
inta=7;
floatx=2.5,y=4.7;
则表达式x+a%3*(int)(x+y)%2/4的值是A
A.2.500000
B.2.750000
C.3.500000
27、设变量a是整型,f是实型,i是双精度型,则表达式10+'
+i*f值的数据类型为C
A.int
B.float
C.double
28、以下关于运算符优先顺序的描述中正确的是C
A.关系运算符<
算术运算符<
赋值运算符<
逻辑运算符
B.逻辑运算符<
关系运算符<
赋值运算符
C.赋值运算符<
逻辑运算符<
算术运算符
D.算术运算符<
逻辑运算符
29、若有条件表达式(exp)?
a++:
b--,则以下表达式中能完全等价于表达式(exp)的是B
A.(exp==0)
B.(exp!
=0)
C.(exp==1)
D.(exp!
=1)
30、设intx=1,y=1;
表达式(!
x||y--)的值是B
C.2
D.-1
1、字符串“Thisisastring"
的存储形式为___顺序存储_______。
2、写出下问表达式运算后a的值设原来a=12
1)a+=a24
2)a-=a0
3)a/=a+a0
4)a+=a-=a,,a0
3、求下面算术表达式的值
1)x+a%3*(int)(x+y)%2/42.5
设x,2.5,a=7,y,4.7
2)(float)(a+b)/2+(int)x%(int)y3.5
设a=2,b=3,x=3.5,y=2.5
4、写出该程序运行的结果。
#include
voidmain()
{inti,j,k=10;
i=(j=k)>
0;
j=i==j;
printf(``%2d,%2d\n``,i,j);
10
k=!
i==++j;
%2d,%2d,%2d\n"
i,j,k);
}110
5、main()
{charst='
inti=10;
st=st+i;
i=st%i;
%C,%d\n"
st,i);
已知字母A的ASCII码为65
结果:
__K,5__
6、假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为_____9_______
7、C语言中的标识符只能由三种字符组成,它们是___字母____,____数字__和___下画线_______
8、已知字母a的ASCII码为十进制数97,且设ch为字符型变量,
则表达式ch='
+'
8'
-'
3'
的值为___f_______
9、若x和y都是double型变量,且x的初值为3.0,y的初值为2.0,则表达式pow(y,fabs(x))的值为____8.0_____
10、若有定义:
inte=1,f=4,g=2;
floatm=10.5,n=4.0,k;
则计算赋值表达式
k=(e+f)/g+sqrt((double)n)*1.2/g+m后k的值是___13.7_________
第4章顺序程序设计
1、输入一个华氏温度,要求输出摄氏温度。
计算公式为:
c=5/9(F-32),
以下程序正确的是(B)
A.main(){floatc,F;
scanf("
%f,%f"
c,&
F);
c=5/9*(F-32);
printf("
摄氏温度是:
%f\n"
c);
}
B.main(){floatc,F;
c=5*(F-32)/9;
C.main(){floatc,F;
c=5%9*(F-32);
D.main(){floatc,F;
c=5.0/9.0(F-32);
2、以下程序的输出结果是C
main()
{
inta=12,b=12;
%d%d\n"
,--a,++b);
A.1010
B.1212
C.1113
D.1110
3、有如下程序
main0
inty=3,x=3,z=1;
(++x,y++),z+2);
运行该程序的输出结果是D
A.34
B.42
C.43
D.33
4、能正确表示逻辑关系:
"
a?
=10或a?
0"
的C语言表达式是D
A.a>
=10ora<
=0
B.a>
=0||a<
=10
C.a>
=10&
a<
D.a<
=0||a>
=10
5、下列程序的输出结果是C
doubled=3.2;
intx,y;
x=1.2;
y=(x+3.8)/5.0;
d*y);
A.3
B.3.2
D.3.07
1、从键盘输入一个大写字母,要求改用小写字母输出,程序如下办
{charc1,c2;
(1)___scanf(“%c”,&
c1);
______;
printf("
%c,%d\n"
c1,c1);
(2)___c2=c1+32;
__________;
c2,c2);
2、以下程序不用第三个变量,实现将两个数进行对调操作:
{inta,b;
scanf("
%d%d"
&
a,&
b);
a=%db=%d\n"
a,b);
a=(_a+b_________);
b=(_a-b_______);
a=(____a-b_____);
printf(