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

    【计算机类职业资格】计算机二级(C)56及答案解析.doc

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

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

    【计算机类职业资格】计算机二级(C)56及答案解析.doc

    1、计算机二级(C)56 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(1-10 题每题 2 分,11-50 题(总题数:60,分数:60.00)1.下列关于栈的描述正确的是【 】。(分数:1.00)A.在栈中能插入元素而不能删除元素B.在栈中只能删除元素而不能插入元素C.栈是特殊的线性表,只能在一端插入或删除元素D.栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素2.设有定义:long x= -123456L;,则以下能够正确输出变量 x 值的语句是( )。(分数:1.00)A.printf(“x=%d/n“,x);B.printf(“x=%1d/n“,x);C.pr

    2、intf(“x=%8dL/n“,x);D.printf(“x=%LD/n“,x);3.有以下程序 fun(char P10) int n=0,i; for(i=0;iA.1B.2C.3D.04.有以下程序: struc 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=“SunDan”,2044; *c=b; main( ) struct STU a=“YangSan”,2041,b=“WangYin”,2

    3、043 ; f1(a);f2( printf(“%d %d/n”,a.num,b.num); 执行后的输出结果是( )。 (分数:1.00)A.2041 2044B.2041 2043C.2042 2044D.2042 20435.在 DOS 环境下,为了得到 TYPE 命令的帮助信息,正确的 DOS 命令为( )。(分数:1.00)A.TYPEB.TYPE/HC.TYPE/*D.TYPE/?6.已知 i,j,k 为 int 型变量,若从键盘输入:1,2,3,使 i 的值为 1,j 的值为 2,k 的值为 3,以下选项中正确的输入语句是( )。(分数:1.00)A.scanf (“%2d%2d

    4、%2d“,i,j,k);B.scanf (“%d %d %d“,i,j,k);C.scanf (“%d,%d,%d“,i,j,k);D.scanf (“i=%d,j=%d,k=%d“,i,j,k);7.以下叙述中正确的是【 】。(分数:1.00)A.预处理命令行必须位于 C 源程序的起始位置B.在 C 语言中,预处理命令行都以“#“开头C.每个 C 程序必须在开头包含预处理命令行#includeD.C 语言的预处理不能实现宏定义和条件编译的功能8.以下程序段中与语句 k=ab?(bc?1:0):0;功能等价的是( )。(分数:1.00)A.if(ab) else k=0;B.if(ab)|(b

    5、c) k=1 else k=0;C.if(ab) k=1; else if(bc) k=1; else k=0;9.若有以下说明和语句,int c45,(*p)5;p=c; 能正确引用 c 数组元素的是( )。 (分数:1.00)A.p+1B.*(p+3)C.*(p+1)+3D.*(p0+2)10.有以下程序段: int k=0,a=1,b=2,c=3; k=ab?b:a; k=kc?c:k; 执行该程序段后,k 的值是【 】。 (分数:1.00)A.3B.2C.1D.011.有以下程序: #include string.h struct STU int num; float TotalSco

    6、re; ; void f(struct STU p) struct STU s2=20044,550,20045,537; p.num=s1.num;p.TotalScore=s1.TotalScore; main() struct STU s2=20041,703,20042,580; f(s0); printf(“%d%3.0t/n“,s0.num,s0.TotalScore); 程序运行后的输出结果是【 】。 (分数:1.00)A.20045 537B.20044 550C.20042 580D.20041 70312.有以下程序 main( ) char s =“/n123 / /“;

    7、 printf(“%d,%d/n“,strlen(s),sizeof(s); 执行后输出结果是( )。 (分数:1.00)A.赋初值的字符串有错B.6,7C.5,6D.6,613.已有定义:int i,a10,*p;,则合法的赋值语句是( )。(分数:1.00)A.p=100;B.p=a5;C.p=a2+2;D.p=a+2;14.有以下程序: main() int m,n,p; scanf(“m=%dn=%dp=%d“, printf(“%d%d%/n“,m,n,p); 若想从键盘上输入数据,使变量 m 中的值为 123,n 中的值为 456;p 中的值为 789,则正确的输入是【 】。(分数

    8、:1.00)A.m=123 n=456p=789B.m=123 n=456 p=789C.m=123,n=456,p=789D.123 456 78915.有以下程序 main() int a=0,b=0; a=10: * 给 a 赋值 b=20: 给 b 赋值 * printf(“a+b=dn“,a+b);*输出计算结果* 程序运行后的输出结果是【 】。 (分数:1.00)A.a+b=10B.a+b=30C.30D.出错16.有以下程序: struct STU char name10;v int num; int Score; ;main( ) struct STU s5= “YangSan

    9、”,20041,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;jpj-Score) t=pi;pi=pj;pj=t; printf(“5d %d/n”,s1.Score,p1-Score); 执行后输出结果是( )。 (分数:1.00)A.550 550B.680 680C.580 550D.580 68017.有以下程序 fun(int x) int

    10、 p; if(x= =0 | X= =1)return(3); P=x-fun(x-2); return P; main() printf(“dn“,fun(7); 执行后的输出结果是【 】。 (分数:1.00)A.7B.3C.2D.018.程序中对 fun 函数有如下说明: void *fun( ); 此说明的含义是( )。 (分数:1.00)A.fun 了数无返回值B.fun 函数的返回值可以是任意的数据类型C.fun 函数的返回值是无值型的指针类型D.指针 fun 指向一个函数,该函数无返回值19.下列选项中不符合良好程序设计风格的是【 】。(分数:1.00)A.源程序要文档化B.数据说

    11、明的次序要规范化C.避免滥用 goto 语句D.模块设计要保证高耦合、高内聚20.若有定义 int x=0,*p= p= for(i=0;iA.3B.6C.9D.222.从 Windows 环境进入 MSDOS 方式后,返回 Windows 环境的 DOS 命令为( )。(分数:1.00)A.EXITB.QUITC.RETD.MSDOS23.所谓 “裸机”是指( )。(分数:1.00)A.单片机B.单板机C.不装备任何软件的计算机D.只装备操作系统的计算机24.以下选项中合法的用户标识符是( )。(分数:1.00)A.longB._2TestC.3DmaxD.A.dat25.有以下程序(提示:

    12、程序中 fseek(fp,-2L*sizeof(int),SEEK_END);语句的作用是使位置指针从文件尾向前移 2*sizeof(int)字节) #include stdio.h main( ) FILE *fp; int i,a4=1,2,3,4,b; fp=fopen(“data.dat“,“wb“); for(i=0;iA.2B.1C.4D.326.有以下程序: main( ) unsigned char a,b,c; a=0x3; b=a|0x8; c=b 1; printf(“%d%d/n“,b,c); 程序运行后的输出结果是( )。 (分数:1.00)A.-11 12B.-19

    13、C.12 24D.11 2227.有以下程序 main( ) int x8=8,7,6,5,0,0,*s; s=x+3; printf(“%d/n“,s2); 执行后输出结果是( )。 (分数:1.00)A.随机值B.0C.5D.628.以下语句或语句组中,能正确进行字符串赋值的是【 】。(分数:1.00)A.char*sp;*sp=“right!“;B.char s10;s=“right!“;C.char s 10;*s=“right!“;D.char*sp=“right!“;29.有以下程序: #include stdio.h main( ) FILE *fp; int i,k=0,n=0

    14、; 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.123 0C.1 23D.0 030.以下 4 个程序中,完全正确的是【 】。(分数:1.00)A.#include main(); *programming* printf(“programming!n“);B.#include main(

    15、) *programming* printf(“programming!n“);C.#include main() *programming* printf(“programming!n“);D.include main() *programming* printf(“programming!n“);31.与十六进制数 200 等值得十进制数为( )。(分数:1.00)A.256B.512C.1024D.204832.下列叙述中正确的是【 】。(分数:1.00)A.软件测试应该由程序开发者来完成B.程序经调试后一般不需要再测试C.软件维护只包括对程序代码的维护D.以上三种说法都不对33.下列对

    16、于软件测试的描述中正确的是【 】。(分数:1.00)A.软件测试的目的是证明程序是否正确B.软件测试的目的是使程序运行结果正确C.软件测试的目的是尽可能多地发现程序中的错误D.软件测试的目的是使程序符合结构化原则34.有以下程序 main() int a44=1,4,3,2,8,6,5,7,3,7,2,5,4,8,6,1,i,j,k,t; for(i:0;iaki)t=aji;aji=aki;aki=t;*按列排序* for(i=O;iA.l,6,5,7,B.8,7,3,1,C.4,7,5,2,D.1,6,2,1,35.有以下定义语句: double a,b; int w; long c; 若

    17、各变量已正确赋值,则下列选项中正确的表达式是( )。 (分数:1.00)A.a=a+b=b+B.w%(int)a+b)C.(c+w)%(int)aD.w=a=b;36.对于一个正常运行的 C 程序,以下叙述中正确的是【 】。(分数:1.00)A.程序的执行总是从 main 函数开始,在 main 函数结束B.程序的执行总是从程序的第一个函数开始,在 main 函数结束C.程序的执行总是从 main 函数开始,在程序的最后一个函数中结束D.程序的执行总是从程序中的第一个函数开始,在程序的最后一个函数中结束37.有以下程序: main( ) int a=1,b=2,m=0,n=0,k; k=(n=

    18、ba)|(m=aA.0,0B.0,1C.1,0D.1,138.有以下程序: char fun(char x , char y) if(x main( ) int a=9,b=8,c=7; printf(“%c/n”,fun(fun(a,b),fun(b,c); 程序的执行结果是( )。 (分数:1.00)A.函数调用出错B.8C.9D.739.有以下程序 main() char ch=“uvwxyz“,* pc; pc=ch;printf(“cn“,*(pc+5); 程序运行后的输出结果是【 】。 (分数:1.00)A.ZB.0C.元素 ch5的地址D.字符 Y 的地址40. 有以下程序 ma

    19、in( ) int i=10,j=1; printf(“%d,%d/n“,i-,+j); 执行后输出的结果是( )。 (分数:1.00)A.9,2B.10,2C.9,1D.10,141.有以下程序 #include main() FILE * fp;int k , n,a6=1,2,3,4, 5,6; fp=fopen(“d2.dat“,“W“); fprintf(fp,“dddn“,a0,a1,a2);fprintf(fp,“dddn“,a3,a4,aS); fclose(fp); fp=fopen(“d2.dat“,“r“); fscanf(fp,“dd“,p2+; 此函数的功能是( )。

    20、 (分数:1.00)A.将 p1 所指字符串复制到 p2 所指内存空间B.将 p1 所指字符串的地址赋给指针 p2C.对 p1 和 p2 两个指针所指字符串进行比较D.检查 p1 和 p2 两个指针所指字符串中是否有/043.以下叙述中正确的是( )。(分数:1.00)A.构成 C 语言程序的基本单位是函数B.可以在一个函数中定义另一个函数C.main( )函数必须放在其他函数之前D.所有被调用的函数一定要在调用之前进行定义44.以下能正确定义数组并正确赋初值的语句是(分数:1.00)A.int N=5,bNN;B.int a12=1,3;C.int c2 =1,2,3,4;D.int d32

    21、=1,2,3,4;45.下列对于线性链表的描述中正确的是【 】。(分数:1.00)A.存储空间不一定是连续,且各元素的存储顺序是任意的B.存储空间不一定是连续,且前件元素一定存储在后件元素的前面C.存储空间必须连续,且前件元素一定存储在后件元素的前面D.存储空间必须连续,且各元素的存储顺序是任意的46.若有代数式根号下 n 的 x 次方+e 的 x 方的绝对值(其中 e 仅代表自然对数的底数,不是变量)则一下能正确表示该代数式的 C 语言表达式的是【 】。(分数:1.00)A.B.C.D.47.有一函数 (分数:1.00)A.if(x0)y=1; else if(x= =0)y=0; else

    22、 y=-1;B.y=0; if(x0)y=1; else if(xC.y = 0; if (x = 0) if (x0) y = 1; else y = -1;D.if ( x = 0) if ( x0)y = 1; else y = 0; else y = -1;48.已定义以下函数 fun(int *p) return *p; 该函数的返回值是( )。 (分数:1.00)A.不确定的值B.形参 p 中存放的值C.形参 p 所指存储单元中的值D.形参 p 的地址值49.下列叙述中正确的是【 】。(分数:1.00)A.算法的效率只与问题的规模有关,而与数据的存储结构无关B.算法的时间复杂度是指

    23、执行算法所需要的计算工作量C.数据的逻辑结构与存储结构是一一对应的D.算法的时间复杂度与空间复杂度一定相关50.在 Windows 环境下,资源管理器左窗口中的某文件夹左边标有“+“标记表示( )。(分数:1.00)A.该文件夹为空B.该文件夹中含有子文件夹C.该文件夹中只包含有可执行文件D.该文件夹中包含系统文件51.有以下程序 int f1 (int x,inty)return xy?x:y; int f2(int x,int y)return xy?y:x; main() int a=4,b=3,c=5,d=2,e,f,g; e=f2(f1(a,b),f1(c,d);f=f1(f2(a,

    24、b),f2(c,d); g=a+b+c+d-e-f; pintf(“%d,%d,%d/n“,e,f,g); 程序运行后的输出结果是【 】。(分数:1.00)A.4,3,7B.3,4,7C.52,7D.2,5,752.有以下程序 fun(int a, int b) if(ab) return(a); else return(b); main( ) int x=3, y=8, z=6, r; r=fun(fun(x,y), 2*z); printf(“%d/n“, r); 程序运行后的输出结果是( )。 (分数:1.00)A.3B.6C.8D.1253.有以下程序: main() char p=a

    25、,b,c,q=“abc“; printf(“%d%d/n“,sizeof(p),sizeof(q); 程序运行后的输出结果是【 】。 (分数:1.00)A.4 4B.3 3C.3 4D.4 354.与数学式 (分数:1.00)A.3*xn/(2*x-1)B.3*x*n/(2*x-1)C.3*pow(x,n)*(1/(2*x-1) )D.3*pow(n,x)/(2*x-1)55.以下函数的功能是:通过键盘输入数据,为数组中的所有元素赋值。 #define N 10 void arrin(int xN) int i=0; while(iN) scanf(“%d“,_); 在下划线处应填入的是( )

    26、。 (分数:1.00)A.x+iB. t=a; a=b; b=t; main2 intx=3,y=5,* p=x,* q=y; swap(p,q); prinff(“%d %d/n“, *p, *q); (分数:2.00)填空项 1:_67.以下程序的输出结果是 1。 #include main2 char a=1,2,3,4,O; printf(“ddn“,sizeof(a),strlen(a); (分数:2.00)填空项 1:_68.以下程序的运行结果是 1 int k=0; void fun(int m) m+=k;k+=m;printf(“m=d k=d “,m,k+); main2

    27、int i=4; fun(i+);printf(“i=d k=dn“,i,k); (分数:2.00)填空项 1:_69.以下程序运行后的输出结果是 1。 struct NODE int num;struct NODE *next; ; main2 struct NODE s3=1,/0,2,/0,3,0,*p,*q,*r; int sum=0; s0.next=s+1;s1.next=s+2;s2.next=s; p=s; q=p-next; r=q-next; sum+=q-next-num; sum+=r-next-next-num; printf(“%d/n“,sum); (分数:2.0

    28、0)填空项 1:_70.若有以下程序 main( ) char a; a=H-A+0; printf(“%c/n“,a); 执行后输出结果是 1。 (分数:2.00)填空项 1:_71.计算机网络分为广域网和局域网,因特网属于 1。(分数:2.00)填空项 1:_72.若有以下程序 int f(int x,int y) return(y-x)*x; main( ) int a=3,b=4,c=5,d; d=f(f(3,4),f(3,5); printf(“%d/n“,d); 执行后输出结果是 1。 (分数:2.00)填空项 1:_73.设有定义:FILE*fw;,请将以下打开文件的语句补充完整

    29、,以便可以向文本文件 readme.txt 的最后续写内容。fw=fopen(“readme.txt“, 1);(分数:2.00)填空项 1:_74.设函数 findbig( )已定义为求 3 个数中的最大值。以下程序将利用函数指针调用 findbig 函数。请填空。 main( ) int findbig(int,int,int); int (*f)( ),x,y,z,big; f= 1; scanf(“%d%d%d“, big=(*f)(x,y,z); printf(“big=%d/n“,big); (分数:2.00)填空项 1:_75.在进行模块测试时,要为每个被测试的模块另外设计两类模

    30、块:驱动模块和承接模块(桩模块)。其中 1 的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果。(分数:2.00)填空项 1:_76.以下程序的功能是计算:s=1+12+123+1234+12345。请填空。 main1 int t=0,s=0,i; for(i=1;i=5;i+)t=i+ 2; s=s+t; printf(“s=%d/n“,s); (分数:2.00)填空项 1:_77.Windows 窗口一般由标题栏、菜单栏、控制按钮等部分组成。为了移动窗口,则要用鼠标拖动 1。(分数:2.00)填空项 1:_78.以下程序运行后输入:3,abcde,则输出结果是 1 #in

    31、clude string.h move(char *str, int n) char temp; int i; temp=strn-1; for(i=n-1;i0;i-) stri=stri-1; str0=temp; main( ) char s50; int n, i, z; scanf(“%d,%s“, z=strlen(s); for(i=1; i=n; i+ move(s, z); printf(“%s/n“,s); (分数:2.00)填空项 1:_79.以下程序运行后的输出结果是 1。 main ( ) char a=“Language“,b=“Programe“; char *p

    32、1,*p2; int k; p1=a; p2=b; for(k=0;k=7;k+) if(*p1+k)=*(p2+k) printf(“%c“,*(p1+k); (分数:2.00)填空项 1:_80.以下程序的输出结果是 1。 #include main2 prinff(“dn“,strlen(“IBMn0121“); (分数:2.00)填空项 1:_计算机二级(C)56 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(1-10 题每题 2 分,11-50 题(总题数:60,分数:60.00)1.下列关于栈的描述正确的是【 】。(分数:1.00)A.在栈中能插入元素而不能删除元

    33、素B.在栈中只能删除元素而不能插入元素C.栈是特殊的线性表,只能在一端插入或删除元素 D.栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素解析:栈实际上也是线性表,只不过是一种特殊的线性表。在这种特殊的线性表中,其插入和删除只在线性表的一端进行。 2.设有定义:long x= -123456L;,则以下能够正确输出变量 x 值的语句是( )。(分数:1.00)A.printf(“x=%d/n“,x);B.printf(“x=%1d/n“,x); C.printf(“x=%8dL/n“,x);D.printf(“x=%LD/n“,x);解析:在语言环境下,输出 long 型数时,在%和

    34、d 之间必须加 1(L 的小写);输出 double 型数时,在% 和 f(e)之间也必须加 1。3.有以下程序 fun(char P10) int n=0,i; for(i=0;iA.1B.2 C.3D.0解析:此程序是统计一周七天中英文名称首字母为“T“的个数。Pi0是字符串的首字符,一共有两个“T“,所以 n=2。4.有以下程序: struc 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=“Sun

    35、Dan”,2044; *c=b; main( ) struct STU a=“YangSan”,2041,b=“WangYin”,2043 ; f1(a);f2( printf(“%d %d/n”,a.num,b.num); 执行后的输出结果是( )。 (分数:1.00)A.2041 2044 B.2041 2043C.2042 2044D.2042 2043解析:5.在 DOS 环境下,为了得到 TYPE 命令的帮助信息,正确的 DOS 命令为( )。(分数:1.00)A.TYPEB.TYPE/HC.TYPE/*D.TYPE/? 解析:6.已知 i,j,k 为 int 型变量,若从键盘输入:

    36、1,2,3,使 i 的值为 1,j 的值为 2,k 的值为 3,以下选项中正确的输入语句是( )。(分数:1.00)A.scanf (“%2d%2d%2d“,i,j,k);B.scanf (“%d %d %d“,i,j,k);C.scanf (“%d,%d,%d“,i,j,k); D.scanf (“i=%d,j=%d,k=%d“,i,j,k);解析:7.以下叙述中正确的是【 】。(分数:1.00)A.预处理命令行必须位于 C 源程序的起始位置B.在 C 语言中,预处理命令行都以“#“开头 C.每个 C 程序必须在开头包含预处理命令行#includeD.C 语言的预处理不能实现宏定义和条件编译

    37、的功能解析:预处理命令可以放在程序中的任何位置,其有效范围是从定义开始到文件结束。预处理命令有宏定义、文件包含和条件编译三类。只是其中的一个文件,并非每次预处理命令都用此文件。8.以下程序段中与语句 k=ab?(bc?1:0):0;功能等价的是( )。(分数:1.00)A.if(ab) else k=0; B.if(ab)|(bc) k=1 else k=0;C.if(ab) k=1; else if(bc) k=1; else k=0;解析:9.若有以下说明和语句,int c45,(*p)5;p=c; 能正确引用 c 数组元素的是( )。 (分数:1.00)A.p+1B.*(p+3)C.*(

    38、p+1)+3D.*(p0+2) 解析:10.有以下程序段: int k=0,a=1,b=2,c=3; k=ab?b:a; k=kc?c:k; 执行该程序段后,k 的值是【 】。 (分数:1.00)A.3B.2 C.1D.0解析:三目运算符的一般形式为(表达式 1)?(表达式 2):(表达式 3),当(表达式 1)值为真时,(表达式 2)的值为整个表达式的值;当(表达式 1)值为假时,(表达式 3)的值为整个表达式的值。题中执行表达式“k=ab?b:a“后,k=2,将此值代入后一个表达式“k=kc?c:k,由于“kc“值为假,故 k 的值还等于原来 k的值,即 B。 11.有以下程序: #inc

    39、lude string.h struct STU int num; float TotalScore; ; void f(struct STU p) struct STU s2=20044,550,20045,537; p.num=s1.num;p.TotalScore=s1.TotalScore; main() struct STU s2=20041,703,20042,580; f(s0); printf(“%d%3.0t/n“,s0.num,s0.TotalScore); 程序运行后的输出结果是【 】。 (分数:1.00)A.20045 537B.20044 550C.20042 580

    40、D.20041 703 解析:本题定义了结构体类型的变量 P 作为形参,并将结构体变量 s0中的值传递给了形参变量 p,在函数f 中,又对 p 中的内容作了改变,但这种改变对工函数中 s0的值并不产生影响,所以主函数中输出 s0的数据依然是在主函数中初始化时的数据。 12.有以下程序 main( ) char s =“/n123 / /“; printf(“%d,%d/n“,strlen(s),sizeof(s); 执行后输出结果是( )。 (分数:1.00)A.赋初值的字符串有错B.6,7C.5,6 D.6,6解析:13.已有定义:int i,a10,*p;,则合法的赋值语句是( )。(分数

    41、:1.00)A.p=100;B.p=a5;C.p=a2+2;D.p=a+2; 解析:14.有以下程序: main() int m,n,p; scanf(“m=%dn=%dp=%d“, printf(“%d%d%/n“,m,n,p); 若想从键盘上输入数据,使变量 m 中的值为 123,n 中的值为 456;p 中的值为 789,则正确的输入是【 】。(分数:1.00)A.m=123 n=456p=789 B.m=123 n=456 p=789C.m=123,n=456,p=789D.123 456 789解析:根据本题的数据输入形式“scanf(“m=%dn=%dp=%d“,v int num

    42、; int Score; ;main( ) struct STU s5= “YangSan”,20041,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;jpj-Score) t=pi;pi=pj;pj=t; printf(“5d %d/n”,s1.Score,p1-Score); 执行后输出结果是( )。 (分数:1.00)A.550 550B.680

    43、 680C.580 550 D.580 680解析:17.有以下程序 fun(int x) int p; if(x= =0 | X= =1)return(3); P=x-fun(x-2); return P; main() printf(“dn“,fun(7); 执行后的输出结果是【 】。 (分数:1.00)A.7B.3C.2 D.0解析:因为 fun(int x)是一个递归函数,所以主函数中的调用 fun(7)经过三次递归调用,其过程可以描述为“fun(7)=7-fun(5)=7-(5-fun(3)=7-(5-(3-fun(1)=7-(5-(3-3)=7-5=2“,所以最后的输出结果为 2。

    44、18.程序中对 fun 函数有如下说明: void *fun( ); 此说明的含义是( )。 (分数:1.00)A.fun 了数无返回值B.fun 函数的返回值可以是任意的数据类型C.fun 函数的返回值是无值型的指针类型 D.指针 fun 指向一个函数,该函数无返回值解析:19.下列选项中不符合良好程序设计风格的是【 】。(分数:1.00)A.源程序要文档化B.数据说明的次序要规范化C.避免滥用 goto 语句D.模块设计要保证高耦合、高内聚 解析:程序设计风格是指编写程序时所表现出的特点、习惯和逻辑思路。著名的“清晰第一,效率第二“的论点已成为当今主导的程序设计风格。要形成良好的程序设计风

    45、格,主要应注意和考虑下述一些因素:源程序文档化;数据说明的次序规范化;避免滥用 goto 语句等,除此之外,一般较优秀的软件设计尽量做到高内聚、低耦合,这样有利于提高软件模块的独立性。所以正确选项是 D)。20.若有定义 int x=0,*p= p= for(i=0;iA.3B.6 C.9D.2解析:22.从 Windows 环境进入 MSDOS 方式后,返回 Windows 环境的 DOS 命令为( )。(分数:1.00)A.EXIT B.QUITC.RETD.MSDOS解析:23.所谓 “裸机”是指( )。(分数:1.00)A.单片机B.单板机C.不装备任何软件的计算机 D.只装备操作系统的计算机解析:24.以下选项中合法的用户标识符是( )。(分数:1.00)A.longB._2Test C.3DmaxD.A.dat解析:C 语言中合法的变量名由字母、数字和下划线组成,且第一个字符必须为字母或下划线。25.有以下程序(提示:程序中 fseek(fp,-2L*sizeof(int),SEEK_END);语句的作用是使位置指针从文


    注意事项

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




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

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

    收起
    展开