1、二级 C 语言笔试-261 及答案解析(总分:104.00,做题时间:90 分钟)一、选择题(总题数:50,分数:60.00)1.若有说明语句:int a,b,c,* dc;,则能正确从键盘读入三个整数分别赋给变量 a、b、d 的语句是 ( )(分数:1.00)A.scanf(“%d%d%d“,a,b,d);B.scanf(“%d%d%d“,a,b,d);C.scanf(“%d %d%d“,a,b,d);D.scanf(“%d%d%d“,a,b,* d);2.计算机网络最突出的优点是 ( )(分数:1.00)A.运算速度快B.存储容量大C.共享资源D.精度高3.在 C 语言中,要求运算数必须是
2、整型的运算符是 ( )(分数:1.00)A.%B./C.D.!4.以下程序的输出结果是 ( )main( )int n3 3,i,j;for (i0;i3;i+ +)for(j0;i3;+) nij=i+j;for(i0;i2;i+)for(j0,j2;j+) ni+1j+1+ij;printf(“%d/n“,n1j);(分数:1.00)A.14B.0C.6D.值不确定5.16 位二进制补码表示的数据范围是 ( )(分数:1.00)A.0(2 16-1)B.02 15C.-215(2 15-1)D.-2152 156.计算机病毒不能破坏( )中的软件。(分数:1.00)A.ROMB.RAMC.
3、软盘D.硬盘7.根据 C 语言的语法规则,下列字符串中哪些是关键字或保留字 ( )(分数:1.00)A.automateB.readerC.staticD.input8.十进制数 269 转换成十六进制数是 ( )(分数:1.00)A.10EB.10DC.10CD.10B9.某一微机的地址总线为 20 位,其可访问的最大空间地址为 ( )(分数:1.00)A.220B.219C.220+1D.220-110.与以下定义等价的是 ( )int * p 4(分数:1.00)A.int p 4B.int * pC.int *(p4)D.int( * p)411.拥有 PC 机并以拨号方式接入网络的用
4、户需要配置 ( )(分数:1.00)A.CD-ROMB.ModemC.电话机D.鼠标12.以下程序的输出结果是 ( )#includestdlibhint a 3 31,2,3,4,5,6,7,8,9,*p;main( )p(int *)malloc(sizeof(int);f(p,a);printf(“%d/n“,*p);f(int *s,intp3)*sp11; (分数:1.00)A.1B.4C.7D.513.若有以下的说明和语句,则在执行 for 语句后,*(* pt+1)+2)表示的数组元素是 ( )int t3 3,*pt3,k;for(k0;k3;k+ +)ptktk 0;(分数:
5、1.00)A.t2 0B.t2 2C.t1 2D.t2 114.在不同进制的四个数中,最小的一个数是 ( )(分数:1.00)A.(11011001)2B.(75)8C.(37)10D.(2A)16/15.若要显示或打印汉字将用到汉字编码中的 ( )(分数:1.00)A.输入码B.字型码C.机内码D.交换码16.下面程序把数组元素中的最大值放入 ao中,则在 if 语句中的条件表达式应该是 ( )main( )int a106,7,2,9,1,10,5,8,4,3,*p=a,i;for(i0;i10;i+ +,p+ +)if(_) *a*p;printf(“%d“,*a);(分数:1.00)A
6、.paB.* pa0C.*p* a 0D.* p 0* a 017.下面程序的输出结果是 ( )main( )int x,y,z;x0,yz-1;x+-z- - -y;pritnf(“x%d/n“,x);(分数:1.00)A.x4B.x0C.x2D.x318.位运算 071052 的八进制值是 ( )(分数:1.00)A.052B.023C.017D.07119.下面程序的输出结果是 ( )main( )int i,f1,f2;f1f21;for(i0;i4;i+ +)printf(”%d%d”,f1,f2);f1+ f2;f2+ f1;(分数:1.00)A.1 2 3 4 5 6 7 8B.
7、1 1 2 3 5 8 13 21C.1 1 3 5 7 9 11 13D.1 3 5 7 9 11 13 1520.一个文件的扩展名通常表示 ( )(分数:1.00)A.由用户自定义B.文件的版本C.文件的大小D.文件的类型21.在下列关于 C 语言的局部变量和全局变量所采取的存储类别的叙述中,错误的一条是 ( )(分数:1.00)A.对于动态局部变量来说,一旦离开函数,其值就消失B.对于静态局部变量来说,离开函数,其值仍保留C.对于寄存器变量来说,一旦离开函数,其值就消失D.静态外部变量既可在本文件中引用,又可在其他文件中引用22.表示“在使用 x 之后,再使 x 的值加 1”的正确方式是
8、 ( )(分数:1.00)A.+ +xB.x+ +C.+xD.+ x+23.八位二进制补码 01000100 用十进制数表示为 ( )(分数:1.00)A.68B.-68C.-36D.6024.为使*p20,下面正确的程序是 ( )(分数:1.00)A.# includestdiohmain( )int a10,b20,*pb;printf(“%d/t%d/n“,p,*p);*p)B.# includestdiohmain( )int a10,b20,*pb;printf(“%d/t/%d/n“,p,*p)C.# includestdiohmain( )int a10,b20,*p;pa;p
9、+ +;printf(“%d/t/%d/n“,p,*p);D.# includestdiohmain( )int a10,b20,*p;*p20;printf(“%d/t/%d/n“,p,*p);25.某一个汉字的区位码为(2113H),则其内码为 ( )(分数:1.00)A.(2199)10B.(C1B3H)C.(C1B3)10D.(B1B3H)26.在浏览 WWW 时,如果连接到一个安全的站点,应当以( )开头来书写统一资源定位器。(分数:1.00)A.shttp:/B.http:s/C.http:/D.https/27.若 fp 是指向某文件的指针,且已读到文件的末尾,则 C 语言函数
10、feof(fp)的返回值是 ( )(分数:1.00)A.EOFB.-1C.非零值D.NULL28.Modem 的功能是实现( )(分数:1.00)A.数字信号的编码B.模拟信号的采样、量化C.数字信号的整形D.模拟信号与数字信号的转换29.有 1000 个 6464 汉字的点阵汉字库,其存储空间为( )KB。(分数:1.00)A.500B.1000C.512D.102430.局域网的网络软件主要包括 ( )(分数:1.00)A.服务器操作系统、网络数据库管理系统和网络应用软件B.工作站软件和网络数据库管理系统C.网络操作系统、网络数据库存管理系统和网络应用软件D.网络传输协议和网络应用软件31
11、.以下所列的各函数首部中,正确的是 ( )(分数:1.00)A.void play (var:Integer,var b:Integer)B.void play(int a,b)C.void play(int a,int b)D.Sub play(a as integer,b as integer)32.局域网的网络硬件主要服务器、工作站、网卡和 ( )(分数:1.00)A.传播介质B.网络操作系统C.计算机D.网络拓扑结构33.以下程序的输出结果是 ( )main( )int a 10 1,2,3,4,5,6,7,8,9,10,*pa;printf(“%d/n“,* (p+2);(分数:1.
12、00)A.3B.4C.1D.234.应用数据库的主要目的是为了 ( )(分数:1.00)A.解决数据的保密问题B.解决数据的共享问题C.解决数据量大的问题D.解决数据的完整性问题35.若要“为读/写建立个新的文本文件”,在 fopen 函数中应使用的文件方式是 ( )(分数:1.00)A.“w“B.“wb“C.“w+“D.“wb+“36.字符串“/“abc/“/“的长度是 ( )(分数:1.00)A.11B.7C.5D.337.以下程序的输出结果是 ( )main( )int w5;fun(w);printf(“/n“);fun (int k)if (k0) fun (k-1);printf(
13、“%d“,k);(分数:1.00)A.5 4 3 2 1B.0 1 2 3 4 5C.1 2 3 4 5D.5 4 3 2 1 038.以下程序的输出结果是 ( )main( )int k17;printf(“%d,%o,%x/n“,k,k,k);(分数:1.00)A.17,021,0x11B.17,17,17C.17,0x11,021D.17,21,1139.以下程序的输出结果是 ( )main( )union char i 2;int k;r;r. i02,ri10;printf(“%d/n“,r,k);(分数:1.00)A.2B.1C.0D.不确定40.在下列字符序列中,不可用做 C 语
14、言标识符的是 ( )(分数:1.00)A.student_numB.classC.# 88D.month_1241.执行以下程序段 ( )x-1;doxx*x;while(!x);(分数:2.00)A.循环体将执行一次B.循环体将执行两次C.循环体将执行无限次D.系统将提示有语法错误42.若有说明:long*p,a;,则不能通过 scanf 语句正确给输入项读入数据的程序段是 ( )(分数:2.00)A.* pa;scanf(“%1d“,p);B.p(long*)malloc(8);scanf(“%1d“,p);C.scanf(“%1d“,pa);D.scanf(“%1d“,a);43.设有以
15、下定义或语句,则输出的结果是(用 small 模式编译,指针变量占 2 个字节) ( )struct datelong * cat;struct date *next;double dog; too;printf(“%d“,sixeof(too);(分数:2.00)A.20B.16C.14D.1244.下列运算符中,属于关系运算符的是 ( )(分数:2.00)A.B.C.D.!45.以下程序的输出结果是 ( )main( )char ch 34“123“,“456“,“78“,*p 3;int i;for(i0;i3;i+ +)pichi;for(i0;i3;i+ +)printf(“%s“,
16、pi);(分数:2.00)A.123456780B.123 456 780C.12345678D.14746.若要求在 if 后一对圆括号中表示 a 不等于 0 的关系,则能正确表示这一关系的表达式为 ( )(分数:2.00)A.a0B.! aC.a0D.a47.以下不是网络操作系统的是 ( )(分数:2.00)A.Windows3.1B.Windows NTC.NetWareD.UNIX48.在下列文件名表示方式中,与*E *等效的是 ( )(分数:2.00)A.*?B.?*C.?E?D.* *49.在下列字符序列中,合法的标识符是 ( )(分数:2.00)A.P12.aB.stud_100
17、C.$ water.12D.88sum50.衡量显示器的主要技术指标是 ( )(分数:2.00)A.波特率B.分辨率C.主频D.显示速度二、填空题(总题数:13,分数:44.00)51.模式/内模式映射为数据库提供了 【1】 数据独立性。(分数:2.00)填空项 1:_52.为了列出当前盘当前目录中所有第三个字符为 C 的文件名的有关信息,应该使用命令 【2】 。(分数:2.00)填空项 1:_53.E-mail 地址由用户名和域名两部分组成,这两部分的分隔符为 【3】 。(分数:2.00)填空项 1:_54.用十六进制给存储器中的字节地址进行编号,其地址编号从 0000 到 FFFF,则该存
18、储器容量是 【4】 。(分数:2.00)填空项 1:_55.如果两个 8 位二进制数 00010101 与 01000111 相加,其结果用十进制表示为 【5】 。(分数:2.00)填空项 1:_表示条件:10x100 或 x0 的 C 语言表达式 【6】 。(分数:4.00)填空项 1:_填空项 1:_56.mystrlen 函数的功能是计算 str 所指字符串的长度,并作为函数值返回。请填空。int mystrlen(char * str)int i;for (i0; 【7】 )!/0;i+ +)return 【8】);(分数:4.00)填空项 1:_57.对数组中的元素值进行排序。请填空
19、。# includestdiohmain( )int a2,4,15,3,17,5,8,23,9,7,11,13, i,j,k;for(k0;k12;k+ +)for(ik;i12;i+ +)if(ai 【9】 )ja i;a i 【10】 ;【11】 j;for(i0;i12;i+)printf(“%4d“,ai);printf(“/n“);(分数:6.00)填空项 1:_58.理解下面的程序,填空完善程序。main( )int a,b,c;scanf(“%d%d“, 【12】 );c= 【13】 (a,b);printf(“a%d b%d max%d/n“,a,b,c);int max(x
20、,y)【14】 ;int z;if(xy) zx;else zy;【15】 ;(分数:8.00)填空项 1:_59.以下函数把 b 字符串连接到 a 字符串的后面,并返回 a 中新字符串的长度。请填空。strcen (char a ,char b )int num0,n0;while (*(a+num)! 【16】 )num+ +;while(bn)* (a+num) bn;num+ +; 【17】 );return(num);(分数:4.00)填空项 1:_60.下面程序的输出结果是 【18】 。# includestdiohmain ( )char * p=“BOOL“OPK“,“H“,“
21、SP“;int i;for (i=3,i0;i- -,i- -)printf(“%“,*pi);printf(“/n“);(分数:2.00)填空项 1:_为了建立如图所示的存储结构(即每个结点含两个域,data 是数据域,next 是指向结点的指针域)。请填空。(分数:4.00)填空项 1:_填空项 1:_61.下面的程序用来统计文件中字符的个数。请填空。# includestdiohmain( )FILE *fP;long num0;if( (fp=fopen(“fnamedat“,“r“)NULL)printf(“Cant open file! /n“);sxit(0);while 【20
22、】 fgetc(fp);num;printr(“num%d/n“,num);fclose (fp);(分数:2.00)填空项 1:_二级 C 语言笔试-261 答案解析(总分:104.00,做题时间:90 分钟)一、选择题(总题数:50,分数:60.00)1.若有说明语句:int a,b,c,* dc;,则能正确从键盘读入三个整数分别赋给变量 a、b、d 的语句是 ( )(分数:1.00)A.scanf(“%d%d%d“,a,b,d); B.scanf(“%d%d%d“,a,b,d);C.scanf(“%d %d%d“,a,b,d);D.scanf(“%d%d%d“,a,b,* d);解析:2
23、.计算机网络最突出的优点是 ( )(分数:1.00)A.运算速度快B.存储容量大C.共享资源 D.精度高解析:3.在 C 语言中,要求运算数必须是整型的运算符是 ( )(分数:1.00)A.% B./C.D.!解析:4.以下程序的输出结果是 ( )main( )int n3 3,i,j;for (i0;i3;i+ +)for(j0;i3;+) nij=i+j;for(i0;i2;i+)for(j0,j2;j+) ni+1j+1+ij;printf(“%d/n“,n1j);(分数:1.00)A.14B.0C.6 D.值不确定解析:5.16 位二进制补码表示的数据范围是 ( )(分数:1.00)A
24、.0(2 16-1)B.02 15C.-215(2 15-1) D.-2152 15解析:6.计算机病毒不能破坏( )中的软件。(分数:1.00)A.ROM B.RAMC.软盘D.硬盘解析:7.根据 C 语言的语法规则,下列字符串中哪些是关键字或保留字 ( )(分数:1.00)A.automateB.readerC.static D.input解析:8.十进制数 269 转换成十六进制数是 ( )(分数:1.00)A.10EB.10D C.10CD.10B解析:9.某一微机的地址总线为 20 位,其可访问的最大空间地址为 ( )(分数:1.00)A.220 B.219C.220+1D.220-
25、1解析:10.与以下定义等价的是 ( )int * p 4(分数:1.00)A.int p 4B.int * pC.int *(p4) D.int( * p)4解析:11.拥有 PC 机并以拨号方式接入网络的用户需要配置 ( )(分数:1.00)A.CD-ROMB.Modem C.电话机D.鼠标解析:12.以下程序的输出结果是 ( )#includestdlibhint a 3 31,2,3,4,5,6,7,8,9,*p;main( )p(int *)malloc(sizeof(int);f(p,a);printf(“%d/n“,*p);f(int *s,intp3)*sp11; (分数:1.
26、00)A.1B.4C.7D.5 解析:13.若有以下的说明和语句,则在执行 for 语句后,*(* pt+1)+2)表示的数组元素是 ( )int t3 3,*pt3,k;for(k0;k3;k+ +)ptktk 0;(分数:1.00)A.t2 0B.t2 2C.t1 2 D.t2 1解析:14.在不同进制的四个数中,最小的一个数是 ( )(分数:1.00)A.(11011001)2B.(75)8C.(37)10 D.(2A)16/解析:15.若要显示或打印汉字将用到汉字编码中的 ( )(分数:1.00)A.输入码B.字型码 C.机内码D.交换码解析:16.下面程序把数组元素中的最大值放入 a
27、o中,则在 if 语句中的条件表达式应该是 ( )main( )int a106,7,2,9,1,10,5,8,4,3,*p=a,i;for(i0;i10;i+ +,p+ +)if(_) *a*p;printf(“%d“,*a);(分数:1.00)A.paB.* pa0 C.*p* a 0D.* p 0* a 0解析:17.下面程序的输出结果是 ( )main( )int x,y,z;x0,yz-1;x+-z- - -y;pritnf(“x%d/n“,x);(分数:1.00)A.x4B.x0C.x2 D.x3解析:18.位运算 071052 的八进制值是 ( )(分数:1.00)A.052B.
28、023C.017 D.071解析:19.下面程序的输出结果是 ( )main( )int i,f1,f2;f1f21;for(i0;i4;i+ +)printf(”%d%d”,f1,f2);f1+ f2;f2+ f1;(分数:1.00)A.1 2 3 4 5 6 7 8B.1 1 2 3 5 8 13 21 C.1 1 3 5 7 9 11 13D.1 3 5 7 9 11 13 15解析:20.一个文件的扩展名通常表示 ( )(分数:1.00)A.由用户自定义B.文件的版本C.文件的大小D.文件的类型 解析:21.在下列关于 C 语言的局部变量和全局变量所采取的存储类别的叙述中,错误的一条是
29、 ( )(分数:1.00)A.对于动态局部变量来说,一旦离开函数,其值就消失B.对于静态局部变量来说,离开函数,其值仍保留 C.对于寄存器变量来说,一旦离开函数,其值就消失D.静态外部变量既可在本文件中引用,又可在其他文件中引用解析:22.表示“在使用 x 之后,再使 x 的值加 1”的正确方式是 ( )(分数:1.00)A.+ +xB.x+ + C.+xD.+ x+解析:23.八位二进制补码 01000100 用十进制数表示为 ( )(分数:1.00)A.68 B.-68C.-36D.60解析:24.为使*p20,下面正确的程序是 ( )(分数:1.00)A.# includestdiohm
30、ain( )int a10,b20,*pb;printf(“%d/t%d/n“,p,*p);*p) B.# includestdiohmain( )int a10,b20,*pb;printf(“%d/t/%d/n“,p,*p)C.# includestdiohmain( )int a10,b20,*p;pa;p + +;printf(“%d/t/%d/n“,p,*p);D.# includestdiohmain( )int a10,b20,*p;*p20;printf(“%d/t/%d/n“,p,*p);解析:25.某一个汉字的区位码为(2113H),则其内码为 ( )(分数:1.00)A.
31、(2199)10B.(C1B3H) C.(C1B3)10D.(B1B3H)解析:26.在浏览 WWW 时,如果连接到一个安全的站点,应当以( )开头来书写统一资源定位器。(分数:1.00)A.shttp:/B.http:s/C.http:/ D.https/解析:27.若 fp 是指向某文件的指针,且已读到文件的末尾,则 C 语言函数 feof(fp)的返回值是 ( )(分数:1.00)A.EOFB.-1C.非零值D.NULL 解析:28.Modem 的功能是实现( )(分数:1.00)A.数字信号的编码B.模拟信号的采样、量化C.数字信号的整形D.模拟信号与数字信号的转换 解析:29.有 1
32、000 个 6464 汉字的点阵汉字库,其存储空间为( )KB。(分数:1.00)A.500 B.1000C.512D.1024解析:30.局域网的网络软件主要包括 ( )(分数:1.00)A.服务器操作系统、网络数据库管理系统和网络应用软件B.工作站软件和网络数据库管理系统C.网络操作系统、网络数据库存管理系统和网络应用软件 D.网络传输协议和网络应用软件解析:31.以下所列的各函数首部中,正确的是 ( )(分数:1.00)A.void play (var:Integer,var b:Integer)B.void play(int a,b)C.void play(int a,int b) D
33、.Sub play(a as integer,b as integer)解析:32.局域网的网络硬件主要服务器、工作站、网卡和 ( )(分数:1.00)A.传播介质 B.网络操作系统C.计算机D.网络拓扑结构解析:33.以下程序的输出结果是 ( )main( )int a 10 1,2,3,4,5,6,7,8,9,10,*pa;printf(“%d/n“,* (p+2);(分数:1.00)A.3 B.4C.1D.2解析:34.应用数据库的主要目的是为了 ( )(分数:1.00)A.解决数据的保密问题B.解决数据的共享问题C.解决数据量大的问题D.解决数据的完整性问题 解析:35.若要“为读/写
34、建立个新的文本文件”,在 fopen 函数中应使用的文件方式是 ( )(分数:1.00)A.“w“B.“wb“C.“w+“D.“wb+“ 解析:36.字符串“/“abc/“/“的长度是 ( )(分数:1.00)A.11B.7 C.5D.3解析:37.以下程序的输出结果是 ( )main( )int w5;fun(w);printf(“/n“);fun (int k)if (k0) fun (k-1);printf(“%d“,k);(分数:1.00)A.5 4 3 2 1B.0 1 2 3 4 5 C.1 2 3 4 5D.5 4 3 2 1 0解析:38.以下程序的输出结果是 ( )main(
35、 )int k17;printf(“%d,%o,%x/n“,k,k,k);(分数:1.00)A.17,021,0x11B.17,17,17C.17,0x11,021D.17,21,11 解析:39.以下程序的输出结果是 ( )main( )union char i 2;int k;r;r. i02,ri10;printf(“%d/n“,r,k);(分数:1.00)A.2 B.1C.0D.不确定解析:40.在下列字符序列中,不可用做 C 语言标识符的是 ( )(分数:1.00)A.student_numB.classC.# 88 D.month_12解析:41.执行以下程序段 ( )x-1;do
36、xx*x;while(!x);(分数:2.00)A.循环体将执行一次 B.循环体将执行两次C.循环体将执行无限次D.系统将提示有语法错误解析:42.若有说明:long*p,a;,则不能通过 scanf 语句正确给输入项读入数据的程序段是 ( )(分数:2.00)A.* pa;scanf(“%1d“,p); B.p(long*)malloc(8);scanf(“%1d“,p);C.scanf(“%1d“,pa);D.scanf(“%1d“,a);解析:43.设有以下定义或语句,则输出的结果是(用 small 模式编译,指针变量占 2 个字节) ( )struct datelong * cat;s
37、truct date *next;double dog; too;printf(“%d“,sixeof(too);(分数:2.00)A.20B.16C.14D.12 解析:44.下列运算符中,属于关系运算符的是 ( )(分数:2.00)A.B. C.D.!解析:45.以下程序的输出结果是 ( )main( )char ch 34“123“,“456“,“78“,*p 3;int i;for(i0;i3;i+ +)pichi;for(i0;i3;i+ +)printf(“%s“,pi);(分数:2.00)A.123456780B.123 456 780C.12345678 D.147解析:46.
38、若要求在 if 后一对圆括号中表示 a 不等于 0 的关系,则能正确表示这一关系的表达式为 ( )(分数:2.00)A.a0B.! aC.a0D.a 解析:47.以下不是网络操作系统的是 ( )(分数:2.00)A.Windows3.1 B.Windows NTC.NetWareD.UNIX解析:48.在下列文件名表示方式中,与*E *等效的是 ( )(分数:2.00)A.*?B.?*C.?E? D.* *解析:49.在下列字符序列中,合法的标识符是 ( )(分数:2.00)A.P12.aB.stud_100 C.$ water.12D.88sum解析:50.衡量显示器的主要技术指标是 ( )
39、(分数:2.00)A.波特率B.分辨率 C.主频D.显示速度解析:二、填空题(总题数:13,分数:44.00)51.模式/内模式映射为数据库提供了 【1】 数据独立性。(分数:2.00)填空项 1:_ (正确答案:1(5)物理)解析:52.为了列出当前盘当前目录中所有第三个字符为 C 的文件名的有关信息,应该使用命令 【2】 。(分数:2.00)填空项 1:_ (正确答案:2 DIR?C*)解析:53.E-mail 地址由用户名和域名两部分组成,这两部分的分隔符为 【3】 。(分数:2.00)填空项 1:_ (正确答案:3(7))解析:54.用十六进制给存储器中的字节地址进行编号,其地址编号从
40、 0000 到 FFFF,则该存储器容量是 【4】 。(分数:2.00)填空项 1:_ (正确答案:464KB)解析:55.如果两个 8 位二进制数 00010101 与 01000111 相加,其结果用十进制表示为 【5】 。(分数:2.00)填空项 1:_ (正确答案:5 92)解析:表示条件:10x100 或 x0 的 C 语言表达式 【6】 。(分数:4.00)填空项 1:_ (正确答案:6(X10x100)| x0或(10xx100) |x0 或 x0 | (x10x100)或 0x | (10xx100)或(括号有无都可以))解析:填空项 1:_ (正确答案:6(X10x100)|
41、 x0或(10xx100) |x0 或 x0 | (x10x100)或 0x | (10xx100)或(括号有无都可以))解析:56.mystrlen 函数的功能是计算 str 所指字符串的长度,并作为函数值返回。请填空。int mystrlen(char * str)int i;for (i0; 【7】 )!/0;i+ +)return 【8】);(分数:4.00)填空项 1:_ (正确答案:7*(str+i) 或 stri8 i)解析:57.对数组中的元素值进行排序。请填空。# includestdiohmain( )int a2,4,15,3,17,5,8,23,9,7,11,13, i
42、,j,k;for(k0;k12;k+ +)for(ik;i12;i+ +)if(ai 【9】 )ja i;a i 【10】 ;【11】 j;for(i0;i12;i+)printf(“%4d“,ai);printf(“/n“);(分数:6.00)填空项 1:_ (正确答案:9 a k10 ak11ak)解析:58.理解下面的程序,填空完善程序。main( )int a,b,c;scanf(“%d%d“, 【12】 );c= 【13】 (a,b);printf(“a%d b%d max%d/n“,a,b,c);int max(x,y)【14】 ;int z;if(xy) zx;else zy;【
43、15】 ;(分数:8.00)填空项 1:_ (正确答案:12a,b13max14 int x,y15 return(z))解析:59.以下函数把 b 字符串连接到 a 字符串的后面,并返回 a 中新字符串的长度。请填空。strcen (char a ,char b )int num0,n0;while (*(a+num)! 【16】 )num+ +;while(bn)* (a+num) bn;num+ +; 【17】 );return(num);(分数:4.00)填空项 1:_ (正确答案:16/0或 017n+或 n+1 或 nn+1)解析:60.下面程序的输出结果是 【18】 。# inc
44、ludestdiohmain ( )char * p=“BOOL“OPK“,“H“,“SP“;int i;for (i=3,i0;i- -,i- -)printf(“%“,*pi);printf(“/n“);(分数:2.00)填空项 1:_ (正确答案:18SO)解析:为了建立如图所示的存储结构(即每个结点含两个域,data 是数据域,next 是指向结点的指针域)。请填空。(分数:4.00)填空项 1:_ (正确答案:19struct link * next)解析:填空项 1:_ (正确答案:19struct link * next)解析:61.下面的程序用来统计文件中字符的个数。请填空。# includestdiohmain( )FILE *fP;long num0;if( (fp=fopen(“fnamedat“,“r“)NULL)printf(“Cant open file! /n“);sxit(0);while 【20】 fgetc(fp);num;printr(“num%d/n“,num);fclose (fp);(分数:2.00)填空项 1:_ (正确答案:20(!feof(fp)或 feof(fp):0)解析: