ImageVerifierCode 换一换
格式:DOC , 页数:42 ,大小:112KB ,
资源ID:1326164      下载积分:5000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-1326164.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(【计算机类职业资格】二级C语言笔试-359及答案解析.doc)为本站会员(unhappyhay135)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

【计算机类职业资格】二级C语言笔试-359及答案解析.doc

1、二级 C 语言笔试-359 及答案解析(总分:112.50,做题时间:90 分钟)一、选择题(总题数:50,分数:68.00)1.设有以下语句:struct stint n;struct st*next;static struct st a3=5,p=则表达式的值是 6 的为_。A) p+-n B) p-n+C) (*p).n+ D) +p-n(分数:1.00)A.B.C.D.2.假定所有变量已正确说明,下列程序段运行后,x 的值是 ( )abc0;x35;if (! a) x- -;else if (b);if (c) x3;else x4;A) 34B) 4C) 35D) 3(分数:1.0

2、0)A.B.C.D.3.在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送_。A) 调用语句 B) 命令 C) 口令 D) 消息(分数:2.00)A.B.C.D.4.下列关于栈的叙述中,正确的是( )。A) 栈底元素一定是最后入栈的元素B) 栈操作遵循先进后出的原则C) 栈顶元素一定是最先入栈的元素D) 以上三种说法都不对(分数:2.00)A.B.C.D.5.设循环队列的存储空间为 Q(1:35),初始状态为 front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为( )。A) 20 B) 0 或 35 C) 15 D)

3、16(分数:2.00)A.B.C.D.6.有以下程序:#includestdio.h#define SUB(a) (a)-(a)main()int a=2,b=3,c=5,d;d=SUB(a+b)*c;printf(“%d/n“,d);程序运行后的输出结果是( )。A) 0 B) -12 C) -20 D) 10(分数:1.00)A.B.C.D.7.有以下程序:# include stdio.hstruct STUchar name9; char sex; int score2; ; void f(struct STU a)struct STU b=“Zhao“, m, 85, 90); a1

4、=b;main()struct STU c2=“Qian“, f, 95, 92, “Sun“, m, 98, 99; f(c);printf(“%s, %c, %d, %d, “, c0.name, c0.sex, c0.score0, c0.score1); printf(“%s, %c, %d, %d/n“, c1.name, c1.sex, c1.score0, c1.score1);程序运行后的输出结果是( )。A) 2hao, m, 85, 90, Sun, m, 98, 99B) 2hao, m, 85, 90, Qian, f, 95, 92C) Qian, f, 95, 92

5、, Sun, m, 98, 99D) Qian, f, 95, 92, 2hao, m, 85, 90(分数:2.00)A.B.C.D.8.下列选项中不属于结构化程序设计方法的是( )。A) 自顶向下 B) 逐步求精 C) 模块化 D) 可复用(分数:2.00)A.B.C.D.9.下列变量定义中,合法的是_。A) short_a=1-le-1; B) double b=1+5e2.5;C) long do=0xfdaL; D) float2_and=l-e-3;(分数:2.00)A.B.C.D.10.在“文件包含”预处理语句的使用形式中,当#include 后面的文件名用“,(双撇号)括起时,

6、寻找被包含文件的方式是( )。A) 直接按系统设定的标准方式搜索目录B) 先在源程序所在的目录搜索,如没找到,再按系统设定的标准方式搜索C) 仅仅搜索源程序所在目录D) 仅仅搜索当前目录(分数:2.00)A.B.C.D.11.以下程序运行后,输出结果是_。fun(int*s,int p23)*s=p11;main()int a23=1,3,5,7,9,11,*p;p=(int *)malloc(sizeof(int);fun(printf(“%d/n“,*p);A) 1 B) 7 C) 9 D) 11(分数:1.00)A.B.C.D.12.有以下程序fun(int x)int p;if(x=0

7、|x=1) return(3);p=x-fun(x-2);return p;main()printf(“%d/n“,fun(7);执行后的输出结果是_。A) 7B) 3C) 2D) 0(分数:2.00)A.B.C.D.13.以下程序的输出结果是( )。union myunstruciint x,y,z;u;int k;a;main()a.u.x=4;a.u.y=5;a.u.z=6;a.k=0;printf(“%d/n“,a.u.x);A) 4 B) 5 C) 6 D) 0(分数:1.00)A.B.C.D.14.有以下程序:main()int a3,3*p,i;p=char*p;p=a;for(

8、p=a;pa+8;p+=2) putchar(*p);A) language B) lnug C) 有语法错误 D) lang(分数:1.00)A.B.C.D.18.以下程序的输出结果是_。long fun(int n)long s;if(n=1|n=2) s=2;else s=n-fun(n-1);return s;main()printf(“%1d/n“,fun(3);A) 1 B) 2 C) 3 D) 4(分数:1.00)A.B.C.D.19.以下正确的字符串常量是( )。A) “/“ B) abcC) Olympic Games D) “/(分数:1.00)A.B.C.D.20.在软件

9、生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是( )。 A) 需求分析 B) 详细设计 C) 软件设计 D) 概要设计(分数:2.00)A.B.C.D.21.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是_。A) 地址传递B) 单向值传递C) 由实参传绐形,再由形参传回实参D) 传递方式由用户指定(分数:2.00)A.B.C.D.22.有以下程序main( )int a33,*p,i;p=for(i=0;iprintf(“%d /n“,a12);程序运行后的输出结果是A)3B)6C)9D)2(分数:1.00)A.B.C.D.23.以下程序的输出结果是

10、( )long fun (int n)long s;if (n1|n2) s2;else sn-fun(n-1);return s ;main( )printf(“%d/n“,fun (3);A) 1B) 2C) 3D) 4(分数:1.00)A.B.C.D.24.下列数据模型中,具有坚实理论基础的是A) 层次模型B) 网状模型C) 关系模型D) 以上 3 个都是(分数:2.00)A.B.C.D.25.有以下程序:#define f(x) (x*x)main()int i1,i2;i1=f(8)/f(4);i2=f(4+4)/f(2+2);printf(“%d,%d/n“,i1,i2);程序运行

11、后的输出结果是A) 64, 28 B) 4,4 C) 4,3 D) 64, 64(分数:1.00)A.B.C.D.26.设有以下定义int a=0; double b=1.25; char c=A;#define d 2则下面语句中错误的是A) a+; B) b+; C) c+; D) d+;(分数:1.00)A.B.C.D.27.以下程序的运行结果是_。#include “stdio.h“main()int a=1,2,3,4,5,6,7,8,9,10,11,12;int *p=a+5,*q=NULL;*q=*(p+5);printf(“%d %d/n“,*p,*q);A) 运行后报错 B)

12、 6 6C) 6 12 D) 5 5(分数:1.00)A.B.C.D.28.在满足实体完整性约束的条件下( )。A) 一个关系中可以没有候选关键字 B) 一个关系中只能有一个候选关键字C) 一个关系中必须有多个候选关键字 D) 一个关系中应该有一个或多个候选关键字(分数:2.00)A.B.C.D.29.以下程序的输出结果是 ( )#includestdioh#includestringhmain()char str12s,t,r,i,n,g;printf(“%d/n“,strlen(str);A) 6 B) 7 C) 11 D) 12(分数:1.00)A.B.C.D.30.两个或两个以上模块之

13、间联系的紧密程度称为( )A) 耦合性 B) 内聚性 C) 复杂性 D) 数据传输特性(分数:2.00)A.B.C.D.31.以下程序中函数 sort 的功能是对 a 所指数组中的数据进行由大到小的排序:void sort(int a,int n)int i,j,t;for(i=0;in-1;i+)for(j=i+1;in;j+)if(aiaj) t=ai;ai=aj;aj=t;main()int aa10=1,2,3,4,5,6,7,8,9,10,i;sort(for(i=0;i10;i+) printf(%d,“,aai);printf(“/n“);程序运行后的输出结果是( )。A) 1,

14、2,3,4,5,6,7,8,9,10,B) 10,9,8,7,6,5,4,3,2,1,C) 1,2,3,8,7,6,5,4,9,10,D) 1,2,10,9,8,7,6,5,4,3,(分数:1.00)A.B.C.D.32.在关系数据库中,用来表示实体之间联系的是A) 树形结构 B) 网状结构 C) 线性表 D) 二维表(分数:1.00)A.B.C.D.33.以下程序的输出结果是_。A) 54321 B) 012345C) 1 2 3 4 5 D) 5 4 3 2 1 0main()int w=5;fun(w);printf(“/n“);fun (int k)if(k0) fun(k-1); p

15、rintf(“%d“,k);(分数:1.00)A.B.C.D.34.软件开发离不开系统环境资源的支持,其中必要的测试数据属于A) 硬件资源 B) 通信资源 C) 支持软件 D) 辅助资源(分数:1.00)A.B.C.D.35.有如下程序:#includestdio.hmain()int x=1,a=0,b=0;switch(x)casc 0:b+;case 1:a+;case 2:a+;b+;printf(“a=%d,b=%d/n“,a,b);该程序的输出结果是( )。A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=2(分数:1.00)A.B.C.D.36.

16、下列特征中不是面向对象方法的主要特征的是( )。A) 多态性 B) 继承C) 封装性 D) 模块化(分数:1.00)A.B.C.D.37.以下程序的输出结果是void fun(int*s)static int j=0;dosj+=sj+1;while(+j2);main()int k,a10=1,2,3,4,5;for(k=1;k3;k+)fun(a);for(k=0;k5;k+)printf(“%d“,ak);A) 34756 B) 23345 C) 35745 D) 12345(分数:1.00)A.B.C.D.38.下述关于数据库系统的叙述中正确的是( )。A) 数据库系统减少了数据冗余B

17、) 数据库系统避免了一切冗余C) 数据库系统中数据的一致性是指数据类型一致D) 数据库系统比文件系统能管理更多的数据(分数:1.00)A.B.C.D.39.有三个关系 R,S 和 T 如下:(分数:1.00)A.B.C.D.40.有以下程序:#include stdio.hmain()int i,s=0;for(i=1;i10;i+ =2) s+ =i+1;printf(“%d/n“,s);程序执行后的输出结果是( )。A) 正整数 19 的累加和 B) 正整数 110 的累加和C) 正整数 19 中奇数之和 D) 正整数 110 中偶数之和(分数:1.00)A.B.C.D.41.下面程序的执

18、行结果为_。main()int a,b;for(a=1,b=1;a=100;a+)if(b=20) break;if(b%3=1)b+=3;continue;b-=5;printf(“%d“,a);A) 7 B) 8 C) 9 D) 10(分数:1.00)A.B.C.D.42.下列实体的联系中,属于多对多联系的是( )。A) 学生与课程 B) 学校与校长 C) 住院的病人与病床 D) 职工与工资(分数:2.00)A.B.C.D.43.以下对结构体类型变量 td 的定义中,错误的是_。A) typedef struct aaint n;float m;AA;AA td;B) struct aai

19、nt n;float m;td;struct aa td;C) structint n;floatm;aa;struct aa td;D) structint n;float m;td;(分数:1.00)A.B.C.D.44.按照“先进先出”组织数据的数据结构是( )。A) 队列 B) 栈 C) 双向链表 D) 二叉树(分数:2.00)A.B.C.D.45.在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是 ( )。A) 概要设计 B) 详细设计 C) 可行性分析 D) 需求分析(分数:1.00)A.B.C.D.46.在 Vaual FoxPro 中,使用 LOCATE

20、FORexpL命令按条件查找记录,当查找到满足条件的第一条记录后,如果还需要查找下一条满足条件的记录,应该_。A) 再次使用 LOCATE 命令重新查询 B) 使用 SKIP 命令C) 使用 CONTINUE 命令 D) 使用 GO 命令(分数:2.00)A.B.C.D.47.下列关于 switch 语句和 break 语句的结论中,正确的是A) break 语句是 switch 语句中的一部分B) 在 switch 语句中可以根据需要使用或不使用 break 句C) 在 switch 语句中必须使用 break 语句D) 以上三个结论中有两个是正确的(分数:1.00)A.B.C.D.48.下

21、列关于单目运算符+,-的叙述中正确的是A) 它们的运算对象可以是任何变量和常量B) 它们的运算对象可以是 char 型变量和 int 型变量,但不能是 float 型变量C) 它们的运算对象可以是 int 型变量,但不能是 double 型变量和 float 型变量D) 它们的运算对象可以是 char 型变量、int 型变量和 float 型变量(分数:1.00)A.B.C.D.49.在 E-R 图中,用来表示实休联系的图形是A) 椭圆形 B) 矩形C) 菱形 D) 三角形(分数:2.00)A.B.C.D.50.在位运算中,操作数每右移两位,其结果相当于( )。A) 操作数乘以 2 B) 操作

22、数除以 2C) 操作数除以 4 D) 操作数乘以 4(分数:2.00)A.B.C.D.二、填空题(总题数:20,分数:44.50)51.软件工程研究的内容主要包括: 1 技术和软件工程管理。(分数:1.00)填空项 1:_52.设有如下定义#define MYSWAP(z,x,y) z=x; x=y; y=z;float a=5,b=16,c;MYSWAP(_,a,b);(分数:3.00)填空项 1:_53.下列程序的输出结果是_。#includestdio.hmain()int x=1,y=1,a=1,b=1;switch(x)case 1:switch(y)case 0: a+; brea

23、k;case 1: b+; break;case 2:a+;b+;break;printf(“a=%d,b=%d/n“,a,B) ;(分数:1.50)填空项 1:_54.下列程序的功能是将 2 个数从小到大输出。main()float a,b,_;scanf(_,int b3=0, i;for(i=0; i3; i+) bi=ai2+a2i;for(i=0; i3; i+) printf(“%d“, bi);printf(“/n“);(分数:2.00)填空项 1:_57.执行下列语句段后,x 的值是_。int*P,x;x=100:p=int ifor(i=0;i3;i+) strcpy(xi,

24、ch);for(i=0;i3;i+)printf(“%s“,printf(“/n“);(分数:2.00)填空项 1:_60.有下列程序#includestdio.hmain()char c1,c2;scanf(“%c“ scanf(“%d“, c1); c2=c1+9; printf(“%c%c/n“, c1, c2); 若程序运行时从键盘输入 48回车,则输出结果为_。(分数:2.00)填空项 1:_62.以下程序运行时,若从键盘输入:10 20 30回车,输出的结果是_。#includestdiohmain() int i=0,j=0,k=0;scanf(“%d%*d%d“,int i,j

25、;gets(s);for(i=j=0;si !=/0;i+)if(si!=c)_;sj=/O;puts(s);(分数:2.00)填空项 1:_64.以下程序的功能是将字符串 s 中的数字字符放入 d 数组中,最后输出 d 中的字符串。例如,输入字符串:abcl23edf456gh,执行程序后输出:123456。请填空。#includestdioh#includectype,hmain()char s80,d80;int i,j;gets(s);for(i=j=0;si!=/0;i+)if(_)dj=si;j+;dj=/0;puts(d) ;(分数:1.00)填空项 1:_65.若有定义 int

26、 m=5,y=2,则执行表达式 y+=y-=m*=y 后,y 的值为 1。(分数:1.00)填空项 1:_66.C 语言用于结构化程序设计的 3 种基本结构是 1、选择结构和循环结构。(分数:4.00)填空项 1:_67.fun 函数的功能是:首先对 a 所指的 N 行 N 列的矩阵,找出各行中的最大的数,再求这 N 个最大值中的最小的那个数作为函数值返回。请填空。#includestdioh#define N 100int fun(int(*a)N)int row,col,max,min;for(row=0;rowN;row+)for(max=arow0,col=1;colN;col+)if

27、(_)max=arowcol;if(row=0)min=max;else if(_)min=max;return min;(分数:1.00)填空项 1:_68.fun 函数的功能是:首先对 a 所指的 N 行 N 列的矩阵,找出各行中的最大数,再求这 N 个最大值中的最小的那个数作为函数值返回。请填空_。#include stdio.h#define N 100int fun(int(*a)N)int row, col,max,min;for(row=0;rowN;row+)for(max=arow0,col=1; colN;col+)if( ) max=arowcol;if(row=0) m

28、in=max;else if( ) min=max;return min;(分数:3.00)填空项 1:_69.计算机的运算速度可以用 MIPS 来描述,1MIPS 是指每秒执行 1 条指令。(分数:1.00)填空项 1:_70.下列程序的输出结果是_。#include stdio.hint fun(int x, int y)static int m 0,i=2;i+=m+1;m=i+x+y;return m;main()int j=4,m=1,k;k=fun(j,m); printf(“%d,“,k);k=fun(j,m); printf(“%d/n“,k);(分数:4.00)填空项 1:_

29、二级 C 语言笔试-359 答案解析(总分:112.50,做题时间:90 分钟)一、选择题(总题数:50,分数:68.00)1.设有以下语句:struct stint n;struct st*next;static struct st a3=5,p=则表达式的值是 6 的为_。A) p+-n B) p-n+C) (*p).n+ D) +p-n(分数:1.00)A.B.C.D. 解析:解析 本题主要考查结构体变量的定义和应用,以及运算符的优先级。2.假定所有变量已正确说明,下列程序段运行后,x 的值是 ( )abc0;x35;if (! a) x- -;else if (b);if (c) x3

30、;else x4;A) 34B) 4C) 35D) 3(分数:1.00)A.B. C.D.解析:3.在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送_。A) 调用语句 B) 命令 C) 口令 D) 消息(分数:2.00)A.B.C.D. 解析:解析 面向对象的世界是通过对象与对象间彼此的相互合作来推动的,对象间的这种相互合作需要一个机制协助进行,这样的机制称为消息。消息是一个实例与另一个实例之间传递的信息,它请求对象执行某一处理或回答某一要求的信息,它统一了数据流和控制流。4.下列关于栈的叙述中,正确的是( )。A) 栈底元素一定是最后入栈的元素B) 栈操作遵循先进后出的原则C)

31、 栈顶元素一定是最先入栈的元素D) 以上三种说法都不对(分数:2.00)A.B. C.D.解析:解析 栈是先进后出,因此,栈底元素是先入栈的元素,栈顶元素是后入栈的元素。5.设循环队列的存储空间为 Q(1:35),初始状态为 front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为( )。A) 20 B) 0 或 35 C) 15 D) 16(分数:2.00)A.B. C.D.解析:解析 Q(1:35)则队列的存储空间为 35;对空条件:front=rear(初始化时:front=rear),队满时:(rear+1)%n=front,

32、n 为队列长度(所用数组大小),因此当执行一系列的出队与入队操作,front=rear,则队列要么为空,要么为满。6.有以下程序:#includestdio.h#define SUB(a) (a)-(a)main()int a=2,b=3,c=5,d;d=SUB(a+b)*c;printf(“%d/n“,d);程序运行后的输出结果是( )。A) 0 B) -12 C) -20 D) 10(分数:1.00)A.B.C. D.解析:解析 本题调用参数,并考查了优先级。SUB(a+b)*c 调用后可写成(a+b)-(a+b)*c,结果为 5-25=-20。7.有以下程序:# include stdi

33、o.hstruct STUchar name9; char sex; int score2; ; void f(struct STU a)struct STU b=“Zhao“, m, 85, 90); a1=b;main()struct STU c2=“Qian“, f, 95, 92, “Sun“, m, 98, 99; f(c);printf(“%s, %c, %d, %d, “, c0.name, c0.sex, c0.score0, c0.score1); printf(“%s, %c, %d, %d/n“, c1.name, c1.sex, c1.score0, c1.score1

34、);程序运行后的输出结果是( )。A) 2hao, m, 85, 90, Sun, m, 98, 99B) 2hao, m, 85, 90, Qian, f, 95, 92C) Qian, f, 95, 92, Sun, m, 98, 99D) Qian, f, 95, 92, 2hao, m, 85, 90(分数:2.00)A.B.C.D. 解析:解析 F 函数是为结构体数组的第二个数赋值,数组的第一个数没有变化,所以正确答案应选 D。8.下列选项中不属于结构化程序设计方法的是( )。A) 自顶向下 B) 逐步求精 C) 模块化 D) 可复用(分数:2.00)A.B.C.D. 解析:解析 结

35、构化程序设计方法的主要原则有 4 点:自顶向下(选项 A)、逐步求精(选项 B)、模块化(选项 C)、限制使用 goto 语句。没有可复用原则。9.下列变量定义中,合法的是_。A) short_a=1-le-1; B) double b=1+5e2.5;C) long do=0xfdaL; D) float2_and=l-e-3;(分数:2.00)A. B.C.D.解析:10.在“文件包含”预处理语句的使用形式中,当#include 后面的文件名用“,(双撇号)括起时,寻找被包含文件的方式是( )。A) 直接按系统设定的标准方式搜索目录B) 先在源程序所在的目录搜索,如没找到,再按系统设定的标

36、准方式搜索C) 仅仅搜索源程序所在目录D) 仅仅搜索当前目录(分数:2.00)A.B. C.D.解析:解析 本题考查库函数调用的知识点。格式 1:#include(文件名),预处理程序在标准目录下查找指定的文件:格式 2:#include“文件名“,预处理程序首先在引用被包含文件的源文件所在的目录下搜索指定的文件,如没找到,再按系统指定的标准目录搜索。11.以下程序运行后,输出结果是_。fun(int*s,int p23)*s=p11;main()int a23=1,3,5,7,9,11,*p;p=(int *)malloc(sizeof(int);fun(printf(“%d/n“,*p);

37、A) 1 B) 7 C) 9 D) 11(分数:1.00)A.B.C. D.解析:解析 p 是指向整型变量的指针,函数 fun 的第一个参数是指向指针变量的指针,调用时将 p 的地址传给了形参 s,函数体*s=p11使得 s 的内容是 p11的地址,即实参 p 里存放的是实参数组a11元素的地址,输出时取指针运算则输出元素 a11=9。12.有以下程序fun(int x)int p;if(x=0|x=1) return(3);p=x-fun(x-2);return p;main()printf(“%d/n“,fun(7);执行后的输出结果是_。A) 7B) 3C) 2D) 0(分数:2.00)

38、A.B.C. D.解析:13.以下程序的输出结果是( )。union myunstruciint x,y,z;u;int k;a;main()a.u.x=4;a.u.y=5;a.u.z=6;a.k=0;printf(“%d/n“,a.u.x);A) 4 B) 5 C) 6 D) 0(分数:1.00)A.B.C.D. 解析:解析 因为 a 是结构体变量,最后一次输入的值为结构体中的值,即 a 中的任何一个值都为 0。14.有以下程序:main()int a3,3*p,i;p=char*p;p=a;for(p=a;pa+8;p+=2) putchar(*p);A) language B) lnug

39、 C) 有语法错误 D) lang(分数:1.00)A.B. C.D.解析:解析 本程序首先定义了静态字符数组 a,然后将指针 p 指向数组 a 的首地址。第 1 次 for 循环,p=a,p 指向数组的第 1 个元素,*p 是取指针 p 所指地址的内容,输出 1;第 2 次 for循环, p=p+2,则 p 指向数组的第 3 个元素,*p 是取指针 p 所指地址的内容,输出 n;第 3 次 for 循环,p=p+2,则 p 指向数组的第 5 个元素,*p 是取指针 p 所指地址的内容,输出 u;第 4 次 for 循环,p=p+2,则 p 指向数组的第 7 个元素,*p 是取指针 p 所指地

40、址的内容,输出 g,结束循环。18.以下程序的输出结果是_。long fun(int n)long s;if(n=1|n=2) s=2;else s=n-fun(n-1);return s;main()printf(“%1d/n“,fun(3);A) 1 B) 2 C) 3 D) 4(分数:1.00)A. B.C.D.解析:解析 本题两次执行 fun 函数,第一次执行得 f(3)=s=n-f(n-1)=3-f(2):第二次执行得 s=2,通过传递返回值 f(2)=2,所以 s=3-2=1,即 f(3)=1。19.以下正确的字符串常量是( )。A) “/“ B) abcC) Olympic Ga

41、mes D) “/(分数:1.00)A.B.C.D. 解析:解析 选项 A 中“/”为转义字符,故选项 A 错误,选项 B 和 C 显然不是字符串常量。选项 D 是一个字符串常量,称为空串。20.在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是( )。 A) 需求分析 B) 详细设计 C) 软件设计 D) 概要设计(分数:2.00)A. B.C.D.解析:解析 软件生命周期的主要活动阶段为:可行性研究和计划制定、需求分析、软件设计、软件实现、软件测试、运行和维护。其中需求分析是对开发软件提出的需求进行分析并给出详细定义,即准确地确定软件系统的功能,编写软件规格说明书及

42、初步的用户手册,提交评审。21.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是_。A) 地址传递B) 单向值传递C) 由实参传绐形,再由形参传回实参D) 传递方式由用户指定(分数:2.00)A.B. C.D.解析:解析 C 语言函数中的参数传递方式有传值与付址两种方式,传值方式是指将实参的值复制份传递给形参,而传址方式是指将实参的变量地址传递给形参,也就是实参的引用。22.有以下程序main( )int a33,*p,i;p=for(i=0;iprintf(“%d /n“,a12);程序运行后的输出结果是A)3B)6C)9D)2(分数:1.00)A.B. C.D.解析:解析

43、 p 指向二维数组的起始地址,for 循环中,i 从 0 到 8 分别对应 a00,a01,a02,a 10,a22。根据 pi=i+1 可知,他们的值分别为 1,2,9。23.以下程序的输出结果是 ( )long fun (int n)long s;if (n1|n2) s2;else sn-fun(n-1);return s ;main( )printf(“%d/n“,fun (3);A) 1B) 2C) 3D) 4(分数:1.00)A. B.C.D.解析:24.下列数据模型中,具有坚实理论基础的是A) 层次模型B) 网状模型C) 关系模型D) 以上 3 个都是(分数:2.00)A.B.C

44、. D.解析:解析 关系模型较之格式化模型(网状模型和层次模型)有以下方面的优点,即数据结构比较简单、具有很高的数据独立性、可以直接处理多对多的联系,以及有坚实的理论基础。25.有以下程序:#define f(x) (x*x)main()int i1,i2;i1=f(8)/f(4);i2=f(4+4)/f(2+2);printf(“%d,%d/n“,i1,i2);程序运行后的输出结果是A) 64, 28 B) 4,4 C) 4,3 D) 64, 64(分数:1.00)A.B.C. D.解析:解析 本题考查的是宏定义。对带参数的宏的展开只是将语句中宏名后面括号内的实参字符串代替#define 命

45、令行中的形参。本题中“i1=f(8)/f(4)”用“#defme f(x)(x*x)”代替得 i1=(8*8)/(4*4),结果为 4;“i2=f(4+4)/f(2+2)”用“#define f(x)(x*x)”代替得 i2=(4+4*4+4)/(2+2*2+2),求得结果为 3。故本题输出的值为 4,3。26.设有以下定义int a=0; double b=1.25; char c=A;#define d 2则下面语句中错误的是A) a+; B) b+; C) c+; D) d+;(分数:1.00)A.B.C.D. 解析:解析 本题考核的知识点是在自加运算符的运算对象。自加运算对象可以是整型

46、变量也可以是实型变量,但不能是表达式和常量。本题中,#defined2 定义了 d 为常数 2,不能在对 d 进行自加运算故选项 D 是个不正确的语句,所以, 4 个选项中选项 D 符合题意。27.以下程序的运行结果是_。#include “stdio.h“main()int a=1,2,3,4,5,6,7,8,9,10,11,12;int *p=a+5,*q=NULL;*q=*(p+5);printf(“%d %d/n“,*p,*q);A) 运行后报错 B) 6 6C) 6 12 D) 5 5(分数:1.00)A. B.C.D.解析:解析 题目中没有给 q 分配存储单元,只是简单的给它赋了一个值,所以程序的运行结果是 6 11 NULL pointer assignment,也就是运行后报错。28.在满足实体完整性约束的条件下( )。A) 一个关系中可以没有候选关键字 B) 一个关系中只能有一个候选关键字C) 一个关系中必须有多个候选关键字 D) 一个关系中应该有一个或多个候选关键字(分数:2.00)A.B.C.D. 解析:解析 在关系 R 中如记录完全函数依赖于属性(组) X,则称 X 为关系 R 中的一个候选关键字。候选关键字的性质有:在一个关系中,候选关键字可以有多

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1