欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

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

    • 资源ID:1326342       资源大小:116KB        全文页数:20页
    • 资源格式: DOC        下载积分:5000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要5000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

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

    1、二级 C 语言笔试 300 及答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:50,分数:60.00)1.有以下程序: #include stdio.h main() FILE *fp;int i,k=0,n=0; fp=fopen(“d1.dat“,“w“); for(i=1;i4;i+) fprintf(fp,“%d“,i); fclose(fp); fp=fopen(“d1.dat“,“r“); fscanf(fp,“%d%d“,printf(“%d%d/n“,k,n); fclose(fp); 执行后的输出结果是( )。(分数:1.00)A.1 2B.12

    2、3 0C.1 23D.0 02.以下四个选项,不能看作一条语句的是( )。(分数:1.00)A.;B.a=0,b=0,c=0;C.if(a0);D.if(b= =0) m=1;n=2;3.设有以下定义: int a=0; double b=1.25; char c=A; #define d 2 则下面语句中错误的是( )。(分数:1.00)A.a+;B.b+;C.c+;D.d+;4.以下符合 C 语言语法的实型常量是( )。(分数:1.00)A.1.2E0.5B.3.14159EC5E-3D.E155.下列有关数据库的描述,正确的是( )。(分数:1.00)A.数据库是一个 DBF 文件B.数

    3、据库是一个关系C.数据库是一个结构化的数据集合D.数据库是一组文件6.设有定义:float a=2,b=4,h=3;以下 C 语言表达式中与代数式 (分数:1.00)A.(a+ *h/2B.(1/2)*(a+*hC.(a+*h*1/2D.h/2*(a+7.有以下程序段: int a10=1,2,3,4,5,6,7,8,9,10,*p= b=p5;则 b 中的值是( )。(分数:1.00)A.5B.6C.8D.98.以下程序段中与语句 k=ab? (bc? 1:0):0;功能等价的是( )。(分数:1.00)A.if(a else k=0;B.if(a|(b) k=1; else k=0;C.i

    4、f(a= k=0; else if(b= k=1;D.if(a k=1; else if(b k=1; else k=0;9.下列说法中,不属于数据模型所描述的内容的是( )。(分数:1.00)A.数据结构B.数据操作C.数据查询D.数据约束10.有以下程序: #include sldio.h main() int x=0,y=5,z=3; while(z-0 printf(“%d,%d,%d/n“,x,y,z); 程序执行后的输出结果是( )。(分数:1.00)A.3,2,0B.3,2,-1C.4,3,-1D.5,-2,-511.下面不属于软件设计原则的是( )。(分数:1.00)A.抽象B

    5、.模块化C.自底向上D.信息隐蔽12.有以下程序: #include stdio.h void swap1(int c) int t; t=c0; c0=c1; c1=t; void swap2(int c0,int c1) int t; t=c0; c0=c1; c1=t; main() int a2=3,5,b2=3,5; swap1(a); swap2(b0,b1); printf(“%d%d%d%d/n“,a0,a1,b0,b1); 其输出结果是( )。(分数:1.00)A.5 3 5 3B.5 3 3 5C.3 5 3 5D.3 5 5 313.有以下程序: #include std

    6、io.h main() int i,s=0; for(i=1;i10;i+ =2) s+ =i+1; printf(“%d/n“,s); 程序执行后的输出结果是( )。(分数:1.00)A.正整数 19 的累加和B.正整数 110 的累加和C.正整数 19 中奇数之和D.正整数 110 中偶数之和14.有以下程序: #include stdio.h int f(int b 4) int i,j,s=0; for(j=0;j4;j+) i=j; if(i2) i=3-j; s+=bij; return s; main() int a44=1,2,3,4,0,2,4,6,3,6,9,12,3,2,

    7、1,0; printf(“%d/n“,f(a); 执行后的输出结果是( )。(分数:1.00)A.12B.11C.18D.1615.有以下程序: #include stdio.h main() unsigned char a,b; a=413; b=4 printf(“%d%d/n“,a,b); 执行后的输出结果是( )。(分数:1.00)A.7 0B.0 7C.1 1D.43 016.以下数据结构中不属于线性数据结构的是( )。(分数:1.00)A.队列B.线性表C.二叉树D.栈17.有以下程序(提示:程序中 fseek(fp,-2L*sizeof(int),SEEK_END);语句的作用是

    8、使位置指针从文件末尾向前移 2 * sizeof(int)字节): #include stdio.h main() FILE *fp; int i, a4=1,2,3,4,b; fp=fopen(“data.dar“,“wb“); for(i=0;i4;i+) fwrite( fclose(fp); fp=fopen(“data.dar“,“rb“); fseek(fp,-2L*sizeof(int),SEEK_END); fread( /*从文件中读取 sizeof(int)字节的数据到变量 b 中*/ fclose(fp); printf(“%d/n“,b); 执行后的输出结果( )。(分

    9、数:1.00)A.2B.1C.4D.318.有以下程序: #include stdio.h main() char a=“abcdefg“,b10=“abcdefg“; printf(“%d%d/n“,sizeof(a),sizeof(b); 执行后的输出结果是( )。(分数:1.00)A.7 7B.8 8C.8 10D.10 1019.在结构化方法中,用数据流图(DFD)作为描述工具的软件开发阶段是( )。(分数:1.00)A.可行性分析B.需求分析C.详细设计D.程序编码20.有以下定义: #include stdio.h char a10, *b=a; 下面不能给数组 a 输入字符串的语

    10、句是( )。(分数:1.00)A.gets(B.gets(a0);C.gets(D.gets(;21.有以下程序: #include stdio.h void sort(int a,int n) int i,j,t; for(i=0;in-1;i+=2) for(j=i+2;jn;j+=2) if(aiaj)t=ai;ai=aj;aj=t; main() int aa10=1,2,3,4,5,6,7,8,9,10,i; sort(aa,10); for(i=0;i10;i+) printf(“%d.“,aai); printf(“/n“); 其输出结果是( )。(分数:1.00)A.1,2,3

    11、,4,5,6,7,8,9,10,B.10,9,8,7,6,5,4,3,2,1,C.9,2,7,4,5,6,3,8,1,10,D.1,10,3,8,5,6,7,4,9,2,22.有以下程序: #include stdio.h #include string.h main(int argc,char *argv) int i,len=0; for(i=1;iargc;i+=2)len+=strlen(argvi); prinff(“%d/n“,len); 此程序经编译链接后生成的可执行文件是 ex.exe,若运行时输入以下带参数的命令行: ex abed efg h3 k44 则执行后的输出结果时

    12、( )。(分数:1.00)A.14B.12C.8D.623.有以下程序: #include stdio.h main() char k; int i; for(i=1;i3;i+) scanf(“%c“, switch(k) case 0: printf(“another/n“); case 1: printf(“number/n“); 程序运行时,从键盘输入:01回车,程序执行后的输出结果是( )。(分数:1.00)A.another numberB.another number anotherC.another numberD.number number24.若程序中定义了以下函数: do

    13、uble myadd(double a,double b) return(a+b);并将其放在调用语句之后,则在调用之前应该对函数进行说明,以下选项中错误的说明是( )。(分数:1.00)A.double myadd(double a,;B.double myadd(double,doubl;C.double myadd(double b, double ;D.double myadd(double x, double ;25.若以下选项中的变量已正确定义,则正确的赋值语句是( )。(分数:1.00)A.x1=26.8%3;B.1+2=x2;C.x3=0x12;D.x4=1+2=3;26.有以

    14、下程序: #include stdio.h main() int x=102,y=012; printf(“%2d,%2d/n“,x,y); 执行后的输出结果是( )。(分数:1.00)A.10,01B.02,12C.102,10D.02,1027.结构化程序设计主要强调的是( )。(分数:1.00)A.程序的规模B.程序的易读性C.程序的执行效率D.程序的可移植性28.以下叙述中正确的是( )。(分数:1.00)A.C 语言的源程序不必通过编译就可以直接运行B.C 语言中的每条可执行语句最终都将被转换成二进制的机器指令C.C 语言程序经编译形成的二进制代码可以直接运行D.C 语言中的函数不可

    15、以单独进行编译29.有以下程序: #include stdio.h void f(int v, int w) int t; t=v; v=w; w=t; main() int x=1,y=3,z=2; if(xy) f(x,y); else if(yz) f(y,z); else f(x,z); printf(“%d,%d,%d/n“,x,y,z); 执行后的输出结果( )。(分数:1.00)A.1,2,3B.3,1,2C.1,3,2D.2,3,130.以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是( )。(分数:1.00)A.char s10=“abcdefg“;B.char t

    16、=“abcdefg“,*s=t;C.char s10;s=“abcdefg“;D.char s10;strcpy(s,“abcdefg“);31.有以下程序: #include stdio.h int a=2; int f(int *a) return (*a) +; main() int s=0; int a=5; s+=f( s+=f( printf(“%d/n“,s) 执行后的输出结果是( )。(分数:1.00)A.10B.9C.7D.832.有以下程序: #include stdio.h void f(int a,int i, int j) int t; if(ij) t=ai;ai=

    17、aj;aj=t; f(a,i+1,j-1); main() int i,aa5=1,2,3,4,5; f(aa,0,4); for(i=0;i5;i+) printf(“%d,“,aai);printf(“/n“); 执行后的输出结果是( )。(分数:1.00)A.5,4,3,2,1,B.5,2,3,4,1,C.1,2,3,4,5,D.1,5,4,3,2,33.设有定义:int n=0,*p=则以下选项中,正确的赋值语句是( )。(分数:1.00)A.P=1B.*q=2;C.q=p;D.*p=5;34.下列关于栈的叙述中正确的是( )。(分数:1.00)A.在栈中只能插入数据B.在栈中只能删除

    18、数据C.栈是先进先出的线性表D.栈是先进后出的线性表35.有以下程序: #include stdio.h main() int i,n=0; for(i=2;i5;i+) do if(i%3) continue; n+; while(! i); n+; printf(“n=%d/n“,n); 程序执行后的输出结果是( )。(分数:1.00)A.n=5B.n=2C.n=3D.n=436.有以下程序: #include stdio.h struct STU char name10; int num; int Score; ; main() struct STU s5=“YangSan“,20041

    19、,703,“LiSiGuo“,20042,580, “WangYin“,20043,680,“SunDan“,20044,550, “Penghua“,20045,537, *p5,*t; int i,j; for(i=0;i5;i+) pi= for(i=0;i4;i+) for(j=i+1;j5;j+) if(pi-Scorepj-Score) t=pi;pi=pj;pj=t; printf(“%d%d/n“,s1.Score,p1-Score); 执行后的输出结果是( )。(分数:1.00)A.550 550B.680 680C.580 550D.580 68037.有以下程序: #in

    20、clude stdio.h #include string.h main() char *p10=“abc“,“aabdfg“,“dcdbe“,“abbd“,“cd“; printf(“%d/n“,strlen(p4); 执行后的输出结果是( )。(分数:1.00)A.2B.3C.4D.538.有以下程序: #include stdio.h void sum(int *a) a0=a1; main() int aa10=1,2,3,4,5,6,7,8,9,10,i; for(i=2;i=0;i-) sum( printf(“%d/n“,aa0); 执行后的输出结果是( )。(分数:1.00)A

    21、.4B.3C.2D.139.有以下程序: #include stdio.h char fun(char x,char y) if(xy) return x; return y; main() int a=9,b=8,c=7; printf(“%c/n“,fun(fun(a,b),fun(b,c); 程序的执行结果是( )。(分数:1.00)A.函数调用出错B.8C.9D.740.对长度为 n 的线性表进行顺序查找,在最坏情况下所需要的比较次数为( )。(分数:1.00)A.n+1B.nC.(n+1)/2D.n/241.有以下程序: #include stdio.h #define f(x) x

    22、*x main() int i; i=f(4+4)/f(2+2); priatf(“%d/n“,i); 执行后的输出结果是( )。(分数:2.00)A.28B.22C.16D.442.有以下程序: #include stdio.h struct STU char name10; int num; ; void f1(struct STU c) struct STU b=“LiSiGuo“,2042; c=b; void f2(struct STU *c) struct STU b=“SanDan“,2044; *c=b; main() struct STU a=“YangSan“,2041,

    23、b=“WangYin“,2043; f1(a); f2( printf(“%d%d/n“,a.num,b.hum); 执行后的输出结果是( )。(分数:2.00)A.2041 2044B.2041 2043C.2042 2044D.2042 204343.一个算法应该具有“确定性”等五个特性,下面对另外四个特性的描述中错误的是( )。(分数:2.00)A.有零个或多个输入B.有零个或多个输出C.有穷性D.可行性45.视图设计一般有三种设计次序,下列不属于视图设计的是( )。(分数:2.00)A.自顶向下B.由外向内C.由内向外D.自底向上46.以下四组用户自定义标识符中,全部合法的一组是( )

    24、。(分数:2.00)A._main enclude sinB.If - max turboC.txt REAL 3COMD.int k_2 _00147.设有定义:int a, *pa=以下 scanf 语句中能正确为变量 a 读入数据的是( )。(分数:2.00)A.scanf(“%d“,p;B.scanf(“%d“,;C.scanf(“%d“,D.scanf(“%d“,*p;48.下面程序的功能是输出以下形式的金字塔图案: * * * * #include stdio.h main() int i,j; for(i=1;i=4;i+) for(j=1;j=4-i;j+) printf(“

    25、“); for(j=1;j=_;j+) printf(“*“); printf(“/n“); 在下划线处应填入的是( )。(分数:2.00)A.iB.2*i-1C.2*i+1D.i+249.设有以下语句: typedef street S int g; char h; T;则下面叙述中正确的是( )。(分数:2.00)A.可用 S 定义结构体变量B.可以用 T 定义结构体变量C.S 是 struct 类型的变量D.T 是 struct S 类型的变量50.在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是 ( )。(分数:2.00)A.概要设计B.详细设计C.可行性分析

    26、D.需求分析二、B填空题/B(总题数:19,分数:40.00)51.顺序存储方法是把逻辑上相邻的结点存储在物理位置U 【1】 /U的存储单元中。(分数:2.00)填空项 1:_52.面向对象的程序设计方法中涉及的对象是系统中用来描述客观事物的一个U 【2】 /U。(分数:2.00)填空项 1:_53.一个项目具有一个项目主管,一个项目主管可管理多个项目,则实体“项目主管”与实体“项目”的联系属于U 【3】 /U的联系。(分数:2.00)填空项 1:_54.与结构化需求分析方法相对应的是U 【4】 /U方法。(分数:2.00)填空项 1:_55.软件维护活动包括以下几类:改正性维护、适应性维护、

    27、U 【5】 /U维护和预防性维护。(分数:2.00)填空项 1:_56.有以下程序: #include stdio.h void f(int y,int *x) y=y+ *x; *x=*x+y; main() int x=2,y=4; f(y, printf(“%d%d/n“,x,Y); 执行后的输出结果U 【6】 /U。(分数:2.00)填空项 1:_57.以下程序给指针 p 分配三个 double 型动态内存单元,请填空。 #include stdio.h #include stdlib.h main() double *p; p=(double *)malloc(U 【7】 /U);

    28、p0=1.5;p1=2.5;P2=3.5; printf(“%f%f%f/n“,p0,p1,p2); (分数:2.00)填空项 1:_58.有以下程序: #include stdio.h main() int t=1,i=5; for(;i=0;i-) t*=i; printf(“%d/n“,t); 执行后的输出结果是U 【8】 /U。(分数:2.00)填空项 1:_59.有以下程序: #include stdio.h main() char ch1,ch2;int n1,n2; ch1=getchar();ch2=getehar(); n1=ch1-0; n2=n1*10+(ch2-0);

    29、printf(“%d/n“,n2); 程序运行时输入:12回车,执行后的输出结果是U 【9】 /U。(分数:2.00)填空项 1:_60.有以下程序: #include stdio.h main() int n=0,m=1,x=2; if(! n)x-=1; if(m) x-=2; if(x) x-=3; printf(“%d/n“,x); 执行后的输出结果是U 【10】 /U。(分数:2.00)填空项 1:_61.以下 sum 函数的功能是计算下列级数之和: (分数:2.00)填空项 1:_62.函数 fun 的功能是计算 xn。double fun(double x,int n) int

    30、i; double y=1;for(i=1;i=n;i+) y=y*x;return y;主函数中已经正确定义变量 m,a,b 并赋值,要调用函数 fun 计算:m=a 4+b4-(a+b)3。实现这一计算的函数调用语句为U 【12】 /U。(分数:2.00)填空项 1:_63.以下 sstrcpy()函数实现字符串复制,即将 t 所指字符串复制到 s 所指内存空间中,形成一个新字符串 s。请填空。 void sstrcpy(char *s,char *t) while( *s+=U 【13】 /U); main() char strl100,str2=“abcdefgh“; sstrcpy(

    31、str1,str2); printf(“%s/n“,str1); (分数:2.00)填空项 1:_64.以下程序的运行结果是:U 【14】 /U。 #include stdio.h #include string.h char *ss(char *s) return s+strlen(s)/2; main() char *p,*str=“abcdefgh“; p=ss(str);printf(“%s/n“,p);(分数:2.00)填空项 1:_65.有以下语句段: int n1=10,n2=20; printf(“U 【15】 /U“,n1,n2); 要求按以下格式输出n1 和 n2 的值:

    32、n1=10 n2=20 每个输出行从第一列开始,请填空。(分数:2.00)填空项 1:_66.已知字符A的 ASCII 码值为 65,以下语句的输出结果是U 【16】 /U。 char ch=B; printf(“%c%d/n“,ch,ch);(分数:2.00)填空项 1:_67.以下程序的运行结果是U 【17】 /U。 #include stdio.h #include string.h typcdef struct student char name10; long sno; float score; STU; main() STU a=“Zhangsan“,2001,95,b=“Shan

    33、gxian“,2002,90, c=“Anhua“,2003,95,d,*p= d=a; if(strcmp(a.name,b.name)0) d=b; if(strcmp(c. name, d. name)0)d=c; printf(“%1d%s/n“,d.sno,p-name); (分数:2.00)填空项 1:_68.下面程序的运行结果是U 【18】 /U。 #inelude stdio.h int f(int a,int n) if(n1) return a0+f( else return a0; main() int aa3=1,2,3,s; s=f( printf(“% d/n“,s

    34、); (分数:2.00)填空项 1:_69.下面 rotate 函数的功能是:将 n 行 n 列的矩阵 A 转置未 AT,例如:(分数:4.00)填空项 1:_二级 C 语言笔试 300 答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:50,分数:60.00)1.有以下程序: #include stdio.h main() FILE *fp;int i,k=0,n=0; fp=fopen(“d1.dat“,“w“); for(i=1;i4;i+) fprintf(fp,“%d“,i); fclose(fp); fp=fopen(“d1.dat“,“r“); fsc

    35、anf(fp,“%d%d“,printf(“%d%d/n“,k,n); fclose(fp); 执行后的输出结果是( )。(分数:1.00)A.1 2B.123 0 C.1 23D.0 0解析:解析 fprintf、fscanf 函数与 printf、scanf 函数作用相仿,都足格式化读写函数,其区别在于:fprintf 和 fscanf 函数的读写对象不是终端而是磁盘文件。这两个函数的一般调用方式为: fprintf(文件指针,格式字符串,输出表列); fscanf(文件指针,格式字符串,输入表列); 程序首先将 123 写入 d1.dat 文件中,再从该文件中将数据读给变量 k 和 n。

    36、由于文件 d1.dat 中的数据是 123,按格式“%d%d”读数据时将 123 读给 k,n 没有得到读入的数据,保持初始值 0。2.以下四个选项,不能看作一条语句的是( )。(分数:1.00)A.;B.a=0,b=0,c=0;C.if(a0);D.if(b= =0) m=1;n=2; 解析:解析 在 if 后面只能有一条语句,或一条复合语句,即用花括号将多条语句括起来。选项 D)中没有将两条语句括起来,不能看成一条语句。3.设有以下定义: int a=0; double b=1.25; char c=A; #define d 2 则下面语句中错误的是( )。(分数:1.00)A.a+;B.

    37、b+;C.c+;D.d+; 解析:解析 选项 D)中的 d 不是变量,而是一个标识符,它代表常量 2,常量是不允许进行自增运算的,所以错误。4.以下符合 C 语言语法的实型常量是( )。(分数:1.00)A.1.2E0.5B.3.14159EC5E-3 D.E15解析:解析 实数在 C 语言中又称浮点数,它有两种表示形式:十进制数形式。它由数字和小数点组成(注意必须有小数点)。0.123,.123,123.0, 123.,0.0 都是十进制数形式。指数形式。如 123e3 或 123E3 都代表 123*103。要注意字母 e(或 E)之前必须有数字,且 e 后面的指数必须为整数,如 e3,2

    38、.1e3.5,.e3,e 等都不是合法的指数形式。5.下列有关数据库的描述,正确的是( )。(分数:1.00)A.数据库是一个 DBF 文件B.数据库是一个关系C.数据库是一个结构化的数据集合 D.数据库是一组文件解析:解析 数据库是数据的集合,它具有统一的结构形式并存放于统一的存储介质内,是多种应用数据的集成,并可被各个应用程序所共享。数据库中的数据具有“集成”、“共享”的特点。6.设有定义:float a=2,b=4,h=3;以下 C 语言表达式中与代数式 (分数:1.00)A.(a+ *h/2B.(1/2)*(a+*h C.(a+*h*1/2D.h/2*(a+解析:解析 两个整数相除结果

    39、为舍去小数部分的整数,如 5/3 的结果为 1。如果参加运算的两个数中有一个数为实数,则结果是 double 型,因为所有实数都按 double 型进行运算。根据运算符优先级,先计算括号内的,故选项 B)中(1/2)=0,整个表达式的值为 0。7.有以下程序段: int a10=1,2,3,4,5,6,7,8,9,10,*p= b=p5;则 b 中的值是( )。(分数:1.00)A.5B.6C.8D.9 解析:解析 p 为指向整型数据的指针变量,存放的是 a3的地址,即 p 指向数组4,5,6,7,8, 9,10,b=p5,因此,b 中的值是 9。8.以下程序段中与语句 k=ab? (bc?

    40、1:0):0;功能等价的是( )。(分数:1.00)A.if(a else k=0; B.if(a|(b) k=1; else k=0;C.if(a= k=0; else if(b= k=1;D.if(a k=1; else if(b k=1; else k=0;解析:解析 本题是先比较 a,b,如果 ab 成立则执行(bc? 1:0),如果 bc 成立则结果为 1,否则为 0。也就是说只有 ab 与 bc 同时成立时 k 值才能为 1。选项 A)正确。选项 B)是 a b 与 bc 之一成立时 k=1;选项 C)是 b=c 时 k=1;选项 D)与 B)类似。所以 B)、C)、D)均不对。9

    41、.下列说法中,不属于数据模型所描述的内容的是( )。(分数:1.00)A.数据结构B.数据操作C.数据查询 D.数据约束解析:解析 数据模型所描述的内容有数据结构、数据操作和数据约束。其中,数据结构主要描述数据的类型、内容、性质以及数据库的联系等;数据操作主要描述在相应数据结构上的操作类型与操作方式。10.有以下程序: #include sldio.h main() int x=0,y=5,z=3; while(z-0 printf(“%d,%d,%d/n“,x,y,z); 程序执行后的输出结果是( )。(分数:1.00)A.3,2,0B.3,2,-1 C.4,3,-1D.5,-2,-5解析:

    42、解析 当 x=0,y=5,z=3 时,z-0 t=c0; c0=c1; c1=t; void swap2(int c0,int c1) int t; t=c0; c0=c1; c1=t; main() int a2=3,5,b2=3,5; swap1(a); swap2(b0,b1); printf(“%d%d%d%d/n“,a0,a1,b0,b1); 其输出结果是( )。(分数:1.00)A.5 3 5 3B.5 3 3 5 C.3 5 3 5D.3 5 5 3解析:解析 swap1 函数传递的是变量的地址,可以实现两个数的交换;而 swap2 函数传递的是值,执行完 swap2 后,c0,

    43、c1 的值互换了,但 main 函数中的 b0 和 b1 并未互换,即形参值的改变无法传给实参。13.有以下程序: #include stdio.h main() int i,s=0; for(i=1;i10;i+ =2) s+ =i+1; printf(“%d/n“,s); 程序执行后的输出结果是( )。(分数:1.00)A.正整数 19 的累加和B.正整数 110 的累加和C.正整数 19 中奇数之和D.正整数 110 中偶数之和 解析:解析 通过 for(i=1;i10;i+=2)可知,i 取值为 110 的奇数,即 1,3,5,7,9,i+1 即为2,4, 6,8,10。因此,程序的功

    44、能是计算并输出 110 中的偶数之和,s+=i+1 就是累加这些偶数。14.有以下程序: #include stdio.h int f(int b 4) int i,j,s=0; for(j=0;j4;j+) i=j; if(i2) i=3-j; s+=bij; return s; main() int a44=1,2,3,4,0,2,4,6,3,6,9,12,3,2,1,0; printf(“%d/n“,f(a); 执行后的输出结果是( )。(分数:1.00)A.12B.11C.18D.16 解析:解析 程序中,当 j=0 时,i=0,i2 不成立,s+=b00)=1;j=1 时,i=1,i

    45、2 不成立,s =s+b11=1+2=3;j=2 时,i=2,i2 不成立,s=s+b22=3+9=12;j=3 时,i=3,i2 成立,i=3-j,此时 i=0,s=s+b03=12+4=16;j=4 时循环结束。所以最后 s 值为 16。15.有以下程序: #include stdio.h main() unsigned char a,b; a=413; b=4 printf(“%d%d/n“,a,b); 执行后的输出结果是( )。(分数:1.00)A.7 0 B.0 7C.1 1D.43 0解析:解析 int i, a4=1,2,3,4,b; fp=fopen(“data.dar“,“wb“); for(i=0;i4;i+) fwrite( fclose(fp); fp=fopen(“data.dar“,“rb“); fseek(fp,-2L*sizeof(int),SEEK_END); fread( /*从文件中读取 sizeof(int)字节的数据到变量 b 中*/ f


    注意事项

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




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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

    收起
    展开