2012年3月计算机网络三级南开百题题库
- 格式:doc
- 大小:159.00 KB
- 文档页数:54
南开一百题2012版(完整解析版)1、下列程序的功能是:将大于整数m且紧靠m的k个素数存入数组xx。
请编写函数num(int m,int k,int xx[])实现函数的要求,最后调用函数readwriteDAT()把结果输出到文件out.dat中。
例如:若输入17,5,则应输出:19,23,29,31,37。
#include <conio.h>#include <stdio.h>void readwriteDAT() ;int isP(int m){ int i ;for(i = 2 ; i < m ; i++)if(m % i == 0) return 0 ; return 1 ;}1:void num(int m,int k,int xx[]){int data=m+1;int half,n=0,I;while(1){half=data/2;for(I=2;I<=half;I++)if(data%I==0)break;if(I>half){xx[n]=data;n++;}if(n>=k)break;data++;} }或者:void num(int m,int k,int xx[]) {int i,j,s=0;for(i=m+1;k>0;i++){for(j=2;j<i;j++)if(i%j==0) break; /*注:素数为只能被自己和1整除的数.如果i%j等于0,说明i 不是素数,跳出本层循环*/if(i==j){xx[s++]=i;k--;}} }void num(int m, int k, int xx[]) { int i=0;for(m=m+1;k>0;m++)if(isP(m)){ xx[i++]=m;k--; } } main(){ int m, n, xx[1000] ;clrscr() ;printf("\nPlease enter twointegers:") ;scanf("%d,%d", &m, &n ) ;num(m, n, xx) ;for(m = 0 ; m < n ; m++)printf("%d ", xx[m]) ;printf("\n") ;readwriteDA T() ;}void readwriteDAT(){ int m, n, xx[1000], i ;FILE *rf, *wf ;rf = fopen("in.dat", "r") ;wf = fopen("out.dat", "w") ;for(i = 0 ; i < 10 ; i++) {fscanf(rf, "%d %d", &m,&n) ;num(m, n, xx) ;for(m = 0 ; m < n ; m++)fprintf(wf, "%d ", xx[m]) ;fprintf(wf, "\n") ;}fclose(rf) ;fclose(wf) ;}2、已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是: 如果四位数各位上的数字均是0或2或4或6或8, 则统计出满足此条件的个数cnt, 并把这些四位数按从大到小的顺序存入数组b中。
2012年3月全国计算机等级《三级网络技术》全真模拟试题(7) 总分:100分及格:60分考试时间:120分一、选择题(每小题1分,共60分)(1)凯撒密码是一种置换密码,对其破译的最多尝试次数是()。
A. 2次B. 13次C. 25次D. 26次(2)虚拟局域网采取什么方式实现逻辑工作组的划分和管理?()A. 地址表B. 软件C. 路由表D. 硬件(3)以下哪个不是IP服务具有的特点?()A. 不可靠B. 无连接C. 标记交换D. 尽最大努力(4)千兆以太网的传输速率是传统的10 Mbps以太网的100倍,但是它仍然保留着和传统的以太网相同的()。
A. 物理层协议B. 帧格式C. 网卡D. 集线器(5)关于Ethernet地址的描述中,下列哪个是错误的?()A. Ethernet地址就是通常所说的MAC地址B. MAC地址又称作局域网硬件地址C. 域名解析必然会用到MAC地址D. 局域网硬件地址存储在网卡之中(6)如果Ethernet交换机有4个100Mbps全双工端口和20个10Mbps半双工端口,那么这个交换机的总带宽最高可以达到()。
A. 600MbpsB. 1000MbpsC. 1200MbpsD. 1600Mbps(7)在因特网电子邮件系统中,电子邮件应用程序()。
A. 发送和接收邮件都使用SMTPB. 发送邮件通常使用POP3,而接收通常使用SMTPC. 发送邮件通常使用SMTP,而接收通常使用POP3D. 发送和接收邮件通常都使用POP3和IMAP(8)电子邮件传输协议是()。
A. DHCPB. FTPC. CMIPD. SMTP(9)奔腾芯片的哈佛结构是指()。
A. 内置U、V两条流水线B. 细化流水,提高主频C. 内置一个目标分支缓存器D. 指令与数据分开的两个缓存(10)路由器在网络中()。
A. 识别的是数据帧的物理地址B. 识别的是数据包的网络地址C. 既不识别物理地址,也不识别网络地址D. 识别的是逻辑地址(11)Windows 2000家族中,运行于客户端的通常是()。
计算机等级考试三级网络技术南开题一、题目要求1.题目描述计算机等级考试三级网络技术南开题。
2.题目要求请根据下面的问题,详细回答,并给出合理的解决方案。
问题一:请简要描述HTTP和HTTPS的区别。
问题二:请简要描述TCP和UDP的区别。
问题三:请简要描述什么是子网。
二、题目解答1. 问题一:请简要描述HTTP和HTTPS的区别。
HTTP(HyperText Transfer Protocol)是一种应用层协议,用于在网络中传输超文本和其他超媒体资源。
它是Web通信的基础,允许将HTML文档从Web服务器传输到客户端的浏览器。
HTTPS(HyperText Transfer Protocol Secure)是基于HTTP的安全通信协议。
它使用SSL(Secure Sockets Layer)或TLS(Transport Layer Security)协议来提供加密通信和身份验证。
HTTPS将HTTP与传输层安全性保护机制相结合,确保传输过程中的数据安全和完整性。
HTTP与HTTPS的主要区别如下:1.安全性:HTTP是不安全的,数据传输是明文的,容易被窃听和篡改。
而HTTPS通过加密的方式保护数据传输的安全性,使用SSL/TLS证书对服务器进行身份验证,防止数据被窃取或篡改。
2.端口号:HTTP使用默认的端口号80,而HTTPS使用默认的端口号443。
3.连接方式:HTTP是无状态协议,每个请求和响应都是独立的;而HTTPS通过SSL/TLS握手过程建立安全连接,使得每个请求和响应都在单独的SSL/TLS连接中进行。
4.证书:HTTPS需要有效的SSL/TLS证书来验证服务器的身份。
浏览器会检查证书的有效性和颁发机构,以确定是否可信。
而HTTP没有证书验证机制。
2. 问题二:请简要描述TCP和UDP的区别。
TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)都是传输层协议,用于在网络中传输数据。
说明:本题库是针计算机3级网络技术考试的上机考试题库,本题库共有100题题目1:下列程序的功能是:将大于整数m且紧靠m的k个素数存入数组xx。
请编写函数num(int m,int k,int xx[])实现函数的要求,最后调用函数readwriteDAT()把结果输出到文件out.dat中。
例如:若输入17,5,则应输出:19,23,29,31,37。
注意:部分源程序已给出。
请勿改动主函数main()和函数readwriteDAT()的内容。
--------------类型:素数。
void num(int m,int k,int xx[]){int data=m+1;int half,n=0,I;while(1){half=data/2;for(I=2;I<=half;I++)if(data%I==0)break;if(I>half){xx[n]=data;n++;}if(n>=k)break;data++;} }题目2:已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是: 如果四位数各位上的数字均是0或2或4或6或8, 则统计出满足此条件的个数cnt, 并把这些四位数按从大到小的顺序存入数组b中。
最后main()函数调用写函数writeDat( )把结果cnt 以及数组b中符合条件的四位数输出到OUT.DAT文件中。
注意: 部分源程序存在文件PROG1.C文件中。
程序中已定义数组: a[200], b[200], 已定义变量: cnt请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。
-------------------------void jsVal(){int bb[4];int I,j,k,flag;for (I=0;I<200;I++){bb[0]=a[I]/1000; bb[1]=a[I]%1000/100;bb[2]=a[I]%100/10; bb[3]=a[I]%10;for (j=0;j<4;j++){if (bb[j]%2==0)flag=1;else{flag=0;break;}}if (flag==1){ b[cnt]=a[I];cnt++;} }for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if (b[I]<b[j]){k=b[I];b[I]=b[j];b[j]=k;}}题目3:函数READDAT()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组XX中;请编制函数STROR(),其函数功能是:以行为单位把字符串中的所有小写字母O左边的字符串内容移到该串的右边存放,然后并把小写字母O删除,余下的字符串内容移到已处理字符串的左边存放.最后把已处理的字符串仍按行重新存入字符串数组XX中,最后调用函数WRITEDAT()把结果XX输出到文件OUT.DAT中.例如:原文:You can create an index on any field.you have the correct record.结果: n any field.You can create an indexrd.yu have the crrect rec原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格. -------------------类型:字符串(单词)的倒置和删除。
3月全国计算机三级网络技术考题试卷及答案一、选择题(每小题1分,共60分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
1. 多媒体版本的"清明上河图"分成54个场景进行高分辨率扫描,每个场景约为58.3MB,那么全图所需的存储容量是A. 1.15GBB. 2.15GBC. 3.15GBD. 4.15GB答案:C【解析】:多媒体版本的“清明上河图”分成54个场景进行扫描,每个场景约为58.3M,全图需要的存储容量为54*58.3 MB=3.15GB。
2. 关于计算机发展阶段的描述中,正确的是A. 最早批量生产的大型主机是UNIVACB. 著名的小型机是DG公司的PDP系列C. 最早的微型机是IBM-PCD. 流行的小型机是DEC公司的Nova系列答案:A【解析】:最早批量生产的大型主机是埃克特-莫奇莱计算机公司的UNIVAC;著名的小型机是DEC公司的PDP系列;最早的微型机是美国苹果计算机公司的AppleⅡ微型计算机;流行的小型机是DEC公司的VAX-11系列小型计算机。
3. 关于服务器机器的描述中,错误的是A. 企业级服务器是高端服务器B. 服务器按体系结构分为RISC、CISC和VLIW三种C. 入门级服务器不能提供E-mail服务D. 采用刀片式服务器可以实现高密度的结构答案:C4. 关于计算机技术指标的描述中,正确的是A. 奔腾芯片是32位的,双核奔腾芯片是64位的B. 平均浮点指令执行速度的单位是MIPSC. 单字长定点指令平均执行速度的单位是MFLOPSD. 平均无故障时间指多长时间系统发生一次故障答案:D【解析】:奔腾芯片是32位的,双核奔腾芯片也是32位的;平均浮点指令执行速度的单位是MFLOPS;单字长定点指令平均执行速度的单位是MIPS。
5. 关于软件开发的描述中,错误的是A. 软件开发包括计划、开发、运行三个阶段B. 程序由指令序列组成,采用自然语言编写C. 开发前期包括需求解析、总体设计、详细设计D. 运行阶段主要是进行软件维护答案:B【解析】:因为现在的计算机还不能完全理解人类的自然语言,所以还不能直接用自然语言编写计算机程序。
★☆题目51(整数各位打散组合运算题)没有提供求素数函数isprime() ,可自己编制已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:把千位数字和十位数字重新组成一个新的十位数(新十位数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的十位数字),以及把个位数字和百位数字组成另一个新的十位数(新十位数的十位数字是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字),如果新组成的两个十位数均是素数且新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b中,并要计算满足上述条件的四位数的个数cnt。
最后main()函数调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。
注意:部分源程序存在文件prog1.c中。
程序中已定义数组:a[200],b[200],已定义变量:cnt请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。
#include <stdio.h>#define MAX 200int a[MAX], b[MAX], cnt = 0 ;int isprime(int m){int i;for(i=2;i<=m/2;i++)if(m%i==0) return 0;return 1;}void jsVal(){int i,j,qw,bw,sw,gw;int ab,cd;for(i=0;i<200;i++){qw=a[i]/1000; bw=a[i]%1000/100;sw=a[i]%100/10; gw=a[i]%10;ab=10*qw+sw; cd=10*gw+bw;if(isprime(ab)&&isprime(cd)&&ab>=10&&cd>=10)b[cnt++]=a[i];}for(i=0;i<cnt-1;i++)for(j=i+1;j<cnt;j++)if(b[i]<b[j]) {qw=b[i];b[i]=b[j];b[j]=qw;} }void readDat(){int i ;FILE *fp ;fp = fopen("in.dat", "r") ;for(i = 0 ; i < MAX ; i++) fscanf(fp, "%d", &a[i]) ; fclose(fp) ;}void main(){int i ;readDat() ;jsVal() ;printf("满足条件的数=%d\n", cnt) ;for(i = 0 ; i < cnt ; i++) printf("%d ", b[i]) ;printf("\n") ;writeDat() ;}writeDat(){FILE *fp ;int i ;fp = fopen("out.dat", "w") ;fprintf(fp, "%d\n", cnt) ;for(i = 0 ; i < cnt ; i++) fprintf(fp, "%d\n", b[i]) ; fclose(fp) ;}************************************************************************* 题目52(整数各位打散组合运算题)已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:把千位数字和个位数字重新组成一个新的十位数(新十位数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的个位数字),以及把百位数字和十位数字组成另一个新的十位数(新十位数的十位数字是原四位数的百位数字,新十位数的个位数字是原四位数的十位数字),如果新组成的两个十位数均是奇数并且两个十位数中至少有一个数能被5整除,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b 中,并要计算满足上述条件的四位数的个数cnt。
2012年3月全国计算机等级《三级网络技术》全真模拟试题(5) 总分:100分及格:60分考试时间:120分一、选择题(每小题1分,共60分)(1)无线局域网使用的协议标准是()。
A. 802.9B. 802.10C. 802.11D. 802.12(2)关于ADSL技术的描述中,错误的是()。
A. 数据传输不需要进行调制解调B. 上行和下行传输速率可以不同C. 数据传输可利用现有的电话线D. 适用于家庭用户使用(3)如果以太网交换机的总带宽为8.4Gbps,并且具有22个全双工百兆端口,则全双工千兆端口数量最多为()。
A. 1个B. 2个C. 3个D. 4个(4)关于共享式Ethernet的描述中,下列哪个是错误的?()A. 共享式Ethernet的连网设备复杂B. 共享式Ethernet的覆盖范围有限C. 共享式Ethemet不能提供多速率的设备支持D. 共享式Ethernet不适用于传输实时性要求高的应用(5)网桥实现网络互联的层次是()。
A. 数据链路层B. 传输层C. 网络层D. 应用层(6)下图路由器R的路由表中,到达网络40.0.0.0的下一跳步IP地址应为()。
A. 10.0.0.5B. 20.0.0.5C. 30.0.0.7D. 40.0.0.7(7)以下哪个是正确的Ethernet物理地址?()A. 00-60-08B. 00-60-08-00-A6-38C. 00-60-O8-00D. 00-60-08-00-A6-38-00(8)以下关于虚拟局域网的描述中,哪个是错误的?()A. 可以用交换机端口号定义虚拟局域网B. 可以用MAC地址定义虚拟局域网C. 可以用网络层地址定义虚拟局域网D. 可以用主机操作系统类型定义虚拟局域网(9)IM系统一般采用两种通信模式,MSN Messager、ICQ、Yahoo Messenger等主流IM软件在传递文件等大量数据业务时一般使用哪种通信模式?()(10)DES加密算法采用的密钥长度和处理的分组长度是()。
2012年3月全国计算机等级《三级数据库》模拟试题(1)总分:100分及格:60分考试时间:120分(每小题1分,共60分)(1)(2)批处理操作系统的主要缺点是()。
A. A)系统吞吐量小B. B)系统资源利用率不高C. C)不具备并发性D. D)用户不能直接控制其作业的执行(3)关系数据模型有许多优点,但下面所列的条目中哪一条不是它的优点()。
A. A)结构简单B. B)高度非过程化C. C)有标准语言D. D)可表示复杂的语义(4)文件系统采用多级目录结构的好处是()。
A. A)可以进行多道程序设计B. B)不同用户可以给不同文件取相同名字C. C)提高内存利用率D. D)文件可以共享(5)以下关于虚拟局域网的描述中,哪个是错误的?()A. 可以用交换机端口号定义虚拟局域网B. 可以用MAC地址定义虚拟局域网C. 可以用网络层地址定义虚拟局域网D. 可以用主机操作系统类型定义虚拟局域网(6)用P、V操作管理临界区时,把信号量sign的初值设为1。
当sign的等待队列中有k(k>1)个进程时,信号量的值为()。
A. A)kB. B)k-1C. C)1-kD. D)-k(7)在SQL语言中,一个基本表的定义一旦被删除,则与此表相关的()也自动被删除。
Ⅰ.在此表中的数据Ⅱ.在此表上建立的索引Ⅲ.在此表上建立的视图A. A)Ⅰ和ⅡB. B)仅ⅠC. C)Ⅰ和ⅢD. D)全部(8)批处理操作系统提高了计算机的工作效率。
下列关于批处理操作系统的叙述中,错误的是()。
A. A)用户不能直接干预其作业的执行B. B)批处理操作系统的系统资源利用率不高C. C)批处理操作系统不允许用户与他的作业发生交互D. D)批处理操作系统可容纳多个作业(9)关于Kerberos认证系统的描述中,错误的是()。
A. 有一个包含所有用户密钥的数据库B. 用户密钥是一个加密口令C. 加密算法必须使用DESD. Kerberos提供会话密钥(10)如果Ethemet交换机有4个100Mbps全双工端口和20个10Mbps半双工端口,那么这个交换机的总带宽最高可以达到()。
题目1:下列程序的功能是:将大于整数m且紧靠m的k个素数存入数组xx。
请编写函数num(int m,int k,int xx[])实现函数的要求,最后调用函数readwriteDAT()把结果输出到文件out.dat中。
标准答案*/{int data=m+1;int half,n=0,I;while(1){half=data/2;for(I=2;I<=half;I++)if(data%I==0)break;if(I>half){xx[n]=data;n++;}if(n>=k)break;data++;} }题目2:已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是: 如果四位数各位上的数字均是0或2或4或6或8, 则统计出满足此条件的个数cnt, 并把这些四位数按从大到小的顺序存入数组b中。
最后main()函数调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。
void jsVal() /*标准答案*/{int bb[4];int I,j,k,flag;for (I=0;I<200;I++){bb[0]=a[I]/1000; bb[1]=a[I]%1000/100;bb[2]=a[I]%100/10; bb[3]=a[I]%10;for (j=0;j<4;j++){if (bb[j]%2==0)flag=1;else{flag=0;break;}}if (flag==1){ b[cnt]=a[I];cnt++;} }for(I=0;I for(j=I+1;j if (b[I] {k=b[I];b[I]=b[j];b[j]=k;}}题目3:函数READDAT()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组XX中;请编制函数STROR(),其函数功能是:以行为单位把字符串中的所有小写字母O左边的字符串内容移到该串的右边存放,然后并把小写字母O删除,余下的字符串内容移到已处理字符串的左边存放.最后把已处理的字符串仍按行重新存入字符串数组XX中,最后调用函数WRITEDAT()把结果XX输出到文件OUT.DAT中. void StrOR(void) /*标准答案*/{int I,j,k,index,strl;char ch;for(I=0;I {strl=strlen(xx[I]);index=strl;for(j=0;j if(xx[I][j]=='o'){for(k=j;kxx[I][k]=xx[I][k+1];xx[I][strl-1]= ' ';index=j;}for(j=strl-1;j>=index;j--){ch=xx[I][strl-1];for(k=strl-1;k>0;k--)xx[I][k]=xx[I][k-1];xx[I][0]=ch;}}}题目4:函数ReadDat( )实现从文件IN.DAT中读取一篇英文文章存入到字符串数组xx中; 请编制函数StrOL( ), 其函数的功能是: 以行为单位对行中以空格或标点符号为分隔的所有单词进行倒排,同时去除标点符号,之后把已处理的字符串(应不含标点符号)仍按行重新存入字符串数组xx中。
全国计算机等级考试三级网络技术南开100题目录整数排序题 (5)☆题目1(整数排序题) (5)☆题目2 正整数排序 (5)★☆题目3(整数统计排序题) (6)☆题目4(整数统计排序题) (6)题目5(整数运算排序题) (7)★题目6(整数各位统计排序题) (7)题目7(整数统计排序题) (8)★题目8(整数排序题) (8)★题目9(整数各位数字运算排序题) (9)题目10(整数各位数运算排序题) (9)★☆题目11 (整数各位数运算及排序题) (10)整数统计运算题 (10)★☆题目12整数统计运算题) (10)☆题目13(整数统计运算题) (11)☆题目14(整数统计运算题) (11)题目15(整数统计运算题) (12)题目16(整数统计运算题) (12)题目17(整数统计运算题) (13)☆题目18(整数统计运算题) (13)题目19(整数统计运算题) (13)题目20(整数各位数字运算题) (14)☆题目21(整数各位数字运算题) (14)题目22(整数各位数字运算题) (15)☆题目23(整数各位数字运算题) (15)题目24(整数各位数字运算题) (16)☆题目25(整数各位数字统计运算题) (16)★☆题目26(整数各位运算题) (16)题目27(整数各位数运算题) (17)☆题目28(整数各位数运算题) (17)☆题目29(整数各位运算统计题) (18)☆题目30 (19)题目31 (19)整数各位打散组合运算题 (20)★☆题目32(整数各位打散组合运算题) (20)☆题目33(整数各位打散组合运算题) (20)★☆题目34(整数各位打散组合运算题) (21)题目35(整数各位打散组合运算题) (21)★题目36(整数各位打散组合运算题题) (22)题目37(整数各位打散组合运算题) (23)★题目38(整数各位打散组合运算题) (23)题目39(整数各位打散组合运算题) (24)素数题 (24)★☆题目42(素数题) (25)★题目43(素数题) (26)★题目44(素数题) (27)★题目45(数字运算题) (27)★题目46(数字统计排序题) (28)☆题目47(数字统计排序题) (28)字符型题 (29)题目48字符型题 (29)★题目49(字符处理——倒序输出) (30)★题目50(字符排序题) (30)★☆题目51(替换字符题) (31)☆题目52(亲朋字符替换题) (31)字符串处理题 (32)★☆题目53(字符串排序题) (32)☆题目54(字符串字母移位题) (33)★☆题目55(字符串左右排序交换题) (33)题目56(字符串左右排序交换题) (34)★题目57(字符串移位题) (34)题目58(字符串排序题) (35)★题目59(字符串左右排序题) (35)★题目60(字符ASCII值移位替换题) (36)方差运算题 (37)★☆题目61(方差运算题) (37)☆题目62(方差运算题) (37)☆题目63(方差运算题) (38)☆题目64(整数各位数运算题) (39)★题目65(字符替换题) (39)★☆题目66(字符替换题) (40)★题目67(字符替换题) (40)题目68(字符替换题) (40)题目69(字符替换题) (41)☆题目70(字符替换题) (41)★题目71(字符替换题) (42)☆题目72(字符替换题) (42)☆题目73(字符替换题) (43)★题目74(字符替换题) (43)★题目75(字符替题) (43)★☆题目76(字符替换题) (44)☆题目77(结构体操作题) (44)★☆题目78(结构体运算题题) (45)题目79(结构体运算题) (45)★☆题目80(结构体运算题) (45)☆题目81(结构体运算题) (46)题目82(结构体运算题) (46)★题目85(结构体运算题) (47)题目86(结构体排列题) (48)选票问题 (48)题目87(选票问题) (48)★☆题目88(选票问题) (49)☆题目89(选票问题) (49)★☆题目90(级数运算题) (50)其他问题 (50)☆题目91(单词个数统计题) (50)★题目92(Fibonacci数列题) (51)☆题目93(迭代方法求方程题) (51)★题目94(平方根问题) (52)题目95 (实数运算题) (53)题目96(完全平方数问题) (54)★题目97 (回文数问题) (54)★题目98(出圈题) (55)☆题目99(SIX/NINE问题) (55)三级网络上机题型整数排序题☆题目1(整数排序题)在文件in.dat中有200个正整数,且每个数均在1000至9999之间。
全国计算机等级考试中心 2012年3月计算机网络三级南开百题题库 题目1:下列程序的功能是:将大于整数m且紧靠m的k个素数存入数组xx。请编写函数num(int m,int k,int xx[])实现函数的要求 ,最后调用函数readwriteDAT()把结果输出到文件out.dat中。 例如:若输入17,5,则应输出:19,23,29,31,37。 注意:部分源程序已给出。 请勿改动主函数main()和函数readwriteDAT()的内容。 -------------- 类型:素数。 void num(int m,int k,int xx[]) {int data=m+1; int half,n=0,I; while(1) {half=data/2;for(I=2;I<=half;I++) if(data%I==0)break; if(I>half) {xx[n]=data;n++;} if(n>=k)break; data++; } }
题目2:已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是: 如果四位数各位上的数字均是0或2或4或6或8, 则统计出满足此条件的个数cnt, 并把这些四位数按从大到小的顺序存入数组b中。最后main()函数调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。 注意: 部分源程序存在文件PROG1.C文件中。 程序中已定义数组: a[200], b[200], 已定义变量: cnt 请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。 ------------------------- void jsVal() {int bb[4]; int I,j,k,flag; for (I=0;I<200;I++) {bb[0]=a[I]/1000; bb[1]=a[I]%1000/100; bb[2]=a[I]%100/10; bb[3]=a[I]%10; for (j=0;j<4;j++) {if (bb[j]%2==0) flag=1; else {flag=0;break;} } 全国计算机等级考试中心 if (flag==1) { b[cnt]=a[I]; cnt++;} } for(I=0;Ifor(j=I+1;jif (b[I]{k=b[I];b[I]=b[j];b[j]=k;} }
题目3:函数READDAT()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组XX中;请编制函数STROR(),其函数功能是:以行为单位把字符串中的所有小写字母O左边的字符串内容移到该串的右边存放,然后并把小写字母O删除,余下的字符串内容移到已处理字符串的左边存放.最后把已处理的字符串仍按行重新存入字符串数组XX中,最后调用函数WRITEDAT()把结果XX输出到文件OUT.DAT中. 例如:原文:You can create an index on any field. you have the correct record. 结果: n any field.You can create an index rd.yu have the crrect rec 原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格. ------------------- 类型:字符串(单词)的倒置和删除。 答案: void StrOR(void) {int I,j,k,index,strl; char ch; for(I=0;I{strl=strlen(xx[I]); index=strl; for(j=0;jif(xx[I][j]=='o') {for(k=j;kxx[I][k]=xx[I][k+1]; xx[I][strl-1]= ' '; index=j;} for(j=strl-1;j>=index;j--) {ch=xx[I][strl-1]; for(k=strl-1;k>0;k--) xx[I][k]=xx[I][k-1]; xx[I][0]=ch;} } }
题目4:函数ReadDat( )实现从文件IN.DAT中读取一篇英文文章存入到字符串数组xx中; 请编制函数StrOL( ), 其函数的功能是: 以行为单位对行中以空格或标点符号为分隔的所有单词进行倒排,同时去 全国计算机等级考试中心 除标点符号,之后把已处理的字符串(应不含标点符号)仍按行重新存入字符串数组xx中。最后main()函数调用函数WriteDat()把结果xx输出到文件OUT6.DAT中。 例如: 原文: You He Me I am a student. 结果: Me He You student a am I 原始数据文件存放的格式是: 每行的宽度均小于80个字符, 含标点符号和空格。 ----------------- 类型:字符串(单词)的倒置和删除。 答案: void StrOL(void) {int I,j,k,strl,l;char c; for(I=0;Ifor(j=0;j{c=xx[I][j]; if ((c>='A'&&c<='Z')||(c>='a'&&c<='z')||c==' ') ; else xx[I][j]=' '; } for(l=0;l{char ch[80]={0}; char pp[80]={0}; strl=strlen(xx[l]); I=strl-1; k=1; while(1) {while (((xx[l][I]>='a'&&xx[l][I]<='z')||(xx[l][I]>='A'&&xx[l][I]<='z'))&&I>=0) {for(j=k;j>=0;j--) pp[j+1]=pp[j]; pp[0]=xx[l][I]; k++;I--; } strcat(ch,pp);strcpy(pp, """");k=1; if(I==-1)break; while((xx[l][I]<'A'||xx[l][I]>'z')&&I>=0) {for(j=k;j>=0;j--) pp[j+1]=pp[j]; pp[0]=xx[l][I]; k++; I--;} strcat(ch,pp); strcpy(pp,""""); k=0; if(I==-1)break;} strcpy(xx[l],ch); }}
题目5:在文件in.dat中有200个正整数,且每个数均在1000至9999之间。函数ReadDat()读取这200个数存放到数组aa中。请编制函数jsSort(),其函数的功能是:要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前10个数依次存入数组b中,如果后三位的数值相等,则按原先的数值进行降序排列。最后调用函数WriteDat()把结果bb输出到文件out.dat中。 例:处理前 6012 5099 9012 7025 8088 处理后 9012 6012 7025 8088 5099 注意:部分源程序已给出。 全国计算机等级考试中心 请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。 -------------------- void jsSort() {int I,j,data; for(I=0;I<199;I++) for(j=I+1;j<200;j++) {if (aa[I]%1000>aa[j]%1000) {data=aa[I];aa[I]=aa[j];aa[j]=data;} else if(aa[I]%1000==aa[j]%1000) if(aa[I]{data=aa[I];aa[I]=aa[j];aa[j]=data;} } for(I=0;I<10;I++) bb[I]=aa[I]; }
题目6:在文件in.dat中有200个正整数,且每个数均在1000至9999之间。函数ReadDat()读取这200个数存放到数组aa中。请编制函数jsSort(),其函数的功能是:要求按每个数的后三位的大小进行降序排列,然后取出满足此条件的前10个数依次存入数组b中,如果后三位的数值相等,则按原先的数值进行升序排列。最后调用函数WriteDat()把结果bb输出到文件out.dat中。 例:处理前 9012 5099 6012 7025 8088 处理后 5099 8088 7025 6012 9012 注意:部分源程序已给出。 请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。 -------------------- void jsSort() {int I,j,data; for(I=0;I<199;I++) for(j=I+1;j<200;j++) {if (aa[I]%1000{data=aa[I];aa[I]=aa[j];aa[j]=data;} else if(aa[I]%1000==aa[j]%1000) if(aa[I]>aa[j]) {data=aa[I];aa[I]=aa[j];aa[j]=data;} } for(I=0;I<10;I++) bb[I]=aa[I]; } 题目7:已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)四部分组成。其中:金额=单价*数量计算得出。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品代码从大到小进行排列,若产品代码相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell中,最后调用函数