二级C语言综合试题Word格式文档下载.docx
- 文档编号:19780378
- 上传时间:2023-01-10
- 格式:DOCX
- 页数:17
- 大小:28.99KB
二级C语言综合试题Word格式文档下载.docx
《二级C语言综合试题Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《二级C语言综合试题Word格式文档下载.docx(17页珍藏版)》请在冰豆网上搜索。
n++;
printf("%d%d%d",n,n++,――n);
}
①221 ②222③232 ④211
14、以下不是结构化程序设计的基本结构的是________。
①选择结构②逻辑结构③循环结构④顺序结构
15、设intm=2,n=3,则++m==n的结果是__________。
①2 ②1③0④3
16、两次运行下面的程序,如果从键盘上分别输入5和3,则输出结果是__________。
intx;
scanf("
%d"
,&
x);
if(x>=4)printf("
,++x);
elseprintf("
%d\n"
,x――);
①6和4②5和2③6和3④5和3
17、循环语句while(!
E);
中的表达式!
E等价于________。
①E!
=0②E!
=1③E==0④E==1
18、设a、b和c都是int型变量,且a=1,b=1,c=1;
则以下值为0的表达式是__________。
①b>=a②a&
&
c③!
a||b④!
a==b
19、若有以下程序段:
intp=10;
do
printf("
*"
);
}while(p――);
退出循环后,变量p的值是__________。
①0 ②1 ③-1 ④2
20、如果变量定义有:
inta=9,c=8;
则表达式(――a!
=c++)?
――a:
++c的值为________。
①9②10③7④8
21、如果a=1,b=2,c=3,d=4,则条件表达式a<b?
a:
c<d?
c:
d的值为_________。
①1②2③3④4
22、有如下定义:
structdate
intyy,mm,dd;
};
structworklist
charname[20];
charsex;
structdatebirthday;
}person;
对结构体变量person的出生年月进行赋值时,下面正确的赋值语句是__________。
①yy=1958②birthday.yy=1958
③person.yy=1958④person.birthday.yy=1958
23、设有以下说明语句
structstu
{inta;
floatb;
}structpe;
则下面的叙述不正确的是________。
①struct是结构体类型的关键字②structstu是用户定义的结构体类型
③structpe是用户定义的结构体类型名④a和b都是结构体成员名
24、设变量a是整型,f是实型,i是双精度型,则表达式100%9+'
a'
+i*f值的数据类型是________3。
①int②float③double④不确定
25、以下程序的执行结果是________。
inta=2,i;
for(i=0;
i<
3;
i++)
%d,"
,func(a);
func(inta)
intb=0;
staticc=1;
b++;
c++;
return(a+b+③;
①555②7,7,7③567④5,6,7
26、对于for(表达式1;
;
表达式3)可理解为__________。
①for(表达式1;
0;
表达式3)
②for(表达式1;
表达式3;
③for(表达式1;
表达式1;
④for(表达式1;
100;
27、有如下输入语句:
a=%d,b=%d,c=%d"
a,&
b,&
③;
为使变量a的值为2,b的值3,c的值为4,从键盘输入数据的正确形式应是________。
①234↙②2,3,4↙
③a=2,b=3,c=4↙④a=2b=3c=4↙
28、下面关于函数参数的说法不正确的是__________。
①形参可以是常量、变量或表达式
②实参可以是常量、变量或表达式
③在被定义的函数中,必须指定形参的类型
④形参应与其对应的实参类型一致
29、假设已定义chara[10]和char*p=a,下面的赋值语句中,正确的是__________。
①a[10]="TurboC"②a="TurboC"
③*p="TurboC"④p="TurboC"
30、设有下面的程序段:
chars[]="
china"
char*p=s;
则下列叙述正确的是________。
①数组s中的内容和指针变量p中的内容相等②s和p完全相同
③s数组长度和p所指向的字符串长度相等④*p与s[0]相等
31、C语言中不合法的字符常量是__________。
\0xff'
\65'
③'
'
④'
\\'
32、以下一维数组a的定义中,正确的是________。
①inta(10);
②intn=10,a[n];
③intn;
④#defineSIZE10
n);
inta[SIZE];
inta[n];
33、下面程序的功能是将字符串s中的内容按逆序输出,但不改变串中的内容,请选择填空,【A】________3,【B】________。
#include<stdio.h>
{chars[10]="
hello!
"
inverp(s);
inverp(char*a)
if(【A】)return0;
inverp(a+1);
%c"
【B】)
【A】
①*a!
='
②*a!
=NULL
③!
*a==0
④!
*a
【B】
①*(a―1)
②*(a+1)
③*a
④*(a――)
34、若有一已赋值的连续存储单元,指针p已正确定义,且指向此连续存储单元的起始地址,以下叙述正确的是__________。
①表达式:
*p++;
使p所指存储单元中的值增1。
②表达式:
(*p)++;
③表达式:
使指针p向高地址移动一个存储单元。
④表达式:
++*p;
35、下面是对数组a的初始化,其中不正确的是________。
①a[5]={"
ABCD"
}②a[5]={'
,'
B'
C'
③a[5]="
④a[5]="
ABCDE"
36、若有以下说明,则对y数组元素的正确引用是__________。
inty[6],*p=y;
①y[6]②p+2③y++④*p
37、设有如下定义:
intx=10,y=3,z;
则语句
,z=(x%y,x/y));
的输出结果是________。
①1②0
③4④3
38、C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是_________。
①地址传递
②单向值传递
③由实参传给形参,再由形参传给实参
④由用户指定传递方式
39、如果有定义FILE*fp;
fp=fopen("
program.c"
,"
r"
则以下描述错误的是________。
1fopen以只读方式打开文件program.c;
2文件指针fp指向文件program.c的首地址;
3可以通过fp对文件program.c进行读操作;
4可以用fclose(fp)关闭program.c文件。
40、定义如下变量:
intn=10;
则下列循环的输出结果是________。
while(n>
7)
{n——;
,n);
①10
②9
③10
④9
9
8
7
6
41、下列程序执行后输出的结果是________。
intd=1;
fun(intp)
intd=5;
d+=p;
d);
inta=3;
fun(a);
d+=a;
,d);
①84②56③54④83
42、下面这个程序的输出是什么?
__________。
inty=10;
while(y--);
y=%d\n"
,y);
①y=0②while构成死循环③y=1④y=-1
43、表达式:
10!
=9的值是________。
①true②1③0④非零值
44、以下语句的字符串中没有空格,则输出结果是__________。
printf("
,strlen("
std\n007\1\\"
));
①8②9③10④11
45、以下程序的输出结果是________。
chara[10]="
6789"
,*p;
p=a;
%s\n"
,p);
①6②6789③'
④789
46、设有数组定义:
charcc[]="
good!
则数组cc所占存储空间的字节数为__________。
①4②5③6④7
47、有以下程序段:
intk=0
while(k=1)k++;
while循环执行的次数是________。
①无限次②有语法错,不能执行
③一次也不执行④执行1次
48、以下关于函数调用的描述,错误的是__________。
①函数调用可以作为独立的语句存在
②函数调用可以出现在表达式中
③函数调用可以作为一个函数的实参
④函数调用可以作为一个函数的形参
49、下列描述中不正确的是________。
①字符型数组中可以存放字符串
②可以对字符型数组进行整体输入、输出
③可以对整型数组进行整体输入、输出
④不能在赋值语句中通过赋值运算符"
="
对字符型数组进行整体赋值
50、执行下列程序,当输入为1时,输出结果是①:
输入为3时,输出结果是
②:
{scanf("%d",&
k);
switch(k)
case1:
printf("%d\n",k++);
case2:
case3:
printf("%d\n",++k);
case4:
break;
default:
printf("Full!
\n")
①
①1
②2
③2
3
4
5
④1
2
②
①3
②4
③4
④4
Full!
51、语句:
(a!
=0)&
(b=-2));
①无输出②结果不确定
③-1④1
52、以下程序执行后的输出结果是__________。
①12②10③8④6
#defineAA(x)x*(x-1)
main()
{
,AA(1+1+2));
53、有以下函数调用语句:
func(func(exp1,exp2),(exp3,exp4,exp5));
其中含有的实参个数是________。
①1②2③4④5
54、设定义intx,a,b,c;
以下合法的if语句是____________。
①if(a=b)x++;
②if(a=<b)x++;
③if(a<>b)x++;
④if(a=>b)x++;
55、当调用函数时,实参是一个数组名,则向函数传送的是________。
①数组的首地址②数组的长度
③数组第一个元素的值④整个数组的元素中的值
56、若有下面的说明和定义,则sizeof(unionuu)的值是__________。
unionuu
charu1[5];
longu2[2];
}ua;
①5②16③8④7
57、以下正确的函数定义形式是________。
①doublefun(intx,inty)
②doublefun(intx;
inty)
③doublefun(intx,inty);
④doublefun(intx;
inty);
58、当顺利执行了文件关闭操作时,fclose函数的返回值是__________。
①-1②0③1④非0
二、填空题(第1-14题每空1分,其余每题每空2分)。
1、结构化程序设计中的三种基本结构是____________、____________、___________。
2、达式7/2的结果是____________。
表达式7%2的结果是____________。
3、若已知a=1.5,b=15,c=1,则表达式a*b&
c的运算结果是____________。
4、为表示关系:
x≤y≤z,应使用的C语言表达式是________________。
5、定义inta[]={1,2,3,4,5,6},*p=a;
表达式(*++p)++的值是____________。
6、在TurboC编译系统中,编制C程序的上机步骤为____________、____________、____________、____________。
7、表达式10/4的结果是________。
表达式10%5的结果是________。
8、C语言源程序的语句分隔符是_________。
9、定义inta[]={1,2,3,4,5,6},*p=a;
表达式(*++p)++的值是________。
10、在C语言中,一个函数由两部分组成,分别是__________和__________。
11、已有函数pow,现在要求取消变量i后pow函数的功能不变。
请填空。
修改前的pow函数:
pow(intx,inty)
inti,j=1;
for(i=1;
=y;
++i)
j=j*x;
return(j);
}
修改后的pow函数:
pow(intx,inty)
{
intj=1;
for(________;
________;
________)
12、有函数调用fun1(x+y,(y,z),10,fun((x,y―1)));
函数fun1有_______个参数。
13、下面程序段的功能是测试字符串的长度,for循环的执行结束后输出的“※”个数是________。
char*s="
ab\n\012/\\\"
for(;
*s!
s++)printf("
※"
14、以下fun函数把ch中的大写字母转换成字母序列中的下一个大写字母,字母Z转换成字母A,其它字符不变,返回转换后的字母或其它字符。
charfun(charch)
if(ch=='
Z'
)ch=__________;
elseif(ch>
='
ch<
Y'
returnch;
15、以下程序的执行结果是____________。
#include<stdio.h>
main()
floatf=13.8;
x=((int)f)%3;
printf("x=%d\n",x);
16、以下程序的执行结果是____________。
charch='
+3;
printf("ch=%c\n",ch);
17、以下程序的执行结果是____________。
inta[3][3]={1,2,3,4,5,6,7,8,9},i,s=0;
i<=2;
s=s+a[i][i];
printf("s=%d\n",s);
18、以下程序的输出结果是____________。
inta,b,c=246;
a=c/100%9;
b=(-1)&
(-1);
%d,%d\n"
,a,b);
19、以下程序的输出结果是____________。
intx[]={1,2,3,4,5},y=0,i,*p;
p=&
x[1];
y+=*p;
p++;
20、设有定义:
FILE*fa;
fa=fopen("
myfile"
,"
w"
执行语句
fprintf(fa,"
%s"
China"
后,字符串"
输出到了什么地方____________。
21、以下程序的执行结果是________。
intf(intx,inty)
{staticintz=5;
if(x>y)z=z+y;
elseif(x==y)z=z―y;
elsez=z+x;
return(z)
voidmain()
inta=2,p;
p=f(a,++a);
p=%d,"
p=f(a,a++);
p=%d\n"
22、下面程序的运行结果是________。
#include<
stdio.h>
{inti=5;
charc[6]="
abcd"
do
{
`c[i]=c[i―1];
}while(――i>
0);
puts(c);
三、编程题(每题10分,共20分)
1.编制程序,任意输入两个整数,求这两个整数之差的绝对值并输出,要求:
求这两个整数之差的绝对值用函数实现。
即定义函数为:
intfun(intx,inty){}
2.编制程序求e的近似值。
e≈1+
+
+…+
3.用for循环语句求解6!
的值,并输出结果。
要求有必要的输入输出提示。
4.用scanf函数输入圆半径r和圆柱高h的值,并求圆柱体的体积,已知圆柱体的体积公式为:
要求输入输出时要有文字说明。
5.编写一个程序从键盘输入数值n,计算出以下数列的前n项的和,即求:
sum=1+2+3+…+n
要求使用for循环语句完成求和,并有必要的输入输出文字提示。
答案:
二、填空题
1、顺序、选择、循环
2、3,1
3、1
4、(x<=y)&&(y<=z)
5、3
6、编辑、编译、连接、运行
7、20
8、;
9、3
10、说明部分,函数体
11、1;
y<=0;
y――
12、4
13、7
14、'
,ch+1
15、x=1
16、ch=D
17、s=15
18、2,1
19、9
20、myfile文件中
21、p=7,p=4
22、aabcd
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二级 语言 综合 试题