全国自考计算机基础与程序设计历年真题珍藏版.docx
- 文档编号:6894720
- 上传时间:2023-01-12
- 格式:DOCX
- 页数:116
- 大小:154.35KB
全国自考计算机基础与程序设计历年真题珍藏版.docx
《全国自考计算机基础与程序设计历年真题珍藏版.docx》由会员分享,可在线阅读,更多相关《全国自考计算机基础与程序设计历年真题珍藏版.docx(116页珍藏版)》请在冰豆网上搜索。
全国自考计算机基础与程序设计历年真题珍藏版
全国自考计算机基础与程序设计历年真题
全国2009年7月自考计算机基础与程序设计试题
课程代码:
02275
一、单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要求的。
请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.内存每个基本单元都有唯一的序号,这个序号称为()
A.地址B.字节
C.代码D.字
2.计算机对编译型高级语言的执行方式是()
A.逐条语句边解释边执行,即解释一条就执行一条
B.将整个程序编译完成后再执行,不生成目标代码
C.将源程序编译成目标程序,执行连接后的程序
D.将源程序解释完毕后再执行
3.下列转义字符中,表示换行的是()
A.\0B.\n
C.\rD.\f
4.unsignedlong型数的取值范围是()
A.-215~(215-1)B.-231~(231-1)
C.0~(216-1)D.0~(232-1)
5.设有inta=3;表达式a十=a*=a*=a的值是()
A.3B.9
C.81D.162
6.下列四种运算符中,优先级最低的是()
A.>=B.!
C.&&D.||
7.下列程序段的输出结果是()
main()
{
inta=5,b=3,c;
c=a;a=b;b=c;
printf(″%d,%d\n″,a,b);
}
A.3,5B.5,3
C.5,8D.8,3
8.下列程序段所表示的逻辑关系是()
if(a
if(c==d)
x=l;
else
x=2;
A.x=
B.x=
C.x=
D.x=
9.执行下列程序段后,i的结果是()
inti=10;
switch(i){
case9:
i+=l;break;
case10:
i+=l;break;
case11:
i+=1;break;
default:
i+=1;break;
}
A.10B.1l
C.12D.13
10.下列程序段的输出结果是()
a=100;
do
a=a+l;
while(a>120);
printf(″%d″,a);
A.100B.101
C.120D.121
11.关于break和continue语句,下列说法正确的是()
A.在循环体中可以用break语句结束本次循环
B.在循环体中可以用continue语句结束本次循环
C.break语句仅能使用在switch结构中
D.可以使用continue语句跳出switch结构
12.若有定义inta[4]={l,2,3,4};则a[a[0]+2*a[2]-a[3]]等于()
A.1B.2
C.3D.4
13.定义如下变量和数组,则下列程序段的输出结果是()
inti,x[3][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++)
if(i%2!
=1)printf(″%d″,x[i][i]);
A.19B.17
C.37D.39
14.若有定义staticcharstr2[10],strl[]=″China″;欲将strl中的字符串拷贝到str2中去,下列正确的语句是()
A.strcpy(str2,strl);B.strcpy(strl,str2);
C.strcpy(″China″,str2);D.strl=str2;
15.下列关于C程序的说法中不正确的是()
A.一个源程序文件由一个或多个函数组成
B.一个C程序可以有多个名字为main的函数
C.一个C程序由一个或多个源程序文件组成
D.一个C程序必须有一个main函数
16.用数组名作为函数调用时的实参,实际上传递的是()
A.数组全部元素的值B.数组第一个元素的值
C.数组的首地址D.数组元素的个数
17.设有函数()
voidprint_value(int*x)
{printf(″%d\n″,++*x);}
执行程序段inta=25;print_value(&a);的正确输出是
A.23B.24
C.25D.26
18.语句float*p[6];的含义是()
A.p是一个数组,有6个元素,每个元素都是浮点数
B.p是一个指针,指向有6个浮点数据的数组
C.p是一个指针数组,有6个元素,每个元素都是浮点型指针
D.p是一个指针,指向一个浮点数
19.设有下列程序()
#include″stdio.h″
voidmain(void)
{
unsignedx=1,y=2;
printf(″%d\n″,~(x&y));
}
该程序的运行结果是
A.-1B.0
C.1D.2
20.设有说明:
FILE*fp;对于fp=fopen(″c:
\\abc.dat″,″r+″);语句,下列说法正确的是
()
A.打开ASCII文件读写B.打开二进制文件读写
C.打开ASCII文件只读D.打开二进制文件只读
二、多项选择题(本大题共5小题,每小题2分,共10分)
在每小题列出的五个备选项中至少有两个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选、少选或未选均无分。
21.下列数据中等值的有()
A.(0.100)2B.(0.101)2
C.(0.5)8D.(0.625)10
E.(0.A)16
22.下列有关switch语句的说法中正确的有()
A.switch后面的表达式可以为任意类型
B.case后的每个常量表达式的值必须互不相同
C.若case后面有两个或两个以上的执行语句,必须加花括号
D.一个case对应一组执行语句,多个case不可共用同一组执行语句
E.default部分可有可无
23.下列对数组赋初值正确的有()
A.inta[][]={l,2,5,8,3,7};
B.inta[][3]={1,2,5,8,3,7};
C.inta[2][3]={1,2,5,8,3,7};
D.inta[2][]={1,2,5,8,3,7};
E.inta[3][3]={l,2,5,8,3,7};
24.若有说明:
inta[]={1,2,3,4,5,6,7,8,9,0},i;当0≤i<10时,下列对数组元素地址正确的表示有()
A.&a+lB.a+l
C.a++D.&a[i]
E.a+i
25.下列关于结构体类型的定义正确的有()
A.structriverB.structriverC.struct
{{{
intbranch;intbranch;intbranch;
charname[20];charname[20];charname[20];
};}}
D.structE.structriver
{{
intbranch;intbranch;
charname[20];charname[20];
};structriver*next;
};
三、简答题(本大题共4小题,每小题4分,共16分)
26.假设字长为8位,请写出-1的原码和补码。
27.写出for语句的一般形式并分析循环体被执行的条件。
28.字符数组的初始化与字符串指针变量的初始化有什么不同?
29.语句fwrite(stu,size,n,fp);中stu、size、n和fp的含义各是什么?
四、阅读分析题(本大题共6小题,每小题5分,共30分)
30.阅读下列程序并写出运行结果。
voidmain(void)
{inta=987,b=l00,x,y;
y=b;
x=a/b;
print("%d,%d\n",x,y);
}
31.阅读下列程序,若输入0,3并回车,则程序的输出结果是什么?
voidmain(void)
{intx,y,z;
scanf("%d,%d",&x,&y);
if(x {z=x;x=y;y=z;} print("%d,%d\n",x,y); } 32.下列程序的功能和输出结果是什么? voidmain(void) {intk=0,total=0; while(k<=100){ total+=k; k++;} print("total=%d\n",total); } 33.阅读下列程序并写出运行结果(注: A的ASCII码值为65,a的ASClI码值为97)。 voidmain(void) {inti=64; chars[20],*p=s; while(i++<=73){ *p=i%2==0? i+32: i; p++; } *p=′\0′; printf("%s\n",s); } 34.阅读下列程序并写出运行结果。 intfib(intn) { staticintf0=0,fl=l,i,f; for(i=3;i<=n;i++){ f=f0+fl;f0=fl;fl=f; printf("f0=%d,fl=%d\n",f0,fl); } return(f); } voidmain(void) { printf("%d\n",fib(3)+fib(3)); } 35.阅读下列程序并写出程序的运行结果。 #include"string.h" #include"malloc.h" structplanet { charname[20]; doubleweight; structplanet*next; }*head=NULL; voidmain(void) { structplanet*p; char*planet_name[3]={"earth","venus","mars"}; doubleplanet_weight[3]={25455700.565,11253300.437,7286320.512}; intj; for(j=0;j<3;j++) { p=(structplanet*)malloc(sizeof(structplanet)); strcpy(p->name,planet_name[j]); p->weight=planet_weight[j]; p->next=head; head=p; } p=p->next; printf("%s,%lf\n",p->name,p->weight); } 五、程序设计题(本大题共2小题,每小题12分,共24分) 36.从键盘上输入20个整数,求其中正数的累加和并输出结果。 37.在文本文件c: \pxl.dat中有10个实型数据(每两个数之间用逗号隔开),编程将这10个数按从小到大排序后,写到文本文件c: \xpl.dat中。 全国2009年4月自考计算机基础与程序设计试题 课程代码: 02275 一、单项选择题(本大题共20小题,每小题1分,共20分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。 错选、多选或未选均无分。 1.衡量存储器的基本单位是() A.bitB.byte C.KBD.word 2.Windows操作系统是() A.单用户、单任务B.单用户、多任务 C.多用户、单任务D.多用户、多任务 3.组成微机主存储器的是() A.CD—ROM和RAMB.硬盘和RAM C.硬盘和CD—ROMD.ROM和RAM 4.下列数据中最大数是() A.(1010010)2B.(123.4)8 C.(84.5)10D.(55)16 5.在TurboC2.0中,运行一个程序后,要查看运行结果可按键() A.Alt+F1B.Alt+F5 C.Alt+F9D.Alt+F10 6.下列是合法C语言常量的是() A.eB.7E4.0 C.E4D.-9.13E-30 7.设有inta=3,b=-4,c=5;表达式(a a: b&&c<0的值是() A.0B.1 C.3D.4 8.以指数形式输出实型数的格式说明符是() A.%uB.%x C.%fD.%e 9.下列程序的输出结果是() main() {intx=5,y; if(x<0)y=-1; if(x==0)y=0; y=1; printf(″%d″,y); } A.-5B.-1 C.0D.1 10.下列程序段的输出结果是() i=1; while(i<3){ j=1; while(j<=i){ printf(″%d″,i+j); j++; } i++; printf(″\n″); } A.2334B.234 C.23D.2 3434 11.已知str1和str2是字符数组名,下面函数中能正确地完成字符串输出的是() A.puts(str1,str2)B.puts(str2) C.putchar(strl)D.putchar(str1,str2) 12.下列关于函数的说明中不正确的是() A.函数名后面可以不要一对圆括号 B.函数参数类型必须作说明 C.函数形参个数可以是一个、多个或没有 D.空函数被调用时不做任何工作 13.若有定义: inta[5];则a数组中首元素的地址可以表示为() A.&aB.a+1 C.aD.&a[1] 14.设有char s=″\ta\017bc″;则指针变量s指向的字符串在内存中所占的字节数是 () A.5B.6 C.7D.9 15.下列关于结构体类型的定义正确的是() A.structtreeB.structtree {intbranch;{intbranch; charname[20];charname[20], char relation;char relation, };}; C.structtreeD.structtree {intbranch{intbranch; charname[20]charname[20]; char relationchar relation; }} 16.下列各个位运算符的优先级从左到右依次降低的是() A.|&ˆ>>B.ˆ&>>| C.~>>ˆ|D.~>>|ˆ 17.设有说明: intu=1,v=3,w=5;表达式: v&~~u|w的值是() A.3B.5 C.6D.8 18.设有下列程序: () #include″stdio.h″ main() { unsignedx=8,y=2; printf(″%d\n″,y|~(x&y)); } 该程序的运行结果是 A.-1B.0xff C.127D.65535 19.若有定义∶#defineP(x)x x x+1和说明语句: inta=2;则表达式P (2)的值是() A.6B.8 C.9D.10 20.在语句fgets(str,n,p);中,下列说法不正确的是() A.str是字符指针B.一次可以读n个字符 C.str是字符数组名D.一次可以读n-1个字符 二、多项选择题(本大题共5小题,每小题2分,共10分) 在每小题列出的五个备选项中至少有两个是符合题目要求的,请将其代码填写在题后的括号内。 错选、多选、少选或未选均无分。 21.下列关于计算机的叙述中正确的是() A.CPU是计算机系统的部件 B.I/O设备不是计算机系统的部件 C.计算机区别于其他计算工具的本质特点是能存储数据 D.“裸机”是指不配置任何软件的计算机 E.计算机指令是控制计算机进行操作的命令 22.设有inta=3,b=-5;下列表达式的值等于1的有() A.a&&b<0B.fabs(b)-a-1>0 C.a>b&&b<0D.(a,2,-5)==(b,2,a) E.a+b<0 23.下列关于break、goto、continue语句的说法中正确的是() A.break语句能够用于循环语句中 B.break语句不能用于switch语句中 C.goto语句可以用于直接从多层循环中退出 D.continue语句可用于跳出循环体 E.continue语句不能用于switch语句中 24.若有定义: inty[4][4],( p)[4];及赋值p=y;则下列语句中可以输出数组元数y[2][0]的值的语句是() A.printf(″%d\n″,&y[2][0]);B.printf(″%d\n″,y[2][0]); C.printf(″%d\n″,p[2][0]);D.printf(″%d\n″,y[2]); E.printf(″%d\n″, ( (y+2)); 25.设有关于结构体类型的定义: structworker { intid; char name; floatsalary; }wl={102035,″Lihua″,2560.50}, p; 下列选项中语句语法正确的有() A.p=wl;B.p=&wl; C.p->id=wl->idD.p->id=wl.id; E.p.salary=wl.salary; 三、简答题(本大题共4小题,每小题4分,共16分) 26.有无default对switch语句有什么不同的影响? 27.写出do-while语句的一般形式及其执行过程。 28.定义chara[]=″Iamastudent.″, str=a;等价于 chara[]=″Iamastudent.″, str; str=a; 吗? 为什么? 29.设有说明: structvegetable { char part; char color; }clove; char part_of_vegetable[3]={″AA″,″BB″,″CC″}; char seven_color={″11″,″22″,″33″,″44″,″55″,″66″,″77″}; 请分别写出将clove的成员part指向″BB″,成员color指向″55″的C语句。 四、阅读分析题(本大题共6小题,每小题5分,共30分) 30.阅读分析下面程序后,写出程序的运行结果。 #include″stdio.h″ main() { inta=978,x,y,z,i,j,w; x=a/100; y=(a-100 x)/10; z=a-10 y-100 x; i=y>z? z: y; j=y<=z? z: y; w=100 x+10 i+j; printf(″%d,%d,%d,%d\n″,x,y,z,w); } 31.阅读分析下面程序后,写出程序的运行结果。 #include″stdio.h″ main() { intn,m; for(n=1;n<=5;n++) { for(m=1;m<=4;m++) printf(″%4d″,m n); printf(″\n″); } } 32.阅读分析下面程序后,写出程序的运行结果。 #include″stdio.h″ main() { intarr[10],i,k=0; for(i=0;i<10;i++) arr[i]=i; for(i=1;i<=4;i++) { k+=arr[i]+i; printf(″%5d″,k); } } 33.阅读分析下面程序后,写出程序的运行结果。 #include″stdio.h″ intfun(intx) { intp; if(x==0||x==1) return(3); p=x-fun(x-2); printf(″%5d″,p); return(p); } main() { fun(9); } 34.阅读下面程序,分析cat函数的功能并写出程序的运行结果。 #include″stdio.h″ voidcat(char s,char t) { while( s)s++; while(( s++= t++)! =′\0′); } main() { charsl[80]=″computer″,s2[80]=″Pentium_″; cat(s2,s1); printf(″%s\n″,s2); } 35.阅读分析下面部分程序: structcjd { charname[9]; floatscore[2][2]; }x; floatt[2][2]={70.5,65.0,83.0,92.5}; intj,k; 请用for循环将t数组中的元素依次赋给结构变量x中score数组的对应元素。 五、程序设计题(本大题共2小题,每小题12分,共24分) 36.请编程从键盘上输入十个整数,计算其中大于零的奇数的平均值,并输出这些大于零的奇数以及它们的平均值。 37.有若干个学生(不超过50人)的某一门课的成绩放在文件c: \cj.dat中,要求编程统计出90~100分,80~89分,70~79分,60~69分,0~59分的人数各有多少人。 全国2008年7月自考计算机基础与程序设计试卷 课程代码: 02275 一、单项选择题(本大题共20小题,每小题1分,共20分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。 错选、多选或未选均无分。 1.一个完整的计算机系统应该包括( ) A.主机和外设B.主机和操作系统 C.硬件系统和系统软件D.硬件系统和软件系统 2.若用八位二进制表示一个整数,则-4在计算机中的表示是( ) A.11111100B.11111011 C.10000100D.00000100 3.下列转义字符中,表示回车的是( ) A.\0B.\n C.\rD.\f 4.若定义doubled;则d在内存中分配的字节数是( ) A.1个B.2个 C.4个D.8个 5.下列表达式中运算结果为3的表达式是( ) A.(-7)%4B.7/4+2 C.7/4*4-4D.8/3+8/3 6.设有inta=3,b=-4,c=5;表达式a++-c+b++的值是( ) A.-6B.-5 C.-4D.-3 7.在printf语句中,格式说明符u表示( ) A.以十进制带符号形式输出整数 B.以十六进制带符号形式输出整数 C.以十进制无符号形式输出整数 D.以十六进制无符号形式输出整数 8.若有inta=3,b=4,c
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 全国 自考 计算机 基础 程序设计 历年 珍藏