 
             2009年4月山东自考计算机基础与程序设计试题 
课程代码:02275
一、单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内.错选、多选或未选均无分. 
1.衡量存储器的基本单位是( )  
A. bit 
B. byte
C. KB 
D. word
2.Windows操作系统是( ) 
A. 单用户、单任务 
B. 单用户、多任务 
C. 多用户、单任务 
D. 多用户、多任务
3.组成微机主存储器的是( ) 
A. CD—ROM和RAM 
B. 硬盘和RAM
C. 硬盘和CD—ROM 
D. ROM和RAM
4.下列数据中最大数是( ) 
A. (1010010)2 
B. (123.4)8 
C.(84.5)10
D. (55)16
5.在Turbo C 2.0中,运行一个程序后,要查看运行结果可按键( ) 
A. Alt+F1 
B. Alt+F5
C. Alt+F9 
D. Alt+F10
6.下列是合法C语言常量的是( ) 
A. e 
B. 7E4.0
C. E4 
D. -9.13E-30
7.设有int a=3,b=-4,c=5;表达式(a A. 0 
B. 1 
C. 3 
D. 4 
8.以指数形式输出实型数的格式说明符是( ) 
A. %u 
B. %x
C. %f 
D. %e
9.下列程序的输出结果是( ) 
main( )
{ int x=5,y;
 if(x<0)y=-1;
 if(x==0)y=0;
 y=1;
 printf(″%d″,y);
}
A. -5 
B. -1
C. 0 
D. 1
10.下列程序段的输出结果是( ) 
i=1;
while(i<3)
 {
  j=1;
  while(j<=i)
   {
    printf(″%d″,i+j);
    j++;
   }
  i++;
  printf(″n″);
 }
A. 2 3 3 4 
B. 2 3 4
C. 2 3 
D.2
3 4    3 4
11.已知str1和str2是字符数组名,下面函数中能正确地完成字符串输出的是( ) 
A. puts (str1,str2) 
B. puts (str2)
C. putchar (strl) 
D. putchar (str1,str2)
12.下列关于函数的说明中不正确的是( ) 
A. 函数名后面可以不要一对圆括号 
B. 函数参数类型必须作说明 
C. 函数形参个数可以是一个、多个或没有 
D. 空函数被调用时不做任何工作
13.若有定义:int a[5];则a数组中首元素的地址可以表示为( ) 
A. &a 
B. a+1
C. a 
D. &a[1]
14.设有char *s=″ta017bc″;则指针变量s指向的字符串在内存中所占的字节数是( ) 
A. 5 
B. 6
C. 7 
D. 9
15.下列关于结构体类型的定义正确的是( ) 
A. struct tree 
 { int branch; 
  char name[20]; 
  char * relation; 
 }; 
B. struct tree
 int branch;
 {
  char name[20],
  char * relation, };
C. struct tree 
 { int branch 
  char name[20] 
  char * relation 
 }
D. struct tree
 { int branch;
  char name[20];
  char * relation;
 }
16.下列各个位运算符的优先级从左到右依次降低的是( ) 
A. | & ˆ > > 
B. ˆ & > > |
C. ~ > > ˆ | 
D. ~ > > | ˆ
17.设有说明:int u=1,v=3,w=5;表达式:v &~~u|w的值是( ) 
A. 3 
B. 5
C. 6 
D. 8
18.设有下列程序:
#include″stdio.h″ 
main( )
{
 unsigned x=8,y=2;
 printf(″%dn″,y|~(x&y));
}
该程序的运行结果是( )
A. -1 
B. 0xff
C.127 
D. 65535
19.若有定义∶# define P(x) x * x *x+1和说明语句:int a=2;则表达式P(2)的值是( ) 
A. 6 
B. 8
C. 9 
D. 10
20.在语句fgets(str,n,p);中,下列说法不正确的是( ) 
A. str是字符指针 
B. 一次可以读n个字符 
C. str是字符数组名 
D. 一次可以读n-1个字符
22.设有int a=3,b=-5;下列表达式的值等于1的有( ) 
A. a&&b<0 
B. fabs(b)-a-1>0
C. a>b&&b<0 
D. (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.若有定义:int y[4][4],( *p)[4];及赋值p=y;则下列语句中可以输出数组元数y[2][0]的值的语句是( ) 
A. printf (″%dn″,&y[2][0]); 
B. printf (″%dn″, y[2][0]);
C. printf (″%dn″,p[2][0]); 
D. printf (″%dn″, y[2]);
E. printf (″%dn″, * (* (y+2));
25.设有关于结构体类型的定义: 
struct worker
{
 int id;
 char * name;
 float salary;
} wl={102035,″Lihua″,2560.50}, p;
下列选项中语句语法正确的有( ) 
A. p=wl; 
B. p=&wl;
C. p->id=wl->id 
D. p->id=wl.id;
E. p.salary=wl.salary;
三、简答题(本大题共4小题,每小题4分,共16分)
26.有无default对switch语句有什么不同的影响? 
27.写出do-while语句的一般形式及其执行过程. 
28.定义 char a[ ]=″I am a student.″, * str=a;等价于char a[ ]= ″I am a student.″, * str;str=a;吗?为什么? 
29.设有说明: 
struct vegetable
{
 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 ( )
{
 int a=978,x,y,z,i,j,w; 
 x=a/100;
 y=(a-100 * x)/10;
 z=a-10* y-100 * x;
 i
[1]
声明:
(一)由于考试政策等各方面情况的不断调整与变化,本网站所提供的考试信息仅供参考,请以权威部门公布的正式信息为准。
(二)本网站在文章内容来源出处标注为其他平台的稿件均为转载稿,免费转载出于非商业性学习目的,版权归原作者所有。如您对内容、版权等问题存在异议请与本站联系,我们会及时进行处理解决。