国家工信部网站备案实名:湖北自考网 为考生提供湖北自考信息服务,仅供学习交流使用,官方信息以湖北教育考试院为准。
湖北自考在线 湖北学位英语培训班
湖北网络教育报名
当前位置:湖北自考网 > 历年试题 > 工学类 >2009年7月计算机基础与程序设计自考试题

2009年7月计算机基础与程序设计自考试题

来源: 整编:湖北自考网 发表时间:2012-04-16 13:30:44 【湖北自考网:湖北自学考试门户网】

湖北自考新旧专业转接通知 2021年10月自考报考简章 2021年10月湖北自考计算机化考试报名
2021年10月湖北自考考试时间 2021年10月自考教材大纲 湖北自考电子档案查询系统入口
湖北省高等教育自学考试考生服务平台 自考毕业申请指导手册 2021年学位英语网络课程,提高通过率
湖北自考新手报名指导手册 湖北历年自考试题 湖北自考各专业介绍

全国2009年7月计算机基础与程序设计自考试题


一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的。请将其代码填写在题后的括号内。错选、多选或未选均无分。
1.内存每个基本单元都有唯一的序号,这个序号称为(    )
A.地址 B.字节
C.代码 D.字
2.计算机对编译型高级语言的执行方式是(    )
A.逐条语句边解释边执行,即解释一条就执行一条
B.将整个程序编译完成后再执行,不生成目标代码
C.将源程序编译成目标程序,执行连接后的程序
D.将源程序解释完毕后再执行
3.下列转义字符中,表示换行的是(    )
A.\0 B.\n
C.\r D.\f
4.unsigned long型数的取值范围是(    )
A.-215~(215-1 B.-231~(231-1)
C.0~(216-1) D.0~(232-1)
5.设有int a=3;表达式a十=a *=a *=a的值是(    )
A.3 B.9
C.81 D.162
6.下列四种运算符中,优先级最低的是(    )
A.>= B.! C.&& D.|| 7.下列程序段的输出结果是(    )
main( )
{int a=5,b=3,c;c=a;a=b;b=c;printf(″%d,%d\n″,a,b);}
A.3,5 B.5,3
C.5,8 D.8,3
8.执行下列程序段后,i的结果是(    )
int i=10;
switch(i){
case 9:i+=l;break;
case 10:i+=l;break;
case 11:i+=1;break;
default:i+=1;break;}
A.10 B.1l
C.12 D.13
9.下列程序段的输出结果是(    )
a=100;
do
a=a+l;
while(a>120);
printf(″%d″,a);
A.100 B.101
C.120 D.121
10.关于break和continue语句,下列说法正确的是(    )
A.在循环体中可以用break语句结束本次循环
B.在循环体中可以用continue语句结束本次循环
C.break语句仅能使用在switch结构中
D.可以使用continue语句跳出switch结构
11.若有定义int a[4]={l,2,3,4};则a[a[0]+2 * a[2]-a[3]]等于(    )
A.1 B.2
C.3 D.4
12.定义如下变量和数组,则下列程序段的输出结果是(    )
int i,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.19 B.17
C.37 D.39
13.若有定义static char str2[10],strl[ ]=″China″;欲将strl中的字符串拷贝到str2中去,下列正确的语句是(    )
A.strcpy(str2,strl) B.strcpy(strl,str2);
C.strcpy(″China″,str2) D.strl=str2;
14.下列关于C程序的说法中不正确的是(    )
A.一个源程序文件由一个或多个函数组成
B.一个C程序可以有多个名字为main的函数
C.一个C程序由一个或多个源程序文件组成
D.一个C程序必须有一个main函数
15.用数组名作为函数调用时的实参,实际上传递的是(    )
A.数组全部元素的值 B.数组第一个元素的值
C.数组的首地址 D.数组元素的个数
16.设有函数(    )
   void print _value(int * x)
  {printf(″%d\n″,+ + * x);}
执行程序段int a=25;print_value(&a);的正确输出是
A.23 B.24 C.25 D.26
17.语句float *p [6];的含义是(    )
A.p是一个数组,有6个元素,每个元素都是浮点数
B.p是一个指针,指向有6个浮点数据的数组
C.p是一个指针数组,有6个元素,每个元素都是浮点型指针
D.p是一个指针,指向一个浮点数   
18.设有下列程序(    )
# include ″stdio.h″
void main(void)
{unsigned x=1,y=2;printf(″%d\n″,~(x&y));}
该程序的运行结果是
A.-1 B.0
C.1 D.2
19.设有说明:FILE * fp;对于fp=fopen(″c:\\abc.dat″,″r+″);语句,下列说法正确的是(    )
A.打开ASCII文件读写 B.打开二进制文件读写
C.打开ASCII文件只读 D.打开二进制文件只读

二、多项选择题(本大题共5小题,每小题2分,共10分)在每小题列出的五个备选项中至少有两个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选、少选或未选均无分。
20.下列数据中等值的有(      )
A.(0.100)2 B.(0.101)2
C.(0.5)8 D.(0.625)10
E.(0.A)16
21.下列有关switch语句的说法中正确的有(      )
A.switch后面的表达式可以为任意类型
B.case后的每个常量表达式的值必须互不相同
C.若case后面有两个或两个以上的执行语句,必须加花括号
D.一个case对应一组执行语句,多个case不可共用同一组执行语句
E.default部分可有可无
22.下列对数组赋初值正确的有(      )
A.int a[ ][ ]={l,2,5,8,3,7};
B.int a[ ][3]={1,2,5,8,3,7};
C.int a[2][3]={1,2,5,8,3,7};
D.int a[2][ ]={1,2,5,8,3,7};
E.int a[3][3]={l,2,5,8,3,7};
23.若有说明:int a[ ]={1,2,3,4,5,6,7,8,9,0},i;当0≤i<10时,下列对数组元素地址正确的表示有(      )
A.&a+l B.a+l
C.a++ D.&a[i]
E.a+i
24.下列关于结构体类型的定义正确的有(      )
A.struct river B.struct river C.struct { { { int branch; int branch; int branch; char name[20]; char name[20]; char name[20]; }; } } D.struct E.struct river { { int branch; int branch; char name[20]; char name[20]; }; struct river * next;};

三、简答题(本大题共4小题,每小题4分,共16分)
25.假设字长为8位,请写出-1的原码和补码。
26.写出for语句的一般形式并分析循环体被执行的条件。
27.字符数组的初始化与字符串指针变量的初始化有什么不同?
28.语句fwrite(stu,size,n,fp);中stu、size、n和fp的含义各是什么?

四、阅读分析题(本大题共6小题,每小题5分,共30分)
29.阅读下列程序并写出运行结果。
void main (void)
{  int a=987,b=l00,x,y;
y=b;
x=a/b;
print ("%d,%d\n",x,y);}
30.阅读下列程序,若输入0,3并回车,则程序的输出结果是什么?
void main(void)
{  int x,y,z;
scanf ("%d,%d",&x,&y);
if(x<y)
{z=x;x=y;y=z;}
print ("%d,%d\n",x,y);}
31.下列程序的功能和输出结果是什么?
void main(void)
{  int k=0,total=0;
while(k<=100){
total+=k;
k++;}
print("total=%d\n",total);}
33.阅读下列程序并写出运行结果(注:A的ASCII码值为65,a的ASClI码值为97)。
void main(void)
{   int i=64;
char s[20],* p=s;
while(i++<=73){
* p=i%2==0? i+32:i;
p++;}
* p=′\0′;
printf("%s\n",s);}
34.阅读下列程序并写出运行结果。
int fib(int n)
{static int f0=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);}
void main(void)
{printf("%d\n",fib(3)+fib(3));}
35.阅读下列程序并写出程序的运行结果。
#include"string.h"
#include"malloc.h"
struct planet
{char name[20];
double weight;
struct planet * next;} * head=NULL;
void main(void)
{struct planet * p;char * planet_name[3]={"earth","venus","mars"};
double planet_weight[3]={25455700.565,11253300.437,7286320.512};
int j;for(j=0;j<3;j++)
{p=(struct planet * )malloc(sizeof(struct planet));
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中。


湖北自考网微信

湖北自考考生服务平台登录

湖北自考网网络注册学习登录

湖北自考考生微信交流群

湖北自考考生微信交流群

扫一扫加入微信交流群

与考生自由互动、并且能直接与资深老师进行交流、解答。

武汉自考专题推荐