全国自学考试计算机基础与程序设计重点试题Word格式.docx
《全国自学考试计算机基础与程序设计重点试题Word格式.docx》由会员分享,可在线阅读,更多相关《全国自学考试计算机基础与程序设计重点试题Word格式.docx(9页珍藏版)》请在冰豆网上搜索。
从键盘上正确的数据输入形式是
A.234B.234
C.2,34D.2,3,4
6.下面程序段的输出结果是
main()
{ints,p;
s=p=5;
p=++s;
p++;
++p;
printf("
%d\n"
p);
}
A.5B.6
C.7D.8
7.下面关于if语句叙述正确的是
A.只有当if语句中表达式的值等于1时,才执行if的内嵌语句。
B.只有当if语句中表达式的值非0时,才执行if的内嵌语句。
C.只有当if语句中表达式的值等于0时,才执行if的内嵌语句。
D.只有当if语句中表达式的值为假时,才执行if的内嵌语句。
8.若有inta=3,b=4,c=5,d=6,x=4;
执行下列程序段后,x的值是
if(a<
b)
{if(c==d)x=c;
elsex=d++;
}
A.4B.5
C.6D.7
9.下面循环语句中,正确的是
A.for(i=l,i<
10,i++);
B.for(i=l;
i<
10);
C.for(s=0;
i=1;
10;
i++);
D.for(s=0,i=1;
10.下面程序段的输出结果是
for(i=1;
3;
i++)
{for(j=1;
j<
=i;
j++)
printf("
%2d"
i+j);
printf("
\n"
);
}
A.2334B.234
11.若有定义shortinta[3][5];
则a数组在内存中分配的字节数是
A.8B.15
C.24D.30
12.己定义字符数组strl,下面能正确地完成字符串输入的函数是
A.gets(strl)B.puts(strl)
C.getchar(strl)D.putchar(strl)
13.设有下面程序,下面选项中正确的说法是
intd=10;
main()
{
inta=3;
Printf("
%d,%d\n"
a,d);
A.a是全局变量,d是全局变量B.a是局部变量,d是全局变量
C.a是全局变量,d是局部变量D.a是局部变量,d是局部变量
14.下面对C函数的描述,正确的是
A.C程序中有调用关系的所有模块必须放在同一个源文件中。
B.函数必须有返回值,否则不能使用函数。
C.C程序必须由一个或一个以上函数构成。
D.C函数既可以嵌套定义又可以嵌套调用。
15.下面正确定义指针数组的是
A.float(*p)[6];
B.floatp[6];
C.float(*p)(6);
D.float*p[6];
16.下面关于结构体类型变量定义不正确的是
A.structscoreB.struct
{{
intmach;
intmach;
intChinese;
intChinese;
}Li,wang;
}Li,wang;
C.structscoreD.structscore
intmath;
intmath;
};
};
Li,wang;
structscoreLi,wang;
17.下面关于共用体类型的定义正确的是
A.unionbook{inta,charb,};
B.unionpig{intw;
charplace[20];
C.unionstudent{intage;
charname[10]};
D.unionboat{charn[10],intw};
18.下面位运算符中,优先级最高的是
A.~B.&
C.|D.∧
19.下面表示关闭文件的函数是
A.fopenB.fclose
C.fgetsD.feof
20.在语句fread(stu,size,n,fp);
中,下面说法不正确的是
A.stu是内存中存放数据的首地址B.n表示读n次
C.size是一个数据块的字节数D.fp表示文件指针
二、多项选择题(本大题共5小题,每小题2分,共10分)
在每小题列出的五个备选项中至少有两个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑。
错涂、多涂、少涂或未涂均无分。
21.若有inta=8,b=3;
下面表达式值为2的有
A.a%bB.a/b
C.b>
a?
a--:
--bD.a-a/b*b
E.a-a%b*b
22.下面循环将会产生死循环的有
A.while.
(1);
B.do{}while(0);
C.do{}while(I);
D.for(k=1;
k>
-10;
k++);
E.for(k=1;
k=10;
k++,k--);
23.关于变量的存储,下面说法正确的有
A.auto型变量存储在动态存储区
B.static型变量存储在静态存储区
C.static型变量是全局静态变量
D.若定义的全局变量缺省存储类别,则系统默认是auto型
E.动态存储区的变量在退出函数时释放所占的内存单元
24.设有二维数组inta[4][3];
下列表示数组元素a[0][2]地址的有
A.a[2]B.*a
C.*a+2D.a[0]+2
E.&
a[0][2]
25.下面关于结构体定义正确的有
A.struct1__num
{longunm;
structl__num*next;
}num1,*pl;
pl=&
num1;
B.structanimal
{charname[30],floatweight,}rabbits;
C.structstar
{intbh,charname[20],}my__star;
my__star.name="
moon"
;
D.struct{charx[20];
chary[30];
intu;
}xl,yl;
E.structfood
{intcode;
charname[30];
structfood*p;
};
structfood*tail;
非选择题部分
用黑色字迹的签字笔或钢笔将答案写在答题纸上,不能答在试题卷上。
三、简答题(本大题共4小题,每小题4分,共16分)
26.C语言中整型常量有几种形式,他们是如何表示的?
27.C语言中的运算符“=”与数学中“=”的意义相同吗?
为什么?
28.设有说明:
unsignedx=10;
试用两种方法写出通过仅对X进行位运算操作和赋值操作使x的值为0的C语句(不能用x=0;
这种C语句)。
29.设有下面说明:
structflower{char*part;
char*color;
}mum;
char*part__of__flower[3]={"
花"
"
茎"
叶"
char*seven__color[7]={"
赤"
"
橙"
黄"
绿"
青"
蓝"
"
紫"
试写出将mum的成员part定义为"
、成员color定义为"
的C语句。
四、阅读分析题(本大题共6小题,每小题5分,共3O分)
30.阅读下面程序,写出运行结果
inta=456,b=l00,x,y;
x=a/b;
y=a%b;
x=%d,y=%d\n"
x,y);
31.阅读下面程序,若输入0,3,则程序的运行结果是什么?
voidmain(void)
intx,y,z;
scanf("
%d,%d"
&
x,&
y);
if(x<
y)
z=x;
x=y;
y=z;
%d,%dkn"
32.阅读下面程序,写出运行结果
ints=0,t=1,i;
i<
5;
t=t*i;
s+=t;
s=%d\n"
s);
33.阅读下面程序,写出运行结果
inta[5][5],i,j;
for(i=0;
for(j=0;
if(i==j||j==4-i)
a[i][j]=0;
else
a[i][j]=l;
j<
5;
%3d"
a[i][j]);
\n"
);
34.阅读下面程序,写出运行结果
intcheck(intn,intk)
{intm;
do
m=n%10:
n=n/10;
}while(k--);
return(m);
inty=2345,j;
for(j=1;
4;
j=%d,numberis%d\n"
j,check(y,j));
35.阅读下面程序,写出运行结果
#defineM2
#defineNM+4
inta[]={10,20,30};
intsubl(intx,inty,intz)
intt;
t=x<
y?
x:
y;
a[1]=t<
z?
t:
z;
returnt;
intk:
k=sub1(M*N,*(a+1),*(a+2));
%d,%d\n"
,k,*(a+1));
五、程序设计题(本大题共2小题,每小题12分,共24分)
36.从键盘上输入16个整数,组成4行4列的数组,打印出下三角数组。
37.设有7×
7浮点型数组x(7×
7表示7行7列)。
要求:
(1)从键盘上输入49个浮点数对数组x赋初值。
(2)计算数组x每一行的累加和以及每一列正数的平均值(假设每列中至少有一个正数)。
(3)将数组x各行的累加和以及各列正数的平均值依次写到当前目录下的二进制文件array.txt中。