《全国2002年4月高等教育自学考试计算机软件基础(一)试题历年试卷(共6页).doc》由会员分享,可在线阅读,更多相关《全国2002年4月高等教育自学考试计算机软件基础(一)试题历年试卷(共6页).doc(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上全国2002年4月高等教育自学考试计算机软件基础(一)试题课程代码:02243一、单项选择题(本大题共40小题,每小题1分,共40分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。1.面向算法的计算机语言是( ) A.可视化语言 B.高级语言 C.汇编语言 D.机器语言2.以下运算符使用错误的是( ) A.-k B.(a+b)- C.+j D.i+3.关于C语言程序的正确叙述是( ) A.main()所在行的末尾必须要有分号(;) B.主函数的函数体不一定用花括号()括起来 C.一个完整的C程序可以没有任何函数 D.C语言
2、程序的简单语句必须用分号(;)作为语句的结束符4.已知:int i=5,a;当a=i+;语句执行后,变量i和a的值分别是( ) A.5 5 B.5 6 C.6 5 D.6 65.用C语言表示算式,错误的表达式是( ) A.a/(c*d)*b B.a*b/c/d C.a*b/c*d D.a*b/(c*d)6.下列程序的运行结果是 #include main() int x=10,y=3; printf(%dn,y=x/y); A.0 B.1 C.3 D.3.37.下列程序的运行结果是( ) # include main() int x=023; printf(%dn,-x); A.18 B.19
3、 C.22 D.238.C语言中,关于scanf()函数正确的叙述是( ) A.利用scanf()函数可以给变量提供数据 B.scanf()函数具有计算功能 C.scanf()函数就是输入语句 D.scanf()函数只能用在主函数中9.C语言中,已知a的ASCII码为97,A的ASCII码为65。又已知,int,c;char i;scanf(%c,%d,&c,&i);语句执行后,若要使c的值为101,i的值为D,正确的数据输入为(注:为回车符号) ( ) A.101,68 B.101,D C.e,68 D.e,D10.已知:int x=100,y; y=x80? 60:70; 则y的值是( )
4、 A.60 B.70 C.80 D.10011. C语言中,已知int b=2;则下列表达式值为1的是( ) A.b1 B.bb C.b1 D.!(b=1)12.C语言中,下列语句运算符的执行次序是( ) x=!a=b; A.先执行=,再执行!,再执行= B.先执行=,再执行!,再执行= C.先执行!,再执行=,再执行= D.执行次序是随机的13.下列程序的功能是( ) #include main() char c; c=getchar(); if(c=a&c=z)c=c-32; putchar(c); A.将大写字母转换成小写字母 B.将小写字母转换成大写字母 C.将大小写字母互换 D.以上
5、均错误14.C语言中,关于while与do-while语句正确的叙述是( ) A.允许从do-while外部转到循环体内 B.do-while的循环体不能是复合语句 C.while的循环控制条件比do-while的循环控制条件严格 D.do-while的循环体至少无条件执行一次15.下列程序段执行后,k的值是( ) int k=1; while (k+10); A.9 B.10 C.11 D.不定16.下列C语言程序运行时输入2473,则输出结果是( ) (注:为回车符号) #include main() int cx; while (cx=getchar()!=n) switch(cx-2)
6、 case 0: case 1:putchar(cx+4); case 2:putchar(cx+4); break; case 3:putchar(cx+3);A. B. C.D. default:putchar(cx+2); 17.下列程序的运行结果是( ) #include main() int i,j,x=0; for (i=0;i2;i+) x+; for (j=0;j=3;j+) if(j%2)continue; x+; x+; printf(x=%dn,x); A.x=4 B.x=6 C.x=8 D.x=1218.已知:int i=5,s;则s=i-;等价于( ) A.s=i;i
7、=i-1; B.i=i-1;s=i; C.s=i;s=s-1 D.s=i;s=i-119.C语言中关于数组的正确叙述是( ) A.数组名代表数组中的全部元素 B.若有定义int a10,说明该数组元素的最大下标是10 C.定义数组时可以同时初始化该数组 D.初始化数组时必须使所赋初值的个数与数组长度相等20.已知:主函数中,int a3=4;数组元素a1的值是( ) A.0 B.1 C.4 D.不确定21.下列程序的运行结果是( ) #include main() char *b=ABCDEFGH; printf(%c,b5); A.E B.F C.EFGH D.FGH22.下列程序的运行结果
8、是( ) #include int d=1; fun(p) int p; int d=5; d+=p+; printf(%d,d); main() int a=3; fun(a); d+=a+; printf(%dn,d); A.44 B.84 C.95 D.以上结果均不正确23.函数strcat(strcpy(str1,str2),str3)的功能是( ) A.将串str1复制到串str2中后,再连接到串str3后 B.将串str1连接到串str2中后,再复制到串str3后 C.将串str2复制到串str1中后,再将str3连接到串str1之后 D.将串str2复制到串str1中后,再将st
9、r1连接到串str3之后24.对C语言函数的正确描述是( ) A.C语言程序总是从第一个定义的函数开始执行 B.C语言程序中,要调用的函数必须放在main()函数中定义 C.C语言程序中的main()函数必须放在程序的开始部分 D.C语言程序总是从main()函数开始执行25.已知:int a,* p;如果p指向a,则( ) A.a与p存储单元的地址相同 B.a与p的值相同 C.a的值是p的地址 D.p的值是a的地址26.指针变量作为形参时,下列叙述正确的是( ) A.实参可以是同类型的指针变量 B.实参可以是同类型的常数 C.实参可以是关系表达式 D.实参可以是算术表达式27.已知:int
10、a=1,3,5,7,9,*ip=a;表达式*ip+2的值是( ) A.1 B.3 C.5 D.728.下列程序段的输出结果是( ) int a=1,-2,3,-4,*ip=a; ip+; printf%d,(*ip)+); A.-3 B.-2 C.-1 D.329.C语言中,能够将数据写入磁盘文件的函数是( ) A.printf()函数 B.scanf()函数 C.fprintf()函数 D.fscanf()函数30.下列程序段的功能是( ) FILE *fp; fp=fopen (test.dat,ab); A.以读方式打开文本文件test.dat B.以读写方式打开二进制文件test.da
11、t C.以追加数据方式打开文本文件test.dat D.以追加数据方式打开二进制文件test.dat31.FoxPro中,物理删除当前数据库中全部记录的命令是( ) A.CLEAR B.DELETE C.RECALL D.ZAP32.FoxPro中,统计当前数据库文件中满足某一条件的记录的个数,应使用命令( ) A.AVERAGE B.COUNT C.SUM D.TOTAL33.FoxPro中,将两个数据库连接生成一个新的数据库,应使用命令( ) A.APPEND B.JOIN C.REPLACE D.UPDATE34.一个FoxPro数据库中有“姓名(C,8)”、“工资(N,10,2)”二个
12、字段,仅显示当前记录中“姓名”和“工资”字段的值,应使用命令( ) A.LIST FIELD姓名,工资 B.DISPLAY 姓名+工资 C.?姓名+工资 D.?姓名+STR(工资,10,2)35.关于FoxPro过程文件的正确叙述是( ) A.一个过程文件中只能有一个过程 B.过程文件的文件名命名方法与程序文件名的命名方法不同 C.过程文件可以独立执行 D.只有打开过程文件,才能执行过程文件中的过程36.使用结构建立链表时,每个结点是一个结构类型的数据,要动态分配结点的空间应该使用函数( ) A.calloc(size) B.free(p) C.malloc(size) D.sizeof(st
13、ruct)37.数据的逻辑结构分为两大类,它们是( ) A.索引结构和非索引结构 B.链式结构和顺序结构 C.层次结构和网状结构 D.线性结构和非线性结构38.退栈运算( ) A.只能在栈顶进行 B.只能在栈底进行 C.可以在栈顶或栈底进行 D.可以在栈中间的任意位置进行39.在Q(0:m-1)的向量空间中建立一个循环队列,若队头指针为front,队尾指针为rear,当队列不满时,则将x入队的操作步骤是( ) A.front=front+1;Qfront=x; B.front=(front+1)%m;Qfront=x; C.rear=rear+1;Qrear=x; D.rear=(rear+1
14、)%m;Qrear=x;40.使用直接插入排序算法对m个元素进行排序时,在排序过程中要使用临时工作单元暂存待插入的元素,算法中使用临时工作单元的数量是( ) A.0 B.1 C.m/2 D.m二、填空题(每空1分,共10分)41.在C语言中调用函数时,如果形参是简单变量,对应的实参可以是变量、数组元素和_。当形参和实参都是变量时,数据的传递是_,即单向传递。42.执行下列程序段后,*(p+1)的值是_,*(p+2)的值是_。char c3=ab,*p;P=c;43.C语言中进行字符串比较的库函数是_;将字符串中大写字母转换为小写字母的库函数是_。44.数据库管理技术的发展过程中,比较成熟的数据
15、结构化模型先后有层次模型、_和_三种。45.已知: struct int day;char mouth;int year;a,*b; b=&a; 可用a.day引用结构中的成员day,写出通过变量b引用成员a.day的其它两种形式,它们是_和_。三、阅读程序题(每小题4分,共32分)46.下列invert函数的功能是将字符串str的内容逆序排列,填空完成程序。 #include void invert(char str) int i,j,k; for (i=0,j=strlen(str) _;ij;i+) k=stri;stri=strj;strj=k; _; 47.下列程序的功能是输出如下图
16、案(最下一行左侧无空格),填空完成程序。 * * * * #include main() _; for (i=0;i=3;i+) for(j=0;j=_;j+) printf( ); for (k=0;k=_;k+) printf(*); _; 48.写出下列程序运行结果。 #include main() int a5=1,2,3,4,5,i,t; for (i=0;i2;i+) t=ai; ai=a4-i; a4-i=t; for (i=0;i5;i+) printf(%d,ai); 结果:49.执行下列程序时,如果输入asbr,写出运行结果。 #include void fun(t) ch
17、ar t; char c;int i,j; for(i=strlen(t)-1;i;i-) for(j=0;ji;j+) if(tjtj+1) c=tj; tj=tj+1; tj+1=c; main() char s81; printf(n Please enter a character string:); gets(s); fun(s); printf(%sn,s); 结果:50.写出下列程序的运行结果。 #include main() int a=1,-2,3,-4,5,*ip=a; a1=*ip+; printf(%d,%d,a1,*+ip); 结果:51.已知两个数据库OLD.DBF
18、和NEW.DBF的结构相同,记录个数相同,NAME字段的内容也相同,下列程序以NAME字段为关键字表达式,用NEW.DBF中的JIBENGZ字段值更新OLD.DBF中的JIBENGZ字段值,填空完成程序。 SET TALK OFF SELE 1 USE OLD INDEX ON NAME TO NS _ USE NEW INDEX ON NAME TO NN SELE 1 _ WITH B-JIBENGZ DISP ALL SET TALK ON RETURN52.下列函数的功能是:在指定数组中查询与变量x相同的值,若数组中某个元素的值等于x的值,则返回该元素的下标,如果查不到返回-1。填空完
19、成程序。 srch(a,n,x) int a; int n; int i; int x; for (i=0;in;i+); if(_) return(_); return(-1); 53.下列程序的功能是:输入一行字符串,按输入字符的逆序建立一个链表,即先输入的字符位于链表尾部,然后再按输入的相反顺序输出,并释放全部结点。按回车后输入过程结束。填空完成程序。(例如,当输入的字符顺序是a、b、c、y、z时,建立的链表如图所示,输出结果是:zycha。)#include # define getnode(type)(type*)malloc(sizeof(type)main() struct no
20、de char info;struct node *link; *top,*p; char c; top=NULL; while(c=getchar()_) p=getnode(struct node); p-info=c; p-link=top; top=p;while(top) _; top=top-link; putchar(p-info); free(p); 四、编写程序题(每小题9分,共18分)54.某学校一年级有n个级,每班有m名学生。编制C语言程序,从键盘输入每个学生1门课的成绩,计算并输出年级最高分及全体学生的平均分。55.已知数据库K1.DBF,库结构为: 编号(N,8) 姓
21、名(C,8) 基本工资(N,8,1) 婚否(L,1)编写FoxPro程序,使用SCAN循环语句分别找出未婚人当中的最高的基本工资和最低的基本工资。全国2002年4月高等教育自学考试计算机软件基础(一)试题参考答案课程代码:02243一、单项选择题(每小题1分,共40分) 1.B 2.B 3.D 4.C 5.C 6.C 7.A 8.A 9.C 10.A 11.A 12.C 13.B 14.D 15.C 16.B 17.C 18.A 19.C 20.A 21.B 22.B 23.C 24.D 25.D 26.A 27.B 28.B 29.C 30.D 31.D 32.B 33.B 34.D 35.
22、D 36.C 37.D 38.A 39.D 40.B二、填空题(每空1分,共10分) 41.表达式 值的传递 42.b 0(或0) 43.strcmp strlwr 44.网状模型 关系模型 45.(*b)day b-day三、阅读程序题(每小题4分,共32分) 46.-1 j-(或j=j-1,或j-=1,或-j) 47.int i, j,k 2-i 2*i printf(n) 48.5,4,3,2,1 49.srba 50.1,3 51.SELECT2UPDATE ON NAME FROM B REPLACE JIBENGZ 52.ai=x(或ai-x=0) i53.!=n p=top四、编
23、写程序题(每小题9分,共18分) 54.参考程序: #include main() int i,j,n,m; float fc,max=0,av,sum=0; scanf(%d,%d,&n,&m); for(i=1;i=n;i+) for(j=1;j=m;j+) scanf(%f,&fc); sum+=fc; if(maxfc)max=fc; av=sum/(n*m); printf(%f,%f,max,av); 参考程序一:#includemain() int n,m; float a1000,i,max=0,num=0,av; printf(nnplease in put n=); scanf(%d,&n); printf(please in put m=); scanf(%d,&m); printf(please in put student sorce:n); for(i=0;in*m;i+) scanf(%f,&ai); max=a0; if(maxM.AND.NOT.婚否 M=基本工资 ENDIF IF 基本工资N.AND.NOT.婚否 N=基本工资 ENDIF ENDSCAN ? M, N USE RETURN专心-专注-专业