C语言程序设计习题集学校题库Word文档下载推荐.docx
- 文档编号:7139619
- 上传时间:2023-05-08
- 格式:DOCX
- 页数:52
- 大小:40.99KB
C语言程序设计习题集学校题库Word文档下载推荐.docx
《C语言程序设计习题集学校题库Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《C语言程序设计习题集学校题库Word文档下载推荐.docx(52页珍藏版)》请在冰点文库上搜索。
的输出结果是____。
28.当调用函数时,实参是一个数组名,则向函数传送的是____。
29.对嵌套子程序调用说法正确的是____。
30.假定int类型变量占用两个字节,其有定义:
intx[10]={0,2,4};
,则数组x在内存中所占字节数是____。
31.请读程序片段(字符串内没有空格):
strlen("
ATS\n012\1\\"
));
32.若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是____。
33.若已定义x和y为double类型,则表达式:
x=1,y=x+3/2的值是____。
34.若有定义:
inta=8,b=5,c;
,执行语句c=a/b+0.4;
后,c的值为___。
35.若有以下程序段,intc1=1,c2=2,c3;
c3=1.0/c2*c1;
则执行后,c3中的值是____。
36.若有以下函数调用语句:
fun(a+b,(x,y),fun(n+k,d,(a,b)));
在此函数调用语句中实参的个数是____。
37.设a.b.c.d.m.n均为int型变量,且a=5.b=6.c=7.d=8.m=2.n=2,则逻辑表达式(m=a>
b)&
&
(n=c>
d)运算后,n的值为____。
38.设inta=12,则执行完语句a+=a-=a*a后,a的值是____。
39.设intb=2;
表达式(b>
>
2)/(b>
1)的值是____。
40.设x.y.z和k都是int型变量,则执行表达式:
x=(y=4,z=16,k=32)后,x的值为____。
41.设有intx=11;
则表达式(x++*1/3)的值是____。
42.设有如下定义:
intx=10,y=3,z;
则语句printf("
z=(x%y,x/y));
的输出结果是____。
43.一个C语言的语句至少应包一个________。
44.在C语言提供的合法的关键字是_______。
45.在C语言中,函数的隐含存储类别是_______。
46.在C语言中,合法的长整型常数是______。
47.在C语言中,若对函数类型未加明显式说明,则函数的隐含类型是____类型。
48.在宏定义#definePI3.14159中,用宏名PI代替一个_____。
49.有如下程序
intrunc(inta,intb)
{return(a+b);
}main0
{intx=2,y=5,z=8,r;
r=func(func(x,y),z);
%\d\n"
r);
}该程序的输出的结果是____
50.有如下程序main0{inti,sum;
for(i=1;
i<
=3;
sum++)sum+=i;
sum);
}该程序的执行结果是____.
51.有如下程序main0{intn=9;
while(n>
6){n--;
printf("
%d"
n);
}}该程序段的输出结果是___.
52.有如下程序main0{intx=1,a=0,b=0;
switch(x){case0:
b++;
case1:
a++case2:
a++;
b++}printf("
a=%d,b=%d\n"
a,b);
}该程序的输出结果是___.
53.有如下程序段int*p,a=10,b=1p=&
a;
a=*p+b;
执行该程序段后,a的值为___.
54.有如下说明inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;
则数值为9的表达式是___.
55.#include"
stdio.h"
voidmain()
{
%d,%3.1f"
(5/2*2),5.0/2*2);
}
以上程序运行结果:
_________
56.#include"
voidmain()
floatx=2.456;
inti;
i=(int)x;
x=%3.1f,i=%d"
x,i);
getch();
运行结果输出:
___________
57.#include"
inta=3,b=4;
a=(a=a+b)+(b=a+b);
a=%d,b=%d"
58.#include"
ints=0,i;
scanf("
&
i);
do
s=s+i++;
while(i<
=100);
i=%d,s=%d"
i,s);
运行后输入:
1____
则输出结果:
_______
59.#include"
200__
60.#include"
chara,b,c;
a=getchar();
b=getchar();
c=getchar();
%c%c%c"
c-32,b-32,a-32);
abcdefg
则输出:
__________
61.#include"
putchar(getchar()+32);
HOWAREYOU?
62.分析以下程序的运行结果。
#include"
{
putchar('
A'
);
putchar(65);
输出:
63.分析以下程序的运行结果。
charc1,c2;
c1=getchar();
c2=getchar();
/*0x41,65,01000001*/
%c,%d"
c1,c2);
输入:
AABB
________
64.#include"
inta=2,b=4;
%d*%d=%-2d<
="
a,b,a*b);
___________________
65.#include"
inta=250;
%o,%d"
a,a);
66.#include"
%x,%X"
67.#include"
inta=12,b=1234;
%3d,%-3d"
68.include"
%-5.3s,%5.3s"
"
CHINA"
二、选择题
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.C语言可执行程序的开始执行点是()。
A.程序中第一条可执行语句B.程序中第一个函数C.程序中的main函数D.包含文件中的第一个函数。
6.C语言提供的合法的数据类型关键字是()。
A.doubleB.shortC.integerD.char。
7.C语言中,运算对象必须是整型数的运算符是()。
A.%B.\C.%和\D.**
8.C语言中函数返回值的类型是由()决定。
A.return语句中的表达式类型B.调用函数的主调函数类型
C.调用函数时临时D.定义函数时所指定的函数类型。
9.C语言中数组名作为参数传递给函数,作为实在参数的数组名被处理为()。
A.该数组的长度。
B.该数组的元素个数。
C.该数组中各元素的值。
D.该数组的首地址。
10.C语言中数组下标的下限是()。
A.1B.0C.视具体情况D.无固定下限。
11.C语言中提供的合法关键字是()。
A.swithB.cherC.caseD.default。
12.C语言中文件的存取方式是()。
A.顺序存取B.随机存取C.顺序存取、随机存取均可D.顺序存取、随机存取均不可。
13.C语言中最简单的数据类型包括()
A.整型、实型、逻辑型B.整型、实型、字符型C.整型、字符型、逻辑型
D.整型、实型、逻辑型、字符型。
14.sizeof(float)是()
A.一种函数调用B.一个不合法的表示形式C.一个整型表达式D.一个浮点表达式。
15.x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是()。
A.inputx,y,z;
B.scanf("
%d%d%d"
x,&
y,&
z);
C.scanf("
x,y,z);
D.read("
16.表达式:
=9的值是()。
A.trueB.非零值C.0D.1
17.表示关系x<
=y<
=z的c语言表达式为()。
A.(X<
=Y)&
(Y<
=Z)B.(X<
=Y)AND(Y<
=Z)C.(X<
=Y<
=Z)D.(X<
=Z)
18.程序片段:
的输出结果是()。
A.65536B.0C.有语法错误,无输出结果D.-1。
19.当调用函数时,实参是一个数组名,则向函数传送的是()。
A.数组的长度B.数组的首地址C.数组每一个元素的地址D.数组每个元素中的值.
20.对嵌套子程序调用说法正确的是()。
A.外层子程序可以调用所有的内层子程序B.内层了程序只可以调用包含本身的外层子程序,不可以隔层调用C.外分程序必须能完全套住内分程序D.以上说法均不正确.
21.对于基类型相同的两个指针变量之间,不能进行的运算是()。
A.<
B.=C.+D.-.
22.合法的C语言中,合法的长整型常数是()。
A.'
\t'
B."
A"
C.65D.A.
23.假定int类型变量占用两个字节,其有定义:
,则数组x在内存中所占字节数是()。
A.3B.6C.10D.20.
24.假定有以下变量定义:
intk=7,x=12;
则能使值为3的表达式是()。
A.x%=(k%=5)B.x%=(k-k%5)C.x%=k-k%5D.(x%=k)-(k%=5).
25.请读程序片段(字符串内没有空格):
A.11B.10C.9D.8.
26.请选出合法的C语言赋值语句()。
A.a=b=58B.i++;
C.a=58,b=58D.k=int(a+b);
.
27.若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是()。
A.-3B.9C.-12D.6.
28.若int类型占两个字节,则以下语句输出为()。
intk=-1;
%d,u%\n"
k,k);
A.-1,-1B.-1,65536C.-1,32768D.-1,65535.
29.若变量a是int类型,并执行了语句:
a='
+1.6;
,则正确的叙述是()。
A.a的值是字符CB.a的值是浮点型C.不允许字符型和浮点型相加D.a的值是字符'
的ASCII值加上1。
30.若变量已正确说明为float类型,要通过语句scanf("
%f%f%f"
a,&
b,&
c);
给a赋于10.0,b赋予22.0,c赋予33.0,不正确的输入形式是()。
A.10B.10.0,22.0,33.02233C.10.0D.102222.033.033.
31.若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为()。
A.a<
0B.!
aC.a=0D.a.
32.若已定义x和y为double类型,则表达式:
x=1,y=x+3/2的值是()。
A.1B.2C.2.0D.2.5
33.若有定义:
后,c的值为()。
A.1.4B.1C.2.0D.2.
34.若有定义:
intx,y;
并有以下输入数据(此处<
CR>
代表换行符,/u代表空格):
1u2AuBuC则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是()。
A.scanf("
x=%dy+%d"
y);
B.scanf("
%d%d"
%d%d%c%c%c,&
D.scanf("
%d%d%c%c%c%c%c%c:
c,&
35.若有定义和语句:
chars[10]:
s="
abcd"
;
%s\n"
s);
则结果是(以下u代表空格)()。
A.输出abcdB.输出aC.输出abcduuuuuD.编译不通过.
36.若有以下程序段,intc1=1,c2=2,c3;
则执行后,c3中的值是()。
A.0B.0.5C.1D.2.
37.若有以下定义:
chara;
intb;
floatc;
doubled;
则表达式a*b+d-c值的类型为()。
A.floatB.intC.charD.double.
38.若有以下定义和语句charc1='
b'
c2='
e'
%d,%c\n"
c2-c1,c2-'
a'
+"
则输出结果是()。
A.2,MB.3,EC.2,ED.输出项与对应的格式控制不一致,输出结果不确定.
39.若有以下函数调用语句:
在此函数调用语句中实参的个数是()。
A.3B.4C.5D.6.
40.若执行下面的程序时从键盘上输入3和4,则输出是()。
main(){inta,b,s;
scanf("
b);
s=a;
if(a.
A.14B.16C.18D.20
41.若执行下面的程序时从键盘上输入5,则输出是()。
A.7B.6C.5D.4
main()
{intx;
x);
if(x++>
5)printf("
x);
elseprintf("
x--);
}.
42.以下说法中正确的是:
()
A、C语言程序总是从第一个的函数开始执行B、在C语言程序中,要调用的函数必须在main()函数中定义C、C语言程序总是从main()函数开始执行D、C语言程序中的main()函数必须放在程序的开始部分、
43.设a.b.c.d.m.n均为int型变量,且a=5.b=6.c=7.d=8.m=2.n=2,则逻辑表达式(m=a>
d)运算后,n的值为()。
A.0B.1C.2D.3.
44.有以下函数charfun(char*p){returnp;
}该函数的返回值是:
A、无确切的值B、形参p中存放的地址值C、一个临时存储单元的地址D、形参p自身的地址值、
45.设intb=2;
1)的值是()。
A.0B.2C.4D.8.
46.设a,b和c都是int型变量,且a=3,b=4,c=5,则下列表达式中,值为0的表达式是()A.'
'
B.a<
=bC.a||b+c&
b-cD.!
((a<
B)&
!
C||1).
47.设x.y.z和k都是int型变量,则执行表达式:
x=(y=4,z=16,k=32)后,x的值为()。
A.4B.16C.32D.52.
48.设x=3,y=-4,z=6,写出表达式的结果()。
!
(x>
y)+(y!
=z)||(x+y)&
(y-z)
A.0B.1C.-1D.6.
49.设x和y均为int型变量,则以下语句:
x+=y;
y=x-y;
x-=y;
的功能是()。
A.把x和y按从大到小排列B.把x和y按从小到大排列
C.无确定结果D.交换x和y中的值.
50.设有intx=11;
则表达式(x++*1/3)的值是()。
A.3B.4C.11D.12.
51.设有如下的变量定义:
inti=8,k,a,b;
unsignedlongw=5;
doublex=1,42,y=5.2;
则以下符合C语言语法的表达式是()
A.a+=a-=(b=4)*(a=3)B.x%(-3);
C.a=a*3=2D.y=float(i).
52.设有如下定义:
char*aa[2]={"
ABCD"
};
则以下说法中正确的是()
A.aa数组成元素的值分别是"
和ABCD"
B.aa是指针变量,它指向含有两个数组元素的字符型一维数组
C.aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址
D.aa数组的两个元素中各自存放了字符'
和'
的地址.
53.设有如下定义:
的输出结果是()。
A.1B.0C.4D.3.
54.设有数组定义:
chararray[]="
China"
则数组array所占的空间为()。
A.4个字节B.5个字节C.6个字节D.7个字节.
55.设有说明语句:
chara='
\72'
则变量a()。
A.包含1个字符B.包含2个字符C.包含3个字符D.说明不合法.
56.设有以下语句:
intx=03,y=02,z=01;
那么语句printf("
x|y&
~Z)的执行结果( )。
A.1B.2C.3D.0.
57.当调用函数时,实参是一个数组名,则向函数传送的是____
A.数组的长度B.数组的首地址C.数组每一个元素的地址D.数组每个元素中的值、
58.下列变量定义中合法的是()。
A.short_a=1-.le-1;
B.doubleb=1+5e2.5;
C.longdo=0xfdaL;
D.float2_and=1-e-3;
59.下列标识符中不合法的是()。
A.s_nameB._eC.foxD.3DS.
60.下列不正确的转义字符是(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 习题集 学校 题库