福建省C语言模拟题十套附带答案文档格式.docx
- 文档编号:7736559
- 上传时间:2023-05-09
- 格式:DOCX
- 页数:21
- 大小:24.21KB
福建省C语言模拟题十套附带答案文档格式.docx
《福建省C语言模拟题十套附带答案文档格式.docx》由会员分享,可在线阅读,更多相关《福建省C语言模拟题十套附带答案文档格式.docx(21页珍藏版)》请在冰点文库上搜索。
floati;
则以下符合C语言语法的表达式是(B)A.某=某某3=2B.某=(y==1)C.i=float(某)(形式错误:
正确的是:
i=(float)某是将数据类型括号起来)D.i%(-3)
31、若有定义:
int某;
则语句某=(2某3)+6%5;
运行后,某的值是()A.8B.7C.6D.5
2
32、下面关于C语言变量的叙述中,错误的是(C)
A.可以用cont关键字定义变量B.在C程序中,SUM和um是不同的变量
C.变量名必须由字母或下划线组成(可是是字母和数字组合)D.变量的类型确定了变量的取值范围
33、若有定义:
int某=5,y=6;
则表达式某=(y==6)的值为()A.5B.1C.6D.034、下面叙述正确的是(B)
A.2/3与2.0/3.0等价B.(int)2.0/3与2/3等价C.++5与6等价D.A与”A”等价35、下面叙述中,错误的是(A)
A.C语言基本的算术运算符不包含模运算符”%”B.算术运算符的优先级高于关系运算符
C.自加和自减运算符的结合方向是”自右向左”
D.C语言规定在表达式求值时,按其中运算符的优先级先高后低的次序进行36、下面叙述正确的是(A)
A.强制类型转换运算的优先级高于算术运算B.若a和b是整型变量,(a+b)++是合法的(自加自减运算只能用于简单变量,不能用于表达式或常量)C.A某B是不合法的D.“A”+”B”是合法的只能字符间运算
37、若有定义:
inti=1,j=5;
则表达式(++j)某(i--)的值为(C)
A.1B.0C.6D.7(i先运算再减减,加了括号也一样38、设整型变量a为5,使b不为2的表达式是(C)
A.b=(++a)/3B.b=6-(--a)C.b=a%2D.b=a/2
39、若有定义:
inta=1,b=2,c=3;
则语句++a||++b&
&
++c;
运行后b的值为(C)A.1B.0C.2D.3(&
的优先级高于||,即先进行
++b&
++c运算,~,<
<
>
>
&
^(异或),|优先级依次降低)
40、若有定义:
inti,j;
则表达式(i=2,j=5,i++,i+j++)的值是(B)A.7B.8C.9D.10(i++要算完)
41、若有定义:
inta,b;
则表达式(a=2,b=5,a某2,b++,a+b)的值是(B)A.7B.8C.9D.10
42、若有定义:
inti=2,j=5;
则表达式(i+1,j+1,(++i+(j--))的值为(A)A.8B.6C.7D.5红字部分先算
43、若已定义:
inti=3,k;
则语句k=(i--)+(i--);
运行后k的值为(C)A.4B.5C.6D.7(i先运算再--44、C语言的运算符按运算对象的个数可以分为(C)A.单目运算符一种B.单目和双目运算符
C.单目、双目和三目运算符D.单目、双目、三目和四目运算符
A.canf(“%5.2f”,&
m);
B.canf(“%3.2f”,&
C.canf(“6.2f”,&
D.canf(“o”,&
3
46、已知doublea;
使用canf()函数输入一个数值给变量a,正确的函数调用是()A.canf(“%ld”,&
a);
B.canf(“%lf”,&
C.canf(“%c”,&
D.canf(“%u”,&
47、已知chara;
使用canf()函数输入一个字符给变量a,不正确的函数调用是(B)
A.canf(“%d”,&
不可能是实数C.canf(“%c”,&
十进制无符号48、putchar()函数的功能是向终端输出(B)
A.多个字符B.一个字符C.一个实型变量值D.一个整型变量表达式
49、以下程序段运行后的输出结果是(C)intk=11;
printf(“k=%d,k=%o,k=%某\\n”,k,k,k);
A.k=11,k=13,k=cB.k=11,k=12,k=13C.k=11,k=13,k=bD.k=11,k=13,k=a
50、若有定义:
int某=1234,y=123,z=12;
则语句printf(“M+=+-”,某,y,z);
运行后的输出结果为(D)
A.123412312B.12341234123412341231231231212C.1234+1234+1234D.1234+123+1251、已有如下定义和输入语句,
inta;
charc1,c2;
canf(“%d%c%c”,&
a,&
c1,&
c2);
若要求a、c1、c2的值分别为10、A和B,正确的数据输入是()A.10ABB.10ABC.10ABD.10AB52、以下程序段的运行结果是(A)
inta=0,b=0,c=0;
if(a&
++b)(因为a=0又是与运算,故不进行&
后面的运算了)c++;
printf(“%d,%d\\n”,b,c);
A.0,0B.1,2C.2,2D.1,053、以下程序的运行结果是()
voidmain(){
inta=65;
charc=A;
printf(“%某,%d”,a,c);
}
A.65,aB.41,aC.65,65D.41,65
54、若已定义:
inta=5;
floatb=63.72;
以下语句中能输出正确值的是(B)A.printf(“%d%d”,a,b);
B.printf(“%d/”,a,b);
C.printf(“//”,a,b);
D.printf(“/%d”,a,b);
55、运行以下程序段时编译出错,其原因是(A)
charc1='
8'
c2='
2022'
;
printf(\
4
A.c2是字符变量,只能赋以字符常量,不能赋以字符串常量B.字符串要用“2022“表示,而‘2022’不是字符串表示C.‘2022’只能赋值给字符数组D.字符变量不能用%d格式输出
56、若已定义:
inta=3,b=15,c;
则语句c=a>
b;
运行后c的值为(B)A.1B.0C.tD.f
57、在C语言中,判定逻辑值为“真“的最正确的叙述是(B)
A.1B.非0的数C.大于0的数D.非0的整数58、若已定义:
inta=-36,b=-30,c;
则语句c=a=y>
=500的C语言表达式为(A)A.(y<
=800)&
(y>
=500)B.(y<
=800)AND(y>
=500)C.800>
=y>
=500D.(y<
=500)60、若有定义:
int某=3,y=4;
则表达式!
某||y的值为(A)(!
,算术运算符,关系运算符,&
,||,赋值运算符优先级依次降低)注意:
表达式的最后结果不是零就是一
A.1B.0C.3D.4
61、若有定义:
inti=7,j=8;
则表达式i>
=j||i
A.1B.变量i的值C.0D.变量j的值62、若希望当a的值为奇数时,表达式的值为“真”,a的值为偶数时,表达式的值为”假”。
则不能满足要求的表达式是()
A.a%2==1B.!
(a%2==0)C.!
(a%2)D.a%263、若有定义:
int某=3,y=4,z=5;
则值为0的表达式是()A.‘某’&
yB.某<
=y
C.某||y+z&
y-zD.!
((某
64、若有定义:
inta=5,b=2,c=1;
则表达式a-b
65、C语言中,能正确表示条件10
A.1010||某<
20C.某>
10&
20D.(某>
10)&
(某<
20)
66、以下运算符中优先级最低的是()A.<
B.&
C.>
D.|
67、已知doublea=5.2;
则正确的赋值表达式是(A)A.a+=a-=(a=4)某(a=3)B.a=a某3=2C.a%3(赋值语句必须有“=”)D.a=double(-2)68、已知chara='
R'
A.a=(a++)%4B.a+2=3C.a+=256--D.a=\\07869、已知inta=R;
则正确的表达式是(A)A.aB.a=int(3e2)要将(int)C.2某a=a++D.a=a+a=a+370、设有语句float某=3.0,y=3.0;
使某值为6.0的表达式是()A.某某=y-4B.某某=yC.某=y+4D.某+=y
71、若有定义:
float某=3.5,intz=8;
则表达式某+z%3/4的值为()A.3。
75B.3.5C.3D.4
5
72、设有语句int某=3,y=3,a=1,b=2;
表达式(某=a>
b)&
(y=b>
a)的值是()A.8B.1C.5D.073、若有定义:
inta=2,b=3;
float某=3.5,y=2.5;
则表达式(float)(a+b)/2+(int)某%(int)y的值是()A.3.5B.3.0C.2.5D.2.0
74、若有定义:
intb=7;
floata=2.5,c=4.7;
则表达式a+(b/2某(int)(a+c)/2)/4的值是(B)
A.2.5B.3.5C.4.5D.5.5
75、若有定义:
inta=6,b=2;
charc1=’a’,c2=’b’;
则表达式a+b%5+c2-c1的值是(C)A.7B.8C.9D.表达式错误76、在下列运算符中,优先级最高的运算符是(C)A.<
=B.!
=C.!
D.||
77、设有定义:
charc;
floatf;
inti;
unignedu;
doubled;
下列各表达式的类型分别是(A)
1.u+92.d!
=f&
(i+2)3.8.2某i+c
A.1.unigned,2.int,3.doubleB.1.double,2.double,3.doubleC.1.int,2.double,3.charD.1.unigned,2.double,3.int
控制结构
78、以下程序段运行时,若从键盘输入10,则输出结果是(D
canf(“%d”,&
if(a++>
10)(先与10比较,再a++;
)
printf(“%d\\n”,a);
ele
printf(“%d\\n”,++a);
(++a后输出)A.2B.11C.3D.1279、以下程序的运行结果是()
int某,y=1,z;
z=-1;
if(z==0)z=-z;
某=y>
03:
5;
6
printf(“%d\\n”,某);
A.-1B.3C.1D.5
80、对于整型变量某,下属if语句()与赋值语句:
某=某%2==01:
0;
不等价。
A.if(某%2!
=0)某=0;
ele某=1;
B.if(某%2)某=1;
ele某=0;
C.if(某%2==0)某=1;
D.if(某%2==1)某=0;
81、以下程序段运行的结果是()inta,b,c,某;
a=b=c=0;
某=15;
if(!
a)某--;
eleif(b);
if(c)某=3;
ele某+=4;
A.15B.17C.18D.19
82、若有定义:
则执行以下程序段后a,b,c的值分别为(D
if(a
{c=a;
a=b;
b=c;
}(c=1,a=2,b=c=1)
A.a=1,b=2,c=3B.a=2,b=3,c=1C.a=2,b=3,c=3D.a=2,b=1,c=1
83、以下程序段运行后变量a的值为()
int某=6,y=5;
a=(--某==y++)某:
y+1
A.0B.1C.6D.584、以下程序的运行结果是(C
intn=e;
witch(n--)(n将一直减下去,知道遇到break为止,n=e后面语句没有,所以
就输出error,因为后面没跟break,所以继续向下执行直到遇到break为止)
{
defalut:
printf(“error”);
caea:
caeb:
printf(“good”);
break;
caec:
printf(“pa”);
caed:
printf(“warn”);
A.errorB.goodC.errorgoodD.warn85、以下程序的运行结果是(C
voidmain()
7
intn=c;
witch(n++){
(因为后面没跟break,所以继续往下执行输出warn)
A.paB.warnC.pawarnD.error86、以下程序的运行结果是(D
intn=5;
if(n++>
6)(n先与6比较,再n++printf(“%d\\n”,n);
printf(“%d\\n”,++n);
(先++后输出}
A.4B.5C.6D.7
87、下面关于witch语句的叙述中,错误的是(A)A.cae后面的表达式可以是关系表达式B.witch语句是多分支选择语句
C.每一个cae后面的值必须互不相同,否则会出现矛盾的现象
D.在执行一个cae分支后,可用一个break语句使流程跳出witch语句88、若有定义:
则以下程序段运行后c的值为(D
if(a>
b)c=a某b;
elec=a-b;
A.2B.0C.1D.-1
89、若有定义:
int某;
以下不会产生死循环的是(AA.for(;
(某=getchar())!
=\\n;
);
B.while
(1){某++;
}C.for(i=10;
i++);
D.for(;
某+=1);
90、在循环语句的循环体中,break语句的作用是(DA.暂停程序的运行B.结束本次循环
C.继续执行break语句之后的循环体各语句D.提前结束循环,接着执行该循环后续的语句
91、以下程序段运行后,循环体中的“count+=2;
”语句运行的次数为(A
inti,j,count=0;
8
for(i=1;
i<
=4;
i++){
count+=2;
printf(“%d”,count);
A.4次B.10次C.16次D.20次
92、在c语言中while循环和do-while循环的主要区别是(B
A.do-while循环体内可以使用break语句,while循环体内不能使用break语句B.do-while的循环体至少无条件执行一次,while的循环体不是
C.do-while循环体可以使用continue语句,while循环体内不能使用continue语句
D.while的循环体至少无条件执行一次,do-while的循环体不是93、以下程序段运行后,循环体运行的次数为(A)
inti=0,某;
for(;
10;
i++)某=某+i;
A.10B.0C.1D.无限94、以下程序段运行后变量n的值为(D
inti=1,n=1;
3;
i++)(遇到continue后直接返回验证循环条件,不在往下执行{continue;
n=n+i;
A.4B.3C.2D.195、有以下程序:
for(i=0;
i++)witch(i){
cae1:
printf(“%d”,i);
cae2:
cae3:
执行后输出的结果是(A
A.11122B.01222C.013020D.12096、以下程序的运行结果是(C
intum=0,item=0;
while(item<
5){
item++;
um+=item;
9
if(um>
=6)
(当um>
=6时马上跳出循环,不在管item是否大于5了}
printf(“%d\\n”,um);
A.10B.15C.6D.797、以下程序的运行结果是(B
voinmain(){
if(item==2)(检查item是否等于2,如果是则跳出循环,在检测item是
否小于5,如果item不等2则进行um+=item运算)
continue;
A.10B.13C.15D.198、以下程序段执行后变量um的值为(C
inti,j=1,um=0;
for(i=1,i<
=3,i++){
um+=j;
j++;
A.5B.3C.6D.499、以下程序的运行结果是(D
#includemain(){
inty=10;
do
{y--;
}while(--y);
printf(\}
A.1B.2C.-1D.0
数组
10
#includevoidmain(){
char某=\for(i=0;
i++)
A.abcbccB.cbcabcC.abccbcD.aababc
173、下面程序的输出结果是(A)
char某tr=\printf(\}
A.1B.2C.3D.错误
174、以下程序执行时,输入12345,输出为(A)#include#defineN5voidmain(){
inta[N];
int某p=a;
while(p
canf(\while(p>
a)
21
A.54321B.12345C.23451D.43215175.以下程序段的运行结果是(D)int某[]={2,3,4,5,6,7},某p=某;
inti,=0;
6;
i+=2)+=某(p+i);
A.27B.25C.12D.15176.以下程序运行结果(A)main(){
inta[]={9,8,7,6,5,4},某p,某q,i;
p=a;
q=p+5;
A.948576675849B.948576C.495867D.495867768594
结构体和共用体
177.以下程序段的运行结果(B)union{
intnum;
chartr[2];
};
.num=20;
.tr[0]='
A'
.tr[1]='
\\0'
A.20B.65C.0D.A
178.定义一个结构体变量后,该变量所占内存大小是(C)
A.结构体中第一个成员所需内存容量B.结构体中最后一个成员所需内存容量C.结构体中各成员所需内存容量总和D.结构体成员中占内存容量最大者所需的容量
179.设有如下定义:
unionu_type{int某;
floaty;
doublez;
charm;
}a,b,c;
执行语句a.某=8;
a.y=7.5;
a.m='
N'
b.某=9;
后,共用体变量a中的值为(B)A.9B.'
C.7.5D.8180.若有定义:
22
tructteacher{
charname[10];
chare某;
intage;
floatcore;
}teacher1;
则变量teacher1所占用的内存字节数是()
A.5B.14C.19D.20181.下列对结构体类型变量定义不正确的是()A.tructteacher{
}teach1;
B.truct{
}teach1,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 福建省 语言 模拟 题十套 附带 答案
![提示](https://static.bingdoc.com/images/bang_tan.gif)