全国计算机等级考试二级笔试试卷基础部分和C语言程序设计1998年4(2)

2019-04-08 17:26

上面程序片段的输出结果是

A)3 B)4 C)6 D)12 (45) 函数调用:strcat(strcpy(str1,str2),str3)的功能是

A) 将串str1复制到串str2中后再连接到串str3之后 B) 将串str1连接到串str2之后再复制到串str3之后

C) 将串str2复制到串str1中后再将串str3连接到串str1之后 D) 将串str2连接到串str1之后再将串str1复制到串str3中

(46) 以下对C语言函数的有关描述中,正确的是

A) 在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参 B) C函数既可以嵌套定义又可以递归调用 C) 函数必须有返回值,否则不能使用函数

D) C程序中有调用关系的所有函数必须放在同一个源程序文件中 (47) 以下叙述中不正确的是

A) 在C中,函数中的自动变量可以赋初值,每调用一次,赋一次初值。 B) 在C中,在调用函数时,实在参数和对应形参在类型上只需赋值兼容。 C) 在C中,外部变量的隐含类别是自动存储类别。 D) 在C中,函数形参可以说明为register变量。

(48) 以下程序的输出结果是

#include

subl(char a,char b) {char c; c=a;a=b;b=c;} sub2(char* a,char b) {char c; c=*a;*a=b;b=c;}

sub3(char* a,char*b) {char c; c=*a;*a=*b;*b=c;} { char a,b; a='A';b='B';sub3(&a,&b);putchar(a);putchar(b); a='A';b='B';sub2(&a,b);putchar(a);prtchar(b); a='A';b='B';sub1(a,b);putchar(a);putchar(b); }

A) BABBAB B) ABBBBA C) BABABA D) BAABBA (49) 设有如下定义:

struct sk

{int a;float b;}data,*p;

若有p=&data;,则对data中的a域的正确引用是

A)(*p).data.a B)(*p).a C)p->data.a D)p.data.a (50) 以下对枚举类型名的定义中正确的是

A)enum a={one,two,three}; B)enum a {one=9,two=-1,three}; C)enum a={\D)enum a {\二、填空题(每空2分,共40分)

请将每空的正确答案写在答题卡 【1】 至 【20】序号的横线上,答在试卷上不得分。 (1) 与十进制数101等值的二进制数为 【1】 。

(2) DOS命令分为内部命令和外部命令,XCOPY命令属于 【2】 。

(3) 设当前盘为A盘,当前系统提示符为\,在不改变当前盘的情况下,显示C盘的当前目录

的路径,应使用命令 【3】 。 (4) 自动批处理文件名必须是 【4】 。

(5) 设当前盘当前目录下有两个文件W.TXT,现要将文件P.TXT连接到文件W.TXT的后面,若

使用COPY命令,则完整的命令为 【5】 。 (6) 请写出以下数学式的C语言表达式 6 ──. a ─── b.c

(7) 若已知a=10,b=20,则表达式!ab) printf(\ else

printf(\

(11) 在对文件进行操作的过程中,若要求文件的位置回到文件的开头,应当调用的函数是 11

函数.──

(12) 若函数fun的类型void,且有以下定义和调用语句: #define M 50 main() { int a[M];

. . . fun(a);

. . . }

定义fun函数首部可以用三种不同的形式,请写出这三种形式: 12 .13 .14 ─ ─ ─ (注意:①形参的名字请用q,②使用同一种风格).

(13) 若给fun函数的形参s传送字符串:\,则函数的返回值是 15

─. log fun(char s[]) {long n;int sign;

for(;isspace(*s);s++); sign+(*s=='-')?-1:1; if(*s=='+'‖*s=='-'s++; for(n=0;isdigit(*s);s++) n=10*n+(*s-'0'); return sign * n;

(14) 以下函数用来在w数组中插入x,w数组中的数已按由小到大顺序存放,n 所指存储单元

中存放数组中数据的个数.插入后数组中的数仍有序.请填空. void fun (char *w,char x,int *n)

{ int i,p; p=0;

w[*n]=x;

while (x>w[p]) 16 ──;

for(i=*n;i>p;i--)w[i]= 17 ─; w[p]=x; ++ *n; }

(15) fun1函数的调用语句为:fun1(&a,&b,&c); 它将三个整数按由大到小的顺序调整后依次放

入a,b,c,三个变量中,a中放量大数.请填空. void fun2 (int *x,int *y) { int t;

t=*x; *x=*y;*y=t; }

void fun1 (int *pa,int *pb,int *pc) { if(*pc>*pb) fun2( 18) ───; if(*pa<*pc)fun2(19) ──;

if(*pa<*pb)fun2(20)

──; }

〖完〗

1998年4月全国计算机等级考试二级笔试C试卷答案 一、选择题((1)--(40)题每题1分,(41)--(50)题每题2分,共60分。

(1)C (11)B (21)D (31)A (41)B

(2)D (12)C (22)B (32)A (42)C

(3)A (13)A (23)C (33)A (43)B

(4)D (14)B (24)D (34)B (44)C

(5)D (15)A (25)A (35)C (45)C

(6)C (16)C (26)D (36)C (46)A

7)B (17)D (27)D (37)C (47)C

(8)A (18)C (28)D (38)D (48)A

(9)C (19)D (29)A (39)D (49)B

(10)A (20)C (30)B (40)A (50)B

二、填空题(每空2分,共40分) (1) 1100101或(1100101)2

(2) 外部命令(答 外部 不扣分)

(3)cd c:(cd与C:中间至少要有一个空格) (4)AUTOEXEC.BAT

(5)COPY W.TXT+P.TXT 或copy w.txt+p.txt w.txt (6)a/(b*c)或a/(a*b)或a/b/c 或a/c/b (7)1

(8)###a=26,b=13,c=19 (9)*(p+5)或p[5]

(10)if(a<=b){x=1;printf(\或if(a>b){y=2;printf(\或if(a<=b) printf(\或if(a>b) printf(\(11)rewind或 fseek

(12)(13)(14) void fun(int *q); 或 void fun(q) int *q; void fun(int q[]); void fun(q) int q[]; void fun(int q[M]); void fun(q) int q[M];

说明:以上两组答案中(A)三个答案可以任意次序 (B)标识符q可以用字母或下划线开头以字母、数字和下划线组成的名字代替。(C)两种风格可以混用。 (15)6354

(16)p++ 或 ++p 或 p=p+1 或p+=1或p=1+p (17)w[i-1]或 *(w+i-1) (18) pc ,pb 或 pb , pc (19)pc , pa 或 pa , pc (20)pb , pa或 pa , pb


全国计算机等级考试二级笔试试卷基础部分和C语言程序设计1998年4(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:德育是教育教学中的一个永恒主题1

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: