第三套二级C语言模拟题.docx
《第三套二级C语言模拟题.docx》由会员分享,可在线阅读,更多相关《第三套二级C语言模拟题.docx(15页珍藏版)》请在冰豆网上搜索。
![第三套二级C语言模拟题.docx](https://file1.bdocx.com/fileroot1/2023-1/9/3ef23efd-52fe-431d-a36c-9ddafb028cce/3ef23efd-52fe-431d-a36c-9ddafb028cce1.gif)
第三套二级C语言模拟题
全国高等学校(安徽考区)计算机水平考试
2016模拟题(二级C语言)
第三套模拟
一、单项选择题
1:
用计算机进行论文检索,属于计算机在______方面的应用。
A.科学计算
B.实时控制
C.信息处理
D.人工智能
参考答案:
C
2:
在计算机中,1GB表示______。
A.1024K字节
B.1024M字节
C.1024K汉字
D.1024M汉字
参考答案:
B
3:
计算机硬件系统主要由五大部件组成,下列选项中不属于这五大部件的是_______。
A.运算器
B.操作系统
C.输入设备和输出设备
D.控制器
参考答案:
B
4:
在Windows中,命令菜单呈灰色显示意味着____。
A.该菜单命令当前不能使用
B.选中该菜单命令后将弹出对话框
C.选中该菜单命令后将弹出下级子菜单
D.该菜单命令正在使用
参考答案:
A
5:
网址中http表示______。
A.超文本传输协议
B.主机的IP地址或域名
C.用户名
D.资源在主机上的存放路径
参考答案:
A
6:
在一个源程序中,main()函数的位置______。
A.必须在最开始
B.不能在最后
C.可以在最后
D.必须在最后
参考答案:
C
7:
设shortint类型的数据占2个字节,则unsignedshortint类型数据的取值范围是______。
A.0~32767
B.0~65535
C.-32768~32767
D.-256~255
参考答案:
B
8:
下面能正确表示C语言的字符常量的是______。
A.'\40'
B."A"
C.'AB'
D."\0"
参考答案:
A
9:
下面不符合标识符规定的是______。
A._max
B.x3
C.3bc
D.INT
参考答案:
C
10:
已知charc1='b',c2='f';,则语句printf("%d,%c",c2-c1,c2-32);的输出结果是______。
A.3,f
B.4,F
C.3,F
D.4,f
参考答案:
B
11:
设有inta;intf=3;,则执行语句a=(f++)%3;后a的值是_______。
A.0
B.1
C.2
D.3
参考答案:
A
12:
设有定义:
inta=1,b=2,m=0,n=0;,则执行语句(m=b>a)||(n=a
A.0,0
B.1,0
C.0,1
D.1,1
参考答案:
B
13:
以下选项中非法的C语言表达式是______。
A.0<=x&&x<100
B.i=j==0
C.(char)(65+3)
D.x+1=x+1
参考答案:
D
14:
设有定义charw;intx;floaty;doublez;,则表达式w*x+z-y值的数据类型为_______。
A.float
B.char
C.int
D.double
参考答案:
D
15:
设有floatf1=2.6,f2=2.5;,则表达式(int)f1+f2的值为______。
A.5
B.4.5
C.4
D.5.5
参考答案:
B
16:
设有intx=2,y=2,a;,执行语句a=(x=x+1)||(y=y+1);后,则变量x,y,a的值分别是______。
A.3,3,0
B.3,3,1
C.3,2,1
D.3,2,015
参考答案:
C
17:
已知inta;floatb;scanf("%d,%f",&a,&b);,使a和b的值分别为10和1.5,则正确的输入是______。
A.101.5↙
B.10,1.5↙
C.a=10,b=1.5↙
D.a=10b=1.5↙
参考答案:
B
18:
已知charx='A';,则语句printf("x=%c,%d",x,x+1);的输出是_______。
A.x=A,66
B.x=65,B
C.x=65,66
D.x=A,B
参考答案:
A
19:
以下程序段的输出结果是______。
inta=88;
if(a>90)printf("%d",a);
if(a>80)printf("%d",a);
if(a>70)printf("%d",a);
A.888888
B.8888
C.88
D.8
参考答案:
B
20:
设有说明语句inta=1;,则执行以下语句后输出______。
switch(a)
{
case1:
printf("安徽");
case2:
printf("计算机");
default:
printf("水平考试");
}
A.安徽计算机水平考试
B.安徽
C.安徽计算机
D.计算机水平考试
参考答案:
A
21:
下面关于for循环的描述正确的是_______。
A.for循环只能用于循环次数已经确定的情况
B.for循环先执行循环体语句,后判断条件
C.在for循环中不能用break语句跳出循环体
D.for循环体语句中,可以包含多条语句
参考答案:
D
22:
设有intk=10;,则while(k>=0)k=k-1;中循环体语句被执行的次数为_______。
A.0
B.1
C.10
D.11
参考答案:
D
23:
执行如下程序段后,输出结果是_______。
inti=0;
while(i<=2)i++;
printf("%d",i);
A.2
B.3
C.4
D.5
参考答案:
B
24:
设有inti;,则执行for(i=1;i<=10;i++);后变量i的值为_______。
A.9
B.10
C.11
D.12
参考答案:
C
25:
下面程序段输出结果为______。
charp[]="12345\0QQ\0";
printf("%d\n",strlen(p));
A.8
B.7
C.6
D.5
参考答案:
D
26:
下列叙述中不正确的是_______。
A.字符型数组中可以存放字符串
B.可以对字符串进行整体输入、输出
C.可以对实型数组进行整体输入、输出
D.不能在赋值语句中通过赋值运算符对字符型数组进行整体赋值
参考答案:
C
27:
已知:
ints[8]={1,2,3,4,5,6,7,8},x;,则执行语句x=s[2]+s[4];后,x的值是_______。
A.8
B.6
C.7
D.3
参考答案:
A
28:
设有inta[8][6];,则在a[4][5]之前的元素个数为_______。
A.38
B.29
C.28
D.30
参考答案:
B
29:
下列的程序段输出结果是_______。
intk,a[3][3]={1,2,3,4,5,6,7,8,9};
for(k=0;k<3;k++)
printf("%d",a[k][2-k]);
A.357
B.369
C.159
D.147
参考答案:
A
30:
字符串常量"1234567"在内存中占的字节数是____________。
A.6
B.7
C.8
D.9
参考答案:
C
31:
判断字符串s1是否大于字符串s2,正确的表达式是______。
A.s1>s2
B.strcat(s1,s2)
C.strcpy(s1,s2)
D.strcmp(s1,s2)>0
参考答案:
D
32:
在C语言程序中,若对函数类型未加说明,则函数的隐含类型为_______。
A.int
B.double
C.void
D.char
参考答案:
A
33:
以下叙述中正确的是_______。
A.在不同的函数中不能使用相同名字的变量
B.函数中的形式参数是全局变量
C.在一个函数内定义的变量只在本函数范围内有效
D.在一个函数内的复合语句中定义的变量在本函数范围内有效
参考答案:
C
34:
若有函数:
voidfun(doublea[],int*n){……},则以下叙述中正确的是____________。
A.调用fun函数时,数组a执行按值传送
B.形参a和n都是指针变量
C.形参a和n都是普通常量
D.调用fun函数时,形参n执行按值传送
参考答案:
B
35:
设有定义inta,*p;,则使指针p指向变量a的语句是______。
A.p=a;
B.a=p;
C.p=&a;
D.a=*p;
参考答案:
C
36设有inta=2,b=1,*p=&a;,则执行语句*p=3;a=a+b;后,变量a的值为______。
A.2
B.3
C.4
D.5
参考答案:
C
37:
设有:
inta[]={1,3,5,7},*p=a;,以下表达式中值为5的是____________。
A.*(p+2)
B.p+2
C.*p+2
D.*p+=2
参考答案:
A
38:
下列关于编译预处理命令的说法中,正确的是______。
A.一条文件包含命令能包含多个文件
B.编译预处理命令只能放在文件开头
C.一行只能书写一条编译预处理命令
D.编译预处理命令中的"#"可以省略
参考答案:
C
39:
下面不能正确定义结构体变量a的语句是______。
A.structxyz{charx;inty;floatz;};structxyza;
B.structxyz{charx;inty;floatz;}a;
C.structxyz{charx;inty;floatz;};typedefxyza;
D.struct{charx;inty;floatz;}a;
参考答案:
C
40:
对文件操作的一般步骤是_______。
A.读写文件->打开文件->关闭文件
B.读文件->写文件->关闭文件
C.打开文件->操作文件->关闭文件
D.操作文件->打开文件->关闭文件
参考答案:
C
二、程序改错题
题目1:
统计所有三位正整数中个位数和十位数之和与百位数的积是28的数的个数。
如:
259,268,277,286......是满足条件的数。
参考答案:
$1$:
count=0;
$2$:
b=i/100;
$3$:
count++;
题目2:
fun函数的功能是:
计算s=1+1/2+1/3+1/4+...+1/n的值。
在主函数中输入一个正整数n,通过调用fun函数,求得计算结果。
参考答案:
$1$:
return(s);
$2$:
scanf("%d",&n);
$3$:
result=fun(n);
三、Windows操作题
请在考生文件夹中进行以下操作:
1.将文件夹group下的文件time.wri删除;
2.将文件夹year下的文件light.wps改名为lamp.wps;
3.将文件夹year下的子文件夹paper删除;
4.在文件夹address下新建一个文本文档myself.txt;
5.将文件夹group下的文件check.xls复制到文件夹address中。
考生在完成题目要求时,应特别注意一个基本概念:
考生文件夹,考生上机考试的全部数据均存储在这个文件夹中。
考生不得随意
更改其中的内容,而且,有些题目要使用这个概念来完成。
要完成上机考试的基本操作题,可以使用Windows提供的资源管理器、文件
夹窗口等。
Windows上机考试的基本操作题主要包括以下内容:
1.文件或文件夹的创建
操作:
新建文件夹可通过"Windows资源管理器"或"我的电脑",先双击要放置新文件夹的磁盘或文件夹,然后利用以下两种方法来完成:
(1)利用"文件"菜单中的"新建"命令的"文件夹"选项,输入新文件夹名后按回车键;
(2)在已打开文件夹中,单击鼠标右键,使用快捷菜单中的"新建"→"文件夹"命令,输入新文件夹名后按回车键。
新建文本文件可通过"Windows资源管理器"或"我的电脑",先双击要放置新文件的磁盘或文件夹,然后利用以下两种方法来完成:
(1)利用"文件"菜单中的"新建"命令的"文本文档"选项,输入新文件名后按回车键;
(2)在已打开文件夹中,单击鼠标右键,使用快捷菜单中的"新建"→"文本文档"命令,输入新文件名后按回车键。
2.文件或文件夹的拷贝
操作:
复制文件或文件夹有三个步骤:
选择→复制→粘贴。
复制文件或文件夹有以下四种方法:
(1)选择该文件,在"编辑"菜单中选择"复制"命令;
(2)选择该文件,用鼠标单击工具栏中的"复制"图标;
(3)选择该文件,在键盘上按Ctrl+C键;
(4)用鼠标右击欲复制的文件或文件夹,在弹出的快捷菜单中选择"复制"命令。
然后选择目的文件夹进行粘贴,粘贴文件或文件夹可由以下四种方法来实现:
(1)在"编辑"菜单中选择"粘贴"命令;
(2)用鼠标单击工具栏中的"粘贴"图标;
(3)选择该文件,在键盘上按Ctrl+V键;
(4)用鼠标右击欲粘贴的文件或文件夹,在弹出的快捷菜单中选择"粘贴"命令。
3.文件或文件夹的移动
操作:
移动文件或文件夹有三个步骤:
选择→剪切→粘贴。
剪切文件或文件夹应先选择该文件或文件夹,然后有以下四种方法:
(1)在"编辑"菜单中选择"剪切"命令;
(2)用鼠标单击工具栏中的"剪切"图标;
(3)在键盘上按Ctrl+X键;
(4)用鼠标右击欲剪切的文件或文件夹,在弹出的快捷菜单中选择"剪切"命令。
然后选择目的文件夹进行粘贴,粘贴文件或文件夹可由以下四种方法来实现:
(1)在"编辑"菜单中选择"粘贴"命令;
(2)用鼠标单击工具栏中的"粘贴"图标;
(3)选择该文件,在键盘上按Ctrl+V键;
(4)用鼠标右击欲粘贴的文件或文件夹,在弹出的快捷菜单中选择"粘贴"命令。
4.文件或文件夹的更名
操作:
在"Windows资源管理器"或"我的电脑"窗口中修改文件或文件夹的名称可以选择以下几种操作之一来实现:
(1)选择该文件,在"文件"菜单中选择"重命名"命令,然后键入新文件名或文件夹名,再按回车键;
(2)选择该文件按功能键F2,然后键入新文件名或文件夹名,再按回车键;
(3)用鼠标左键单击文件或文件夹名,然后键入新文件名或文件夹名,再按回车键;
(4)用鼠标右击欲重命名的文件或文件夹,在弹出的快捷菜单中选择"属性"命令,然后键入新文件名或文件夹名,再按回车键;
5.文件或文件夹的属性设置
操作:
在"Windows资源管理器"或"我的电脑"窗口中都设置有"属性"命令,用户可通过该命令设置文件或文件夹的属性(只读、隐藏、存
档、系统),具体实现方法有以下两种:
(1)选择该文件,在"文件"菜单中选择"属性"命令,在弹出的对话框中单击相应属性前的复选框,再单击"确定"按钮即可;
(2)用鼠标右击欲设置属性的文件或文件夹,在弹出的快捷菜单中选择"属性"命令,然后在弹出的对话框中单击相应属性前的复选
框,再单击"确定"按钮即可。
6.文件或文件夹的删除
操作:
先选择该文件或文件夹,然后再按以下方法之一删除:
(1)按键盘上的Del键;
(2)用鼠标右击欲删除的文件或文件夹,在弹出的快捷菜单中选择"删除"命令;
(3)在"文件"菜单中选择"删除"命令;
(4)如果考生使用Shift+Del键,则该文件或文件夹将被彻底从硬盘中删除。
四、综合应用题
题目1:
根据下式求s的值(要求使用循环实现):
s=1/1!
+1/2!
+1/3!
+1/4!
+1/5!
+1/6!
+1/7!
说明:
n!
=1*2*...*n。
输出结果的形式为:
s=1.23456
==========================参考代码1==========================
#include
voidPRINT(doubles)
{
FILE*out;
printf("s=%.5f\n",s);
if((out=fopen("result.dat","w+"))!
=NULL)
fprintf(out,"s=%.5f",s);
fclose(out);
}
voidmain()
{
/*考生在此设计程序*/
inti,j;
longt;
doubles=0;
for(i=1;i<=7;i++)
{
t=1;
for(j=1;j<=i;j++)
t=t*j;
s=s+1.0/t;
}
PRINT(s);
}
==========================参考代码2==========================
#include
voidPRINT(doubles)
{
FILE*out;
printf("s=%.5f\n",s);
if((out=fopen("result.dat","w+"))!
=NULL)
fprintf(out,"s=%.5f",s);
fclose(out);
}
voidmain()
{
/*考生在此设计程序*/
inti,j;
longt;
doubles=0;
t=1;
for(i=1;i<=7;i++)
{
t=t*i;
s=s+1.0/t;
}
PRINT(s);
}
===========================================================
题目2:
已知整型数组s存储了30个数。
对于任意下标为i的元素(i<29),查找其中s[i]
例如:
1、51分别小于后面的元素51、66。
输出结果的形式为:
s=12345
==========================参考代码1==========================
#include
voidPRINT(longs)
{
FILE*out;
printf("s=%ld\n",s);
if((out=fopen("result.dat","w+"))!
=NULL)
fprintf(out,"s=123%ld",s);
fclose(out);
}
voidmain()
{
ints[30]={2016,1,51,66,19,853,4535,652,8,42,7,6,86,78,45,63,90,5473,45,75,3,7,4,53,403,47,0,2,87,56};
/*考生在此设计程序*/
inti;
longsum=0;
for(i=0;i<29;i++)
if(s[i]
sum=sum+s[i];
PRINT(sum);
}