全国计算机等级二级C语言模拟试题及答案7Word格式文档下载.docx
《全国计算机等级二级C语言模拟试题及答案7Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《全国计算机等级二级C语言模拟试题及答案7Word格式文档下载.docx(6页珍藏版)》请在冰豆网上搜索。
x=2,y=2;
++x||++y_______________
x=3
x+=x-=2
二、选择题
⑴.在使用TurboC2.0环境编辑程序时,运行某程序使用的菜单项为(
)
A.FILE
B.RUN
C.EDIT
D.OPTION
⑵.下列语句不具有赋值功能的是(
A.a*=b
B.x=1
C.a+b
D.a++
⑶.C语言程序中,当出现条件分支语句if~else时,
else与(
)组成配对关系
A.同一复合语句内部的if
B.在其之前任意的if
C.在其之前未配对的最近的if
D.首行位置相同的if
⑷.下列数组定义方式不正确的语句是(
A.char
x[5];
B.char
y[]={‘h’,
‘e’,
‘l’,
‘o’};
C.
int
x[10]={12,13,14,15};
D.int
y[];
⑸.
若有如下定义和语句,且0<
=i<
5,下面(
)是对数值为3数组元素的引用
a[]={1,2,3,4,5},*p,i;
p=a;
A.
*(a+2)
B.a[p-3]
C.p+2
D.a+3
⑹.
下列(
)表达式的值为真
a=5;
b=8;
c=10;
d=0
A.a*2>
8+2
B.a&
&
d
(a*2-c)||d
D.a-b<
c*d
⑺.
下列字符数组长度为5的是(
char
a[]={‘h’,
‘a’,
‘b’,
‘c’,
‘d’};
B.
b[]=
{‘h’,
‘d’,
‘\0’};
c[10]=
D.
d[6]=
‘\0’
}
⑻.
执行下列程序后,其结果为(
a[]={2,4,6,8,10,12};
*p;
*(p+4)
=2;
printf(“%d,%d\n”,*p,*(p+4));
A.0,10
B.0,2
C.2,10
D.2,2
⑼.
有下列结构体,对该结构体变量stu的成员项引用不正确的是(
struct
student
{
m;
float
n;
}
stu
*p;
stu.n
B.p->
m
C.(*p).m
D.p.stu.n
⑽.下列函数中不能用于对文件进行输入输出操作的是(
)
A.fscanf(
B.printf(
C.fgetc(
fputs(
三、判断题
1.C语言程序设计可以对计算机硬件进行操作。
(
2.在循环过程中,使用break语句和continue语句的作用是一样的。
3.在函数的定义和调用过程中,形式参数和实在参数数目可以不一致。
4.对于某一指针变量可以接收任何类型的值。
5.在C语言程序设计中,不同类型的数在计算机内存中所占空间是不同的。
6.文件指针是结构体类型,可以用表示file来定义。
7.选择结构不可以使用嵌套形式,但是循环结构可以使用嵌套形式。
8.在定义数组时,有时可以将该数组的维数省略。
9.运算符
+
*
的优先级是
优先于
优先于&
。
10.任何数组都可以实现对其进行整体操作。
三、程序填空题
1.下面是实现输出九九乘法表的程序,在画线的位置填上适当的语句,使该程序完整。
main()
i
j
k;
for(i=1;
_____________;
i++)
{bsp;
{
for(__________;
j<
=i
j++)
printf(“%d*%d=%d”,_______________);
printf(________________);
2.设计一个自定义函数,实现如下功能:
求两个数的平方和,并且返回该和。
自定义函数如下:
max(x,y)
3.设有如下面的结构体,请用C语言的语句定义出正确的结构体形式:
学生信息:
包括(姓名,性别,年龄,分数:
根据合适情况选择各项类型)
4.
根据给出的程序段,请写出正确的结果
x=1
p=1
sum=0
for
(x=1
x<
=5
x++)
p=p*x;
sum=sum+p
上面的程序段实现的功能是计算下面的式子_______________________________
;
其运行结果为_________________________________________________________。
五、阅读程序,写出下列程序段的结果
1.
*p,i;
i=100;
p=&
i;
i=*p+10;
执行完上面的语句段后,
i的值是______
2.
A,B,C,m=1,n=0;
A=(--m=n++)?
-
-m:
++n;
B=++m;
C=n--;
执行完上面的语句段后,A的值为______B的值为______C的值为______
3.
c1=10,c2=10;
printf(“c1=%d,c2=%d
\n
c1=%d”,++c1,c2++,c1--);
该程序的运行结果是_______________________________________________。
4.main()
for(i=3;
i<
10;
if(i%4==0)
continue;
else
printf(“%d,”,i);
该程序输出的结果是
_______________________________________
5.
x;
x=3;
do
printf(“%d”,x--);
}while(!
x);
该程序运行的结果是___________________________________________________________
六、编程题
1.编程实现:
从键盘上接收10个整数,并对其进行排序(要求排成升序)。
2.编程实现求下面的式子的结果
3.编程实现将文本文件file1.dat中的内容复制到文本文件file2.dat中去,同时将小写字母转换成大写字母。
参考答案
1.字母、数字、下划线
12,6
3.该变量的地址
4.同一类型;
不同类型
5.
6.注释
6.3,
1,
6
2
⑴.B
⑵.C
⑶.
C
⑷.
A
⑹.D
⑺.
A
D
⑽.B
1.对
2.不对
3.不对
4.不对
5.对
6.不对
7.不对
8.对
9.对
10.不对
四、程序填空题
1.i<
=9
j=1
i*j
“\n”
2.int
x,y;
sp;
z;
z=x*x+y*y;
return(z);
xm
[10];
sex;
age;
score;
1!
+2!
+3!
+4!
+5!
1+2+6+24+120=153
110
–1
0
c1=10
c2=10
4.3,5,6,7,9
3
1.main()
a[10];
m,n,t;
(m=0;
m<
m++)
scanf(“%d”,&
a[m]);
for(m=0;
9;
for(n=0;
n<
n++)
if(a[n]>
a[n+1])
t=a[n];
a[n]=a[n+1];
a[n+1]=t;
printf(“%d”,a[m]);
scanf(“%f”,&
if(x>
6)
y=(x+2)/(3*x+1);
y=x*x+3*x+1;
printf(“%f”,y);
3.main()
FILE
*fp1
*fp2;
ch;
fp1=fopen(“file1.dat”,
“r”);
fp2=fopen(“file1.dat”,
“w”);
ch=fgetc(fp1);
while(ch!
=EOF)
if(ch>
=’a’
ch<
=’z’)
ch=ch-32;
fputc(ch,fp2);
}bsp;
fclose(fp1);
fclose(fp2);
}