全国2009年4月自考计算机基础与程序设计试题课程代码:02275一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。衡量存储器的基本单位是()Abit BbyteCKB DWindows操作系统是()A单用户、单任务 B单用户、多任务C多用户、单任务 D多用户、多任务组成微机主存储器的是()ACD—ROM和RAM B硬盘和RAMC硬盘和CD—ROM DROM和RAM下列数据中最大数是()A(1010010)2 B(4)8C(5)10 D(55)在TurboC0中,运行一个程序后,要查看运行结果可按键()AAlt+F1 BAlt+F5CAlt+F9 DAlt+F下列是合法C语言常量的是()Ae B7E0CE4 D-13E-设有inta=3,b=-4,c=5;表达式(a> Bˆ&>>|C~>>ˆ| D~>>|ˆ设有说明:intu=1,v=3,w=5;表达式:v&~~u|w的值是()A3 B5C6 D设有下列程序:()#include″h″main(){unsignedx=8,y=2;printf(″%d\n″,y|~(x&y));}该程序的运行结果是A-1 B0xffC127 D若有定义∶#defineP(x)xxx+1和说明语句:inta=2;则表达式P(2)的值是()A6 B8C9 D在语句fgets(str,n,p);中,下列说法不正确的是()Astr是字符指针 B一次可以读n个字符Cstr是字符数组名 D一次可以读n-1个字符二、多项选择题(本大题共5小题,每小题2分,共10分)在每小题列出的五个备选项中至少有两个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选、少选或未选均无分。下列关于计算机的叙述中正确的是()ACPU是计算机系统的部件 BI/O设备不是计算机系统的部件C计算机区别于其他计算工具的本质特点是能存储数据D“裸机”是指不配置任何软件的计算机E计算机指令是控制计算机进行操作的命令设有inta=3,b=-5;下列表达式的值等于1的有()Aa&&b<0 Bfabs(b)-a-1>0Ca>b&&b<0 D(a,2,-5)==(b,2,a)Ea+b<下列关于break、goto、continue语句的说法中正确的是()Abreak语句能够用于循环语句中 Bbreak语句不能用于switch语句中Cgoto语句可以用于直接从多层循环中退出Dcontinue语句可用于跳出循环体Econtinue语句不能用于switch语句中若有定义:inty[4][4],(p)[4];及赋值p=y;则下列语句中可以输出数组元数y[2][0]的值的语句是()Aprintf(″%d\n″,&y[2][0]); Bprintf(″%d\n″,y[2][0]);Cprintf(″%d\n″,p[2][0]); Dprintf(″%d\n″,y[2]);Eprintf(″%d\n″,((y+2));设有关于结构体类型的定义:structworker{intid;charname;floatsalary;}wl={102035,″Lihua″,50},p;下列选项中语句语法正确的有()Ap=wl; Bp=&wl;Cp->id=wl->id Dp->id=id;Esalary=salary;三、简答题(本大题共4小题,每小题4分,共16分)有无default对switch语句有什么不同的影响?写出do-while语句的一般形式及其执行过程。定义chara[]=″Iama″,str=a;等价于chara[]=″Iama″,str;str=a;吗?为什么?设有说明:structvegetable{charpart;charcolor;}clove;charpart_of_vegetable[3]={″AA″,″BB″,″CC″};charseven_color={″11″,″22″,″33″,″44″,″55″,″66″,″77″};请分别写出将clove的成员part指向″BB″,成员color指向″55″的C语句。四、阅读分析题(本大题共6小题,每小题5分,共30分)阅读分析下面程序后,写出程序的运行结果。#include″h″main(){inta=978,x,y,z,i,j,w;x=a/100;y=(a-100x)/10;z=a-10y-100x;i=y>z?z:y;j=y<=z?z:y;w=100x+10i+j;printf(″%d,%d,%d,%d\n″,x,y,z,w);}阅读分析下面程序后,写出程序的运行结果。#include″h″main(){intn,m;for(n=1;n<=5;n++){for(m=1;m<=4;m++)printf(″%4d″,mn);printf(″\n″);}}阅读分析下面程序后,写出程序的运行结果。#include″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);}}阅读分析下面程序后,写出程序的运行结果。#include″h″intfun(intx){intp;if(x==0||x==1)return(3);p=x-fun(x-2);printf(″%5d″,p);return(p);}main(){fun(9);}阅读下面程序,分析cat函数的功能并写出程序的运行结果。#include″h″voidcat(chars,chart){while(s)s++;while((s++=t++)!=′\0′);}main(){charsl[80]=″computer″,s2[80]=″Pentium_″;cat(s2,s1);printf(″%s\n″,s2);}阅读分析下面部分程序:structcjd{charname[9];floatscore[2][2];}x;floatt[2][2]={5,0,0,5};intj,k;请用for循环将t数组中的元素依次赋给结构变量x中score数组的对应元素。五、程序设计题(本大题共2小题,每小题12分,共24分)请编程从键盘上输入十个整数,计算其中大于零的奇数的平均值,并输出这些大于零的奇数以及它们的平均值。有若干个学生(不超过50人)的某一门课的成绩放在文件c:\dat中,要求编程统计出90~100分,80~89分,70~79分,60~69分,0~59分的人数各有多少人。