国二C语言 模拟考试题文档格式.docx
- 文档编号:7855374
- 上传时间:2023-05-09
- 格式:DOCX
- 页数:81
- 大小:36.60KB
国二C语言 模拟考试题文档格式.docx
《国二C语言 模拟考试题文档格式.docx》由会员分享,可在线阅读,更多相关《国二C语言 模拟考试题文档格式.docx(81页珍藏版)》请在冰点文库上搜索。
c:
d的值为:
A.1
7putchar()函数可以向终端输出一个:
A.整型变量表达式值
B.实型变量值
C.字符串
D.字符或字符型变量值
8下列各语句中正确定义了数组的是:
A.inta[5],b[2,3];
B.charstr(30);
C.intx[];
D.intx[5]={1,2,3};
9将整型变量a、b中的较大值为变量c赋值,下列语句中正确的是:
A.c==(a>
b)?
a:
b;
B.c=(a>
a:
C.c=if(a>
b)aelseb;
D.(a<
c=a:
c=b;
10若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是:
C.2.0
D.2.5
11以下语句或语句组中,能正确进行字符串赋值的是:
A.chars[10];
s="
right!
"
;
B.char*sp="
C.chars[10];
*s="
D.char*sp;
*sp="
12若inta[][4]={1,2,3,4,5,6,7,8,9};
则a数组第一维的大小是:
D.无确定值
13若要求以下程序的输出结果是a=5,b=4,则输入数据的形式应该是:
#include“stdio.h”
main()
{inta,b;
scanf("
%d,b=%d"
&
a,&
b);
printf("
a=%d,b=%d"
a,b);
}
A.54
B.5,4
C.5b=4
D.5,b=4
14以下运算符中,优先级最高的是:
A.<
=
B.&
&
C.=
D.++
15以下对C语言函数的描述中,不正确的是:
A.C语言中,函数可以嵌套定义
B.C语言中,函数可以递归调用
C.C语言中,函数可以没有返回值
D.C语言程序由函数组成
16若有以下定义和语句,则不能访问数组元素的表达式是:
inti=2,*p,a[]={1,2,3,4,5};
p=a;
A.*(a+i)
B.a[p-a]
C.p+i
D.*(&
a[i])
17C语言中NULL表示:
A.空指针
B.变量未找到
C.字符串的结束符
D.文件的结束符
18以下程序的运行结果是:
#include"
stdio.h"
{intm=5;
if(m++>
5)printf("
%d\n"
m);
elseprintf("
m--);
}
B.5
D.7
19以下程序的运行结果是:
{inta[][3]={{1,2,3},{4,5},{6},{0}};
%d,%d,%d\n"
a[1][1],a[2][1],a[3][1]);
A.3,2,1
B.5,0,0
C.4,1,0
D.1,5,0
20下面程序的运行结果是:
{inta[10]={2,4,6,8,10,12,14,16,18},*p;
p=a+5;
printf("
%d,%d\n"
*(p+1),*++p+1);
A.16,15
B.14,16
C.16,18
D.15,14
21以下程序的输出结果是:
fun2(inta,intb)
{intc;
c=a*b%3;
returnc;
fun1(inta,intb)
a+=a;
b+=b;
c=fun2(a,b);
returnc*c;
{intx=11,y=19;
printf("
fun1(x,y));
A.3
C.4
D.6
22以下程序运行后的输出结果是?
#defineSQR(x)x*x
{inta,k=3;
a=++SQR(k+1);
a);
A.7
B.8
C.9
D.10
23执行语句for(i=10;
i>
0;
i--);
后,变量i的值为:
A.10
B.0
D.1
24下列i,j,k均为整型变量,选项中不正确的C语言赋值语句是:
A.i+1=k;
B.i=j=k=1;
C.i=j+=++k;
D.j=i+1==i++;
25设有语句inta[10]={0,l,2,3,4,5,6,7,8,9},*p=a;
则不能对a数组元素的正确引用是:
A.a[p-a]
B.*(*(a+5))
C.p[5]
D.*(&a[5])
26已有定义:
chara[]="
xyz"
b[]={'
x'
'
y'
z'
};
以下叙述中正确的是:
A.数组a和b的元素个数相同
B.a数组元素少于b数组
C.a数组元素多于b数组
D.上述说法都不对
27以写方式打开二进制文件my.dat的正确写法是:
A.fopen(“my.dat”,”rb”);
B.fopen(“my.dat”,”r”);
C.fopen(“my.dat”,”wb”);
D.fopen(“my.dat”,”w”);
28对于定义
structsa
{intx;
floaty;
}data,*p=&
data;
请从下列候选答案中,选择变量data的x成员的正确引用:
A.(*p).data
B.(*p).x
C.p->
data.x
D.p.data.x
29循环语句的循环体中执行continue语句,其作用是:
A.立即终止程序执行
B.继续执行continue语句之后的循环体各语句
C.结束本次循环
D.跳出循环
30定义floata;
现要从键盘输入a的数据,其整数位为3位,小数位为2位,则选用:
A.scanf(“%f”,&
a);
B.scanf(“%5.2f”,a);
C.scanf(“%6.2f”,&
D.scanf(“%f”,a);
选择题
(2)
1.以下叙述正确的是
A.C语言程序是由过程和函数组成的
B.C语言函数可以嵌套调用,例如:
fun(fun(x))
C.C语言函数不可以单独编译
D.C语言中除了main函数,其他函数不可作为单独文件形式存在
2以下关于C语言的叙述中正确的是
A.C语言中的注释不可以夹在变量名或关键字的中间
B.C语言中的变量可以在使用之前的任何位置进行定义
C.在C语言算术表达式的书写中,运算符两侧的运算数类型必须一致
D.C语言的数值常量中夹带空格不影响常量值的正确表示
3以下C语言用户标识符中,不合法的是
A._1
B.AaBc
C.a_b
D.a-b
doublea=22;
inti=0,k=18;
,则不符合C语言规定的赋值语句是
A.a=a++,i++;
B.i=(a+k)<
=(i+k);
C.i=a%11;
D.i=!
a;
5有以下程序
#include<
stdio.h>
main(){chara,b,c,d;
scanf("
%c%c"
c=getchar();
d=getchar();
printf("
%c%c%c%c\n"
a,b,c,d);
当执行程序时,按下列方式输入数据:
(<
CR>
代表回车)
12<
34<
则输出结果是
A.1234
B.12
C.12
3
D.12
34
6以i关于C语言数据类型使用的叙述中错误的是
A.若要准确无误差的表示自然数,应使用整数类型
B.若要保存带有多位小数的数据,应使用双精度类型
C.若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型
D.若只处理“真”和“假”两种逻辑值,应使用逻辑类型
7若a是数值类型,则逻辑表达式(a==1)||(a!
=1)的值是
D.不知道a的值,不能确定
8以下选项中与if(a==1)a=b;
elsea++;
语句功能不同的switch语句是
A.switch(a)
{case:
a=b;
break;
default:
a++;
}
B.switch(a==1)
{case0:
case1:
}
C.switch(a)
{default:
D.switch(a==1)
{case1:
case0:
9有如下嵌套的if语句
if(a<
b)
if(a<
c)k=a;
elsek=c;
else
if(b<
c)k=b;
elsek=c;
10以下选项中与上述if语句等价的语句是
A.k=(a<b)?
b;
k=(b<c)?
b:
c;
B.k=(a<b)?
((b<c)?
b):
((b>c)?
c);
C.k=(a<b)?
((a<c)?
):
c)
D.k=(a<b)?
k=(a<c)?
11有以下程序
s七dio.h>
main()
{inti,j,m=1;
for(i=1;
i<
3;
i++)
{for(j=3;
j>
j--)
{if(i*j)>
3)break;
m=i*j;
}
m=%d\n"
程序运行后的输出结果是
A.m=6
B.m=4
C.m=2
D.m=5
12有以下程序
{inta=l,b=2;
for(;
a<
8;
a++){b+=a;
a+=2;
%d,%d\n"
A.9,18
B.8,11
C.7,11
D.10,14
13有以下程序,其中k的初值为八进制数
#include<
{intk=011;
k++);
A.12
B.11
C.10
D.9
14以下关于return语句的叙述中正确的是
A.一个自定义函数中必须有一条return语句
B.一个自定义函数中可以根据不同情况设置多条return语句
C.定义成void类型的函数中可以有带返回值的return语句
D.没有return语句的自定义函数在执行结束时不能返回到调用处
15下列语句组中,正确的是
A.char*s;
s="
Olympic"
B.chars[7];
C.char*s;
s={"
};
D.chars[7];
16下列选项中,能正确定义数组的语句是
A.intnum[0..2008];
B.intnum[];
C.intN=2008;
intnum[N];
D.#defineN2008
17有以下程序
voidfun(char*c,intd)
{*c=*c+1;
d=d+1;
printf("
%c,%c,"
*c,d);
{charb='
a'
a='
A'
;
fun(&
b,a);
%e,%e\n"
b,a);
程序运行后的输出结果是
A.b,B,b,A
B.b,B,B,A
C.a,B,B,a
D.a,B,a,B
18若有定义int(*Pt)[3];
,则下列说法正确的是[D]
A.定义了基类型为int的三个指针变量
B.定义了基类型为int的具有三个元素的指针数组pt
C.定义了一个名为*pt、具有三个元素的整型数组
D.定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组
19设有定义doublea[10],*s=a;
,以下能够代表数组元素a[3]的是
A.(*s)[3]
B.*(s+3)
C.*s[3]
D.*s+3
20有以下程序
{inta[5]={1,2,3,4,5},b[5]={0,2,1,3,0},i,s=0;
for(i=0;
5;
i++)s=s+a[b[i]];
s);
A.6
B.10
C.11
D.15
21有以下程序
{intb[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;
for(j=i;
j<
=1;
j++)t+=b[i][b[j][i]];
t);
B.3
D.5
22若有以下定义和语句
chars1[10]="
abcd!
*s2="
\n123\\"
%d%d\n"
strlen(s1),strlen(s2));
A.55
B.105
C.107
D.58
23有以下程序
#defineN8
voidfun(int*x,inti)
{*x=*(x+i);
{inta[N]={1,2,3,4,5,6,7,8},i;
fun(a,2);
N/2;
a[i]);
\n"
);
A.1313
B.2234
C.3234
D.1234
24有以下程序
#include<
intf(intt[],intn);
{inta[4]={1,2,3,4},s;
s=f(a,4);
intf(intt[],intn)
{if(n>
0)returnt[n-1]+f(t,n-1);
elsereturn0;
C.14
25有以下程序
intfun()
{staticintx=1;
x=x*2;
returnx;
{inti,s=1;
for(i=1;
=2;
i++)s=fun();
26有以下程序
#defineSUB(a)(a)-(a)
{inta=2,b=3,c=5,d;
d=SUB(a+b)*c;
d);
B.-12
C.-20
27设有定义:
structcomplex
{intreal,unreal;
}data1={1,8},data2;
则以下赋值语句中错误的是
A.data2=data1;
B.data2=(2,6)
C.data2.real=data1.real;
D.data2.real=data1.unreal;
28有以下程序
string.h>
structA
{inta;
charb[10];
doublec;
voidf(structAt);
{structAa={1001,"
ZhangDa"
1098.0};
f(a);
%d,%s,%6.1f\n"
a.a,a.b,a.c);
voidf(structAt)
{t.a=1002;
strcpy(t.b,"
ChangRong"
t.c=1202.0;
A.1001,zhangDa,1098.0
B.1002,changRong,1202.0
C.1001,ehangRong,1098.0
D.1002,ZhangDa,1202.0
29有以下定义和语句
structworkers
{intnum;
charname[20];
charc;
struct
{intday;
intmonth;
intyear;
}s;
};
structworkersw,*pw;
pw=&
w;
能给w中year成员赋1980的语句是
A.*pw.year=1980;
B.w.year=1980;
C.pw->
year=1980;
D.w.s.year=1980;
30有以下程序
{inta=2,b=2,c=2;
a/b&
31有以下程序
{FILE*fp;
charstr[10];
fp=fopen("
myfile.dat"
"
w"
fputs("
abc"
fp);
fclose(fp);
fopen("
myfile.data"
a++"
fprintf(fp,"
28);
rewind(fp);
fscanf(fp,"
str);
puts(str);
fclose(fp);
A.abc
B.28c
C.28
D.因类型不一致而出错
选择题(3)
1、以下叙述中正确的是:
A.C程序中的注释只能出现在程序的开始位置和语句的后面
B.C程序书写格式严格,要求一行内只能写一个语句
C.C程序书写格式自由,一个语句可以写在多行上
D.用C语言编写的程序只能放在一个程序文件中
2以下叙述中正确的是:
3以下选项中不属于字符常量的是:
A.′C′
B."
C"
C.′\xCC′
D.′\072′
4设变量已正确定义并赋值,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 国二C语言 模拟考试题 语言 模拟 考试题