C语言期末考模拟题4文档格式.docx
- 文档编号:22718135
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:19
- 大小:18.95KB
C语言期末考模拟题4文档格式.docx
《C语言期末考模拟题4文档格式.docx》由会员分享,可在线阅读,更多相关《C语言期末考模拟题4文档格式.docx(19页珍藏版)》请在冰豆网上搜索。
第4题(2.0分)
已知inti=5,执行语句i+=++i后,i的值是().
10B:
11C:
12D:
A、B、C都不对
第5题(2.0分)
已有定义:
charc;
程序前面已在命令行中包含ctype.h文件,不能用于判断c中的字符是否为大写字母的表达式是().
isupper(c)B:
'
A'
<
=c<
='
Z'
=c&
&
c<
D:
=('
z'
–32)&
('
a'
–32)<
=c
第6题(2.0分)
有如下程序:
{intn=9;
while(n>
6)
{n––;
printf("
n);
该程序段的输出结果是().
987B:
876C:
8765D:
9876
第7题(2.0分)
以下程序中,while循环的循环次数是()
{inti=0;
while(i<
10)
{if(i<
1)continue;
if(i==5)break;
i++;
}
1B:
10C:
6D:
死循环,不能确定次数
第8题(2.0分)
有以下程序:
{ints=0,a=1,n;
&
n);
do{
s+=1;
a=a–2;
}while(a!
=n);
%d\n"
s);
若要使程序的输出值为2,则应该从键盘输入给n的值是().
-1B:
-3C:
-5D:
第9题(2.0分)
{inti,j;
for(i=1;
i<
4;
i++)
{for(j=i;
j<
j++)
%d*%d=%d"
i,j,i*j);
\n"
);
1*1=11*2=21*3=3
2*1=22*2=4
B:
2*2=42*3=6
3*3=9
1*1=1
1*2=22*2=4
1*3=3
D:
3*1=33*2=63*3=9
第10题(2.0分)
"
\\\″ABC\″\\″的长度是().
11B:
7C:
5D:
3
第11题(2.0分)
{intk=4,n=0;
for(;
n<
k;
)
{n++;
if(n%3!
=0)continue;
k––;
%d,%d\n"
k,n);
程序运行后的输出结果是()
1,1B:
2,2C:
3,3D:
4,4
第12题(2.0分)
运行以下程序后,如果从键盘上输入6514〈回车〉,则输出结果是()
{intm,n;
Enterm,n:
%d,%d"
m,&
while(m!
=n)
{while(m>
n)m–=n;
m)n–=m;
m=%d\n"
m);
m=3B:
m=2C:
m=1D:
m=0
第13题(2.0分)
以下程序的输出结果是().
{inta,b;
for(a=1,b=1;
a<
=100;
a++)
{if(b>
=10)break;
if(b%3==1)
{b+=3;
continue;
a);
101B:
6C:
4
第14题(2.0分)
{intx=10,y=10,i;
for(i=0;
x>
8;
y=++i)
%d%d"
x––,y);
10192B:
9876
10990D:
101091
第15题(2.0分)
#include<
{inta[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;
3;
for(j=0;
=i;
j++)s+=a[i][j];
该程序的输出结果是().
18B:
19C:
20D:
21
第16题(2.0分)
下面程序的输出结果是().
{inti,k,a[10],p[3];
k=5;
10;
i++)a[i]=i;
i++)p[i]=a[i*(i+1)];
i++)k+=p[i]*2;
k);
A:
20B:
21C:
22D:
23
第17题(2.0分)
若有定义:
inta[2][3];
以下选项中对a数组元素正确引用的是().
a[2][!
1]B:
a[2][3]C:
a[0][3]D:
a[1>
2][!
1]
第18题(2.0分)
以下能正确定义一维数组的选项是().
intnum[];
B:
#defineN100intnum[N];
intnum[0..100];
intN=100;
intnum[N];
第19题(2.0分)
{inti,x[3][3]={1,2,3,4,5,6,7,8,9};
i++)printf("
%d,"
x[i][2–i]);
1,5,9,B:
1,4,7,C:
3,5,7,D:
3,6,9,
第20题(2.0分)
voidf(intx,inty)
{
intt;
if(x<
y)
{
t=x;
x=y;
y=t;
main()
inta=4,b=3,c=5;
f(a,b);
f(a,c);
f(b,c);
%d,%d,%d\n"
a,b,c);
执行后输出的结果是
3,4,5B:
5,3,4C:
5,4,3D:
4,3,5
第21题(2.0分)
sub2()
inta[MAX],i,max;
max=5;
max;
sub1()
MAX;
i++)a[i]=i*2;
sub3(inta[])
inti;
a[i]);
024681012141618
01234
0123456789
012345
第22题(2.0分)
以下正确的描述是()
在C语言程序中函数的定义可以嵌套,但函数的调用不可以嵌套
在C语言程序中函数的定义不可以嵌套,但函数的调用可以嵌套
在C语言程序中函数的定义和函数的调用均不可以嵌套
在C语言程序中函数的定义和函数的调用均可以嵌套
第23题(2.0分)
voidfun(char*c,intd)
{*c=*c+1;
d=d+1;
%c,%c,"
*c,d);
main()
{chara='
b='
;
fun(&
b,a);
%c,%c\n"
a,b);
程序运行后的输出结果是().
B,a,B,aB:
a,B,a,B
A,b,A,bD:
b,B,A,b
第24题(2.0分)
voidsort(inta[],intn)
{inti,j,t;
for(i=0;
i<
n–1;
i++)
for(j=i+1;
j<
n;
j++)
if(a[i]<
a[j]){t=a[i];
a[i]=a[j];
a[j]=t;
main()
{intaa[10]={1,2,3,4,5,6,7,8,9,10},i;
sort(aa+2,5);
i++)printf("
aa[i]);
1,2,3,4,5,6,7,8,9,10,B:
1,2,7,6,3,4,5,8,9,10,
1,2,7,6,5,4,3,8,9,10,D:
1,2,9,8,7,6,5,4,3,10,
第25题(2.0分)
{chars[]="
Yes\n/No"
*ps=s;
puts(ps+4);
*(ps+4)=0;
puts(s);
n/No
Yes\
/No
Yes
空行
n/NO
第26题(2.0分)
{charstr[]="
xyz"
*ps=str;
while(*ps)ps++;
for(ps––;
ps–str>
=0;
ps––)puts(ps);
执行后的输出结果是().
yz
xyz
z
x
xy
第27题(2.0分)
以下语句中存在语法错误的是().
charss[6][20];
ss[1]="
right?
charss[][20]={"
"
};
char*ss[6];
char*ss[]={"
第28题(2.0分)
以下程序的运行结果是().
#defineMIN(x,y)(x)<
(y)?
(x):
(y)
main()
{inti=10,j=15,k;
k=10*MIN(i,j);
15C:
100D:
150
第29题(2.0分)
int*f(int*x,int*y)
{if(*x<
*y)returnx;
elsereturny;
{inta=7,b=8,*p,*q,*r;
p=&
a;
q=&
b;
r=f(p,q);
*p,*q,*r);
执行后输出结果是().
7,8,8B:
7,8,7C:
8,7,7D:
8,7,8
第30题(2.0分)
intfun(intx[],intn)
{staticintsum=0,i;
i++)sum+=x[i];
returnsum;
{inta[]={1,2,3,4,5},b[]={6,7,8,9},s=0;
s=fun(a,5)+fun(b,4);
45B:
50C:
60D:
55
二、程序填空共1题(共计10分)
第1题(10.0分)
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:
输入三个整数x,y,z,请把这三个数由小到大输出。
-------------------------------------------------------*/
{
intx,y,z,t;
%d%d%d"
x,&
y,&
z);
/***********SPACE***********/
if(x>
y){【?
】}
if(x>
z){【?
if(y>
smalltobig:
%d%d%d\n"
x,y,z);
三、程序改错共1题(共计10分)
/*------------------------------------------------------
【程序改错】
--------------------------------------------------------
求出a所指数组中最大数和次最大数(规定最大数和次最大
数不在a[0]和a[1]中),依次和a[0]、a[1]中的数对调。
例如:
数组中原有的数:
7、10、12、0、3、6、9、11、5、8,
输出的结果为:
12、11、7、0、3、6、9、10、5、8。
------------------------------------------------------*/
conio.h>
#defineN20
intfun(int*a,intn)
intk,m1,m2,max1,max2,t;
max1=max2=-32768;
m1=m2=0;
for(k=0;
k<
n;
k++)
if(a[k]>
max1)
max2=max1;
m2=m1;
max1=a[k];
m1=k;
/**********FOUND**********/
elseif(a[k]>
{
max2=a[k];
m2=k;
t=a[0];
a[m1]=a[0];
a[m1]=t;
t=a[1];
a[m2]=a[1];
a[m2]=t;
intx,b[N]={7,10,12,0,3,6,9,11,5,8},n=10,i;
clrscr();
for(i=0;
i++)
%d"
b[i]);
fun(b,n);
for(i=0;
i++)
getch();
四、程序设计共1题(共计20分)
第1题(20.0分)
/*------------------------------------------------
【程序设计】
--------------------------------------------------
从低位开始取出长整型变量s中偶数位上的数,依次
构成一个新数放在t中。
当s中的数为:
7654321时,t中的数为:
642。
------------------------------------------------*/
#include"
stdio.h"
longfun(longs,longt)
/**********Program**********/
/**********End**********/
returnt;
}
main()
longs,t,m;
clrscr();
\nPleaseenters:
%ld"
s);
m=fun(s,t);
Theresultis:
%ld\n"
m);
yzj();
yzj()
FILE*IN,*OUT;
intn;
longi,t,m;
IN=fopen("
in.dat"
"
r"
if(IN==NULL)
ReadFileError"
OUT=fopen("
out.dat"
w"
if(OUT==NULL)
WriteFileError"
for(n=0;
n<
5;
n++)
fscanf(IN,"
i);
m=fun(i,t);
fprintf(OUT,"
%ld\n"
fclose(IN);
fclose(OUT);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 期末 模拟