欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2022年2022年计算机三级网络技术南开百题 .pdf

    • 资源ID:39707754       资源大小:231.39KB        全文页数:28页
    • 资源格式: PDF        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

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

    2022年2022年计算机三级网络技术南开百题 .pdf

    数字题目 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;Ihalf)xxn=data;n+;if(n=k)break;data+;或者:void num(int m,int k,int xx)int i,j,s=0;for(i=m+1;k0;i+)for(j=2;j0;m+)if(isP(m)xxi+=m;k-;题目 2:已知数据文件IN.DAT 中存有 200 个四位数,并已调用读函数readDat()把这些数存入数组 a 中,请考生编制一函数jsVal(),其功能是:如果四位数各位上的数字均是0 或 2 或 4 或6 或 8,则统计出满足此条件的个数cnt,并把这些四位数按从大到小的顺序存入数组b 中。最后 main()函数调用写函数writeDat()把结果cnt以及数组b 中符合条件的四位数输出到OUT.DAT文件中。注意:部分源程序存在文件PROG1.C文件中。程序中已定义数组:a200,b200,已定义变量:cnt 请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。-void jsVal()/*标准答案*/int bb4;int I,j,k,flag;for(I=0;I200;I+)bb0=aI/1000;bb1=aI%1000/100;bb2=aI%100/10;bb3=aI%10;名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 28 页 -for(j=0;j4;j+)if(bbj%2=0)flag=1;else flag=0;break;if(flag=1)bcnt=aI;cnt+;for(I=0;Icnt-1;I+)for(j=I+1;jcnt;j+)if(bIbj)k=bI;bI=bj;bj=k;题目 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;I199;I+)for(j=I+1;jaaj%1000)data=aaI;aaI=aaj;aaj=data;else if(aaI%1000=aaj%1000)if(aaIaaj)data=aaI;aaI=aaj;aaj=data;for(I=0;I10;I+)bbI=aaI;题目 14:已知数据文件IN.DAT 中存有 200 个四位数,并已调用读函数readDat()把这些数存入数组a 中,请考生编制一函数jsVal(),其功能是:依次从数组a 中取出一个四位数,如果该数连续大于该四位数以后的5 个数且该数是奇数,则统计出满足此条件的个数cnt,并把这些四位数按从小到大的顺序存入数组b 中。并要计算满足上述条件的四位数的个数cnt。最后main()函数调用写函数writeDat()把结果 cnt 以及数组b 中符合条件的四位数输出到OUT.DAT文件中。注意:部分源程序存在文件PROG1.C文件中。程序中已定义数组:a200,b200,已定义变量:cnt 请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。-void jsVal()/*标准答案*/int I,j,flag=0;int k;for(I=0;IMAX-5;I+)for(j=I+1;jaj)flag=1;else flag=0;break;if(aI%2=0)flag=0;if(flag=1)bcnt=aI;cnt+;for(I=0;Icnt-1;I+)for(j=I+1;jbj)k=bI;bI=bj;bj=k;题目 15:已知数据文件IN.DAT 中存有 200 个四位数,并已调用读函数readDat()把这些数存入数组a 中,请考生编制一函数jsVal(),其功能是:若一个四位数的千位数字上的值小于等于百位数字上的值,百位数字上的值小于等于十位数字上的值,十位数字上的值小于等于个位数字上的值,并且此四位数是偶数,则统计出满足此条件的个数cnt,并把这些四位数按从大到小的顺序存入数组b 中。最后 main()函数调用写函数writeDat()把结果 cnt 以及数组 b 中符合条件的四位数输出到OUT.DAT文件中。注意:部分源程序存在文件PROG1.C文件中。程序中已定义数组:a200,b200,已定义变量:cnt 请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。-void jsVal()/*标准答案*/int I,j;int a1,a2,a3,a4,k;for(I=0;IMAX;I+)a1=aI/1000;a2=aI%1000/100;a3=aI%100/10;a4=aI%10;if(a1=a2)&(a2=a3)&(a3=a4)&(aI%2=0)bcnt=aI;cnt+;for(I=0;Icnt-1;I+)for(j=I+1;jbj)k=bI;bI=bj;bj=k;题目 20:编写函数jsvalue,它的功能是:求Fibonacci数列中大于t 的最小的一个数,结果由函数返回。其中Fibonacci数列 F(n)的定义为:F(0)=0,F(1)=1 F(n)=F(n-1)+F(n-2)最后调用函数writeDat()读取 10 个数据 t,分别得出结果且把结果输出到文件out.dat中。例如:当t=1000 时,函数值为:1597。注意:部分源程序已给出。请勿改动主函数main()和写函数 writeDat()的内容。-int jsValue(int t)/*标准答案*/int f1=0,f2=1,fn;fn=f1+f2;while(fn=t)f1=f2;f2=fn;fn=f1+f2;return fn;名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 28 页 -题目 21:下列程序的功能是:利用发下所示的简单迭代方法求方程:cos(x)-x=0的一个实根。xn+1=cos(xn)迭代步骤如下:(1)取 X1 初值为 0.0;(2)X0=X1,把 X1 的值赋给X0;(3)X1=COS(X0),求出一个新的X1;(4)若 X0-X1 绝对值小0.000001,执行步骤(5),否则执行步骤(2);(5)所求 X1 就是方程 cos(X)-X=0的一个实根,作为函数值返回。请编写函数countvalue()实现程序的要求,最后调用函数WRITEDAT()把结果输出到文件OUT17.DAT中。注意:部分源程序已给出。请勿改动主函数main()和输出数据函数writeDAT()的内容。-float countValue()/*标准答案*/float x0,x1=0.0;while(1)x0=x1;x1=cos(x0);if(fabs(x0-x1)=0.000001);return x1;题目 22:请编写函数countvalue(),它的功能是:求n 以内(不包括n)同时能被3 和 7 整数的所有自然数之和的平方根s,并作为函数值返回,最后结果s 输出到文件out.dat中。例如若 n 为 1000 时,函数值应为:s=153.909064。注意:部分源程序已给出。请勿改动主函数main()和输入输出数据函数progreadwrite()的内容。-double countValue(int n)/*标准答案*/double xy=0.0;int I;for(I=1;In;I+)if(I%3=0&I%7=0)xy+=I;xy=sqrt(double)xy);return xy;double countvalue(int n)int i,j=0;double k;for(i=0;in;i+)if(i%3=0&i%7=0)j+=i;k=sqrt(j);return k;名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 28 页 -题目 23:已知在文件in.dat中存有 N 个(个数 200)四位数字的正整数,函数readdat()读取这 N 个正整数并存入数组xx 中。请编制函数calvalue(),其功能要求:1、求出这N个实数的平均值aver;2、分别求出这N个实数的整数部分之和sumint 以及小数部分之和sumdec,最后调用函数writedat()把所求的结果输出到文件out.dat中。注意:部分源程序已给出。请勿改动主函数main()、读数据函数readdat()和输出数据函数writedat()的内容。-void CalValue(void)/*标准答案*/int I;double x,sum=0;for(I=0;IMAXNUM;I+)sumint=sumint+(int)xxI;x=xxI-(int)xxI;sumdec=sumdec+x;sum=sum+xxI;aver=sum/MAXNUM;题目 24:在三位整数(100 至 999)中寻找符合条件的整数并依次从小到大存入数组中;它既是完全平方数,又是两位数字相同,例如144、676 等。请编制函数实现此功能,满足该条件的整数的个数通过所编制的函数返回。最后调用函数writeDat()把结果输出到文件out.dat中。注意:部分源程序已给出。请勿改动主函数main()和写函数 writeDat()的内容。-jsValue(int a109)/*标准答案*/int I,j,k=0;int hun,ten,data;for(I=100;I=999;I+)j=10;while(j*j=I)if(I=j*j)hun=I/100;data=I-hun*100;ten=data/10;data=data-ten*10;if(hun=ten|hun=data|ten=data)bbk=I;k+;j+;return k;题目 25:下列程序的功能是:寻找并输出11 至 999 之间的数 m,它满足 m,m2和 m3均为回文数。所谓回文数是指其各位数字左右对称的整数,例如121,676,94249 等。满足上述条件的数如 m=11,m2=121,m3=1331 皆为回文数。请编制函数int svalue(long m)实现此功能,如果是回文数,则函数返回1,反之则返回0。最后把结果输出到文件out.dat中。注意:部分源程序已给出。请勿改动主函数main()的内容。-int jsValue(long n)/*标准答案*/int I,strl,half;char xy20;ltoa(n,xy,10);strl=strlen(xy);half=strl/2;for(I=0;I=half)return 1;名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 28 页 -else return 0;或者:int jsvalue(long n)int i,aa10,j=0,b=1;while(n)aaj+=n%10;n=n/10;for(i=0;ij/2;i+)if(aai!=aaj-i-1)b=0;return b;题目 26:已知在文件in.dat中存有若干个(个数200)四位数字的正整数,函数 readdat()读取这若干个正整数并存入数组xx 中。请编制函数calvalue(),其功能要求:1、求出这文件中共有多少个正整数totnum;2、求这些数右移1 位后,产生的新数是偶数的数的个数 totcnt,以及满足此条件的这些数(右移前的值)的算术平均值totpjz,最后调用函数writedat()把所求的结果输出到文件out.dat中。注意:部分源程序已给出。请勿改动主函数main()、读数据函数readdat()和输出数据函数writedat()的内容。-void CalValue(void)/*标准答案*/int I,data;for(I=0;I0)totNum+;data=xxI1;if(data%2=0)totCnt+;totPjz+=xxI;totPjz/=totCnt;或者:void Calvalue(void)int i,k,a,b,c,d;for(i=0;iMAXNUM;i+)if(xxi)totNum+;for(i=0;i1;if(k%2=0)totCnt+;totPjz+=xxi;totPjz/=totCnt;题目 27:已知数据文件IN.DAT 中存有 300 个四位数,并已调用读函数ReadDat()把这些数存入数组 a 中,请编制一函数jsvalue(),其功能是:求出千位数上的数减百位数减十位数上的数减个位数上的数大于零的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,最后调用写函数writeDat()把结果输出到OUT.DAT文件。例如:9123,9-1-2-30,则该数满足条件计算平均值pjz1,且个数 cnt=cnt+1。9812,9-8-1-20,则该数不满足条件计算平均值pjz2.注意:部分源程序已给出。程序中已定义数组:a300,已定义变量:cnt 请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。-void jsValue()/*标准答案*/int I,thou,hun,ten,data,j;for(I=0;I0)bcnt=aI;cnt+;for(I=0;Icnt-1;I+)for(j=I+1;jbj)data=bI;bI=bj;bj=data;题目 28:已知数据文件IN.DAT 中存有 200 个四位数,并已调用读函数readDat()把这些数存入数组 a 中,请考生编制一函数jsVal(),其功能是:把千位数字和十位数字重新组成一个新的十位数ab(新十位数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的十位数字),以及把个位数字和百位数字组成另一个新的十位数cd(新十位数的十位数字是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字),如果新组成的两个十位数ab-cd=0且 ab-cd=10 且两个数均是奇数,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b 中,并要计算满足上述条件的四位数的个数cnt。最后 main()函数调用写函数writeDat()把结果 cnt 以及数组 b 中符合条件的四位数输出到OUT.DAT文件中。注意:部分源程序存在文件PROG1.C文件中。程序中已定义数组:a200,b200,已定义变量:cnt 请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。-void jsVal()/*标准答案*/int I,thou,hun,ten,data,j;int ab,cd;for(I=0;I=0&(ab-cd)=10&ab%2=1&cd%2=1&ab!=0&cd!=0)bcnt=aI;cnt+;for(I=0;Icnt-1;I+)for(j=I+1;jcnt;j+)if(bIbj)data=bI;bI=bj;bj=data;题目 33:请编制函数ReadDat()实现从文件IN.DAT 中读取1000 个十进制整数到数组xx中;请编制函数Compute()分别计算出xx 中奇数的个数odd,奇数的平均值ave1,偶数的平均值 ave2 以及所有奇数的方差totfc的值,最后调用函数WriteDat()把结果输出到OUT.DAT文件中。计算方差的公式如下:totfc=1/N(xxi-ave1)2 设 N 为奇数的个数,xxi为奇数,ave1 为奇数的平均值。原始数据文件存放的格式是:每行存放10 个数,并用逗号隔开。(每个数均大于0 且小于等于 2000)注意:部分源程序已给出。请勿改动主函数main()和输出数据函数writeDat()的内容。-int ReadDat(void)/*标准答案*/FILE*fp;int I,j;if(fp=fopen(IN.DAT,r)=NULL)return 1;for(I=0;I100;I+)for(j=0;j10;j+)fscanf(fp,%d,&xxI*10+j);fscanf(fp,n);if(feof(fp)break;名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 28 页 -fclose(fp);return 0;void Compute(void)int I,yyMAX;for(I=0;I1000;I+)if(xxI%2)odd+;ave1+=xxI;elseeven+;ave2+=xxI;yyeven-1=xxI;ave1/=odd;ave2/=even;for(I=0;Ieven;I+)totfc+=(yyI-ave2)*(yyI-ave2)/even;或者:int ReadDat(void)int i;FILE*fp;if(fp=fopen(IN.DAT,r)=NULL)return 1;for(i=0;iMAX;i+)fscanf(fp,%d,&xxi);if(i+1)%10=0)fscanf(fp,n);fclose(fp);return 0;void Compute(void)int i;for(i=0;iMAX;i+)if(xxi%2)odd+;ave1+=xxi;else even+;ave2+=xxi;ave1/=odd;ave2/=even;for(i=0;iMAX;i+)if(xxi%2=0)totfc+=(xxi-ave2)*(xxi-ave2);totfc/=even;题目 34:下列程序的功能是:选取出100 以上 1000 以内所有个位数字与十位数字之和被10 除所得余数恰是百位数字的素数(如293)。计算并输出上述这些素数的个数CNT以及这些素数值的和SUM。请编写函数COUNTvalue()实现程序要求,最后调用函数WRITEDAT()把结果CNT和 SUM 输出到文件OUT.DAT中.注意:部分源程序已给出。请勿改动主函数main()和函数 readwriteDAT()的内容。-类型:素数。void countValue()/*标准答案*/int I,j,half,hun,ten,data;for(I=101;I1000;I+)hun=I/100;ten=I%100/10;data=I%10;if(hun=(ten+data)%10)half=I/2;for(j=2;j=half)cnt+;sum+=I;或者:int SS(int m)int i,k=1;for(i=2;im/2;i+)if(m%i=0)k=0;return k;void countvalue()int i,a,b,c;for(i=100;i1000;i+)if(SS(i)a=(i%100)/10;b=i%10;c=i/100;if(a+b)%10=c)cnt+;sum+=i;题目 35:某级数的前两项A1=1,A2=1,以后各项具有如下关系:An=An-2+2An-1.下列程序的功能是:要求依次对于整数M=100,1000 和 10000 求出对应的n 值,使其满足:Sn=M,这里 Sn=A1+A2+.+An,并依次把n 值存入数组单元b0,b1和 b2 中,请编制jsvalue()函数来实现此功能,最后调用函数writeDat()把数组 b 中的值输出到out.dat文件中。注意:部分源程序存在文件PROG1.C文件中。请勿改动主函数main()和写函数writeDat()的内容。-void jsvalue()/*标准答案*/int a1=1,a2=1,n=1,an;int sum0,sum;sum0=a1+a2;while(1)an=a1+a2*2;sum=sum0+an;a1=a2;a2=an;n+;if(sum0100)b0=n;if(sum01000)b1=n;if(sum010000)b2=n;break;sum0=sum;jsvalue()int a1=1,a2=1,a12,sn,k=2;sn=a1+a2;while(1)a12=a1+2*a2;if(sn=100)b0=k;if(sn=1000)b1=k;if(sn=10000)b2=k;break;sn=sn+a12;a1=a2;a2=a12;k+;名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 28 页 -题目 39:对 10 个候选人进行选举,现有一个100 条记录的选票数据文件IN.DAT,其数据存放的格式是每条记录的长度均为10 位,第一位表示第一个人的选中情况,第二位表示第二个人的选中情况,依此类推:内容均为字符0 和 1,1 表示此人被选中,0 表示此人未被选中,全选或不选均为无效的选票.。给定函数ReadDat()的功能是把选票数据读入到字符串数组xx 中。请编制函数CountRs()来统计每个人的选票数并把得票数依次存入yy0到 yy9中。把结果yy输出到文件OUT.DAT中。注意:部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数writeDat()的内容。-类型:选票问题。void CountRs(void)/*标准答案,有问题!*/int I,j=0,k=0;char*str;for(I=0;I10;I+)yyI=0;for(I=0;I100;I+)str=xxI;j=0;while(*str)if(*str=1)j+;str+;else str+;if(j!=0&j!=10)str=xxI;k=0;while(*str)if(*str+=1)yyk+=1;else k+;或者:void CountRs(void)int i,j,k;for(i=0;i100;i+)k=0;for(j=0;j10;j+)if(xxij=1)k+;if(k=0|k=10)continue;for(j=0;j10;j+)if(xxij=1)yyj+;本题要求将那些全选取或不先的选票均视为无效,全选即为“1111111111”不选即为“0000000000”,只要 xxi为上述两种情况即视为无效。本题对这两种情况的判断采用 strcmp()函数,注意字符串的比较不能直接进行即不能用:xxi=“1111111111”的方式。*/void countrs(void)int i,j;for(i=0;i100;i+)if(strcmp(xxi,1111111111)=0|strcmp(xxi,0000000000)=0)continue;for(j=0;j10;j+)if(xxij=1)yyj+;题目 40:已知在文件in.dat中存有若干个(个数 200)四位数字的正整数,函数 readdat()名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 28 页 -读取这若干个正整数并存入数组xx 中。请编制函数calvalue(),其功能要求:1、求出这文件中共有多少个正整数totnum;2、求出这些数中的各位数字之和是偶数的数的个数totcnt,以及满足此条件的这些数的算术平均值totpjz,最后调用函数writedat()把所求的结果输出到文件out.dat中。注意:部分源程序已给出。请勿改动主函数main()、读数据函数readdat()和输出数据函数writedat()的内容。-void CalValue(void)/*标准答案,有问题!*/int I,thou,hun,ten,data;int ab,sum=0;for(I=0;I0)totNum+;thou=xxI/1000;hun=xxI%1000/100;ten=xxI%100/10;data=xxI%10;ab=thou+hun+ten+data;if(ab%2=0)totCnt+;sum=sum+xxI;totPjz=sum/totCnt;或者:void Calvalue(void)int i,k,a,b,c,d;for(i=0;iMAXNUM;i+)if(xxi)totNum+;for(i=0;i=1000&3*I/2999|3*I/29999)break;或者:名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 28 页 -注:由于有SIX+SIX+SIX=NINE+NINE 可看出 SIX 的 3 倍必须大于等于2000(右边是一个四位数字的数可知),因此从666 开始循环,再由三个数的和是个偶数(右边为一个数的2 倍可知)可循环时步长为2。再由 SIX 和 NINE 中有一个共同数字I 所以得出第一个if()判断,还有NINE中有一共同数字N所以得出第二个if()判断。*/void countValue()int i;for(i=666;i=999;i=i+2)if(i/10%10=(3*i/2)/100%10)&(3*i/2)/1000=(3*i/2)%100/10)/*以 I 为准*/cnt+;sum+=i+3*i/2;题 43:函数 ReadDat()实现从文件in.dat中读取 20 行数据存放到字符串数组xx 中(第行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串变量的下标为奇数的字符按其ASCII 值从小到大的顺序进行排序,排序后的结果仍按行重新存入字符串数组 xx 中,最后调用函数WriteDat()把结果 xx 输出到文件out.dat中。例如:位置0 1 2 3 4 5 6 7 源字符串h g f e d c b a 则处理后字符串 h a f c d e b g 部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。-类型:字符串左右排序和比较。void jsSort()/*标准答案*/int I,j,k,strl;char ch;for(I=0;I20;I+)strl=strlen(xxI);for(j=1;jstrl-2;j=j+2)for(k=j+2;kxxIk)ch=xxIj;xxIj=xxIk;xxIk=ch;题目 51:已知数据文件IN.DAT 中存有 200 个四位数,并已调用读函数readDat()把这些数存入数组a 中,请考生编制一函数jsVal(),其功能是:把千位数字和十位数字重新组成一个新的十位数(新十位数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的十位数字),以及把个位数字和百位数字组成另一个新的十位数(新十位数的十位数字是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字),如果新组成的两个十位数均是素数,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b 中,并要计算满足上述条件的四位数的个数cnt。最后 main()函数调用写函数writeDat()把结果 cnt以及数组b 中符合条件的四位数输出到OUT.DAT文件中。注意:部分源程序存在文件PROG1.C文件中。程序中已定义数组:a200,b200,已定义变量:cnt 请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。-void jsVal()/*标准答案*/int I,thou,hun,ten,data,j;int ab,cd;for(I=0;I200;I+)thou=aI/1000;hun=aI%1000/100;ten=aI%100/10;data=aI%10;ab=10*thou+ten;cd=10*data+hun;if(isprime(ab)&isprime(cd)&ab!=0&cd!=0)bcnt=aI;cnt+;名师资料总结-精品资料欢迎下载-名师精心整理-第 12 页,共 28 页 -for(I=0;Icnt-1;I+)for(j=I+1;jcnt;j+)if(bIbj)data=bI;bI=bj;bj=data;题目 57:设有 n 个人围坐一圈并按顺时针方向从1 到 n 编号,从第s 个人开始进行1 到 m的报数,报数到第个m人,此人出圈,再从他的下一个人重新开始1 到 m的报数,如此进行下去直到所有的人都出圈为止。现要求按出圈次序,每10 人一组,给出这n 个人的顺序表。请考生编制函数Josegh()实现此功能并调用函数WriteDat()把结果 p 输出到文件OUT.DAT中。设 n=100,s=1,m=10.(1)将 1 到 n 个人的序号存入一维数组p 中;(2)若第 i 个人报数后出圈,则将pi置于数组的倒数第i 个位置上,而原来第i+1 个至倒数第i 个元素依次向前移动一个位置;(3)重复第(2)步直至圈中只剩下p1 为止。部分源程序已给出。请勿改动主函数main()和输出数据函数writeDat()的内容。-void Josegh(void)/*标准答案*/int I,j,k,s1,w;s1=s;for(I=1;I=2;I-)s1=(s1+m-1)%I;if(s1=0)s1=I;w=ps1-1;for(j=s1;j=I-1;j+)pj-1=pj;pI-1=w;注:题中第一个for()循环是先对数组p 赋初值。在第二个for()中用 i 来控制没出圈的总人数,s1=(s1+m-1)%i的作用是找出报数后出圈人的下标,其中对i 求余的作用是使报数按圈进行(即报到尾后又从头报),该算法在很多题目中都用到。由于求余的作用当报数正好到最后一个时s1 为 0,故而要进行if(s1=0)的判断。内嵌的for()循环是将出圈以后的人依次往前移。题目 60:在文件 in.dat中有 200 组数据,每组有 3 个数,每个数均是三位数。函数 ReadDat()读取这 200 组数据存放到结构数组aa 中,请编制函数jsSort(),其函数的功能是:要求在200组数据中找出条件为每组中的第二个数大于第一个数加第三个数的之和,其中满足条件的个数作为函数 jsSort()的返回值,同时把满足条件的数据存入结构数组bb 中,再对 bb 中的数据按照每组数据的第二个数加第三个之和的大小进行升序排列(第二个数加第三个数的和均不相等),排序后的结果仍重新存入结构数组bb 中,最后调用函数WriteDat()把结果 bb 输出到文件out.dat中。注意:部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。-int jsSort()/*标准答案*/int I,cnt=0,j;Data ch;for(I=0;IaaI.x1+aaI.x3)bbcnt=aaI;cnt+;for(I=0;Icnt-1;I+)for(j=I+1;jcnt;j+)if(bbI.x2+bbI.x3bbj.x2+bbj.x3)名师资料总结-精品资料欢迎下载-名师精心整理-第 13 页,共 28 页 -ch=bbI;bbI=bbj;bbj=ch;return cnt;题目 64:下列程序的功能是:找出所有100 以内(含 100)满足 I,I+4,I+10 都是素数的整数 I(I+10也在 100 以内)的个数 cnt 以及这些 I 之和 sum。请编写函数countvalue()实现程序要求,最后调用函数writeDat()把结果 cnt 和 sum输出到文件out.dat中。注意:部分源程序已给出。请勿改动主函数main()和函数 writeDAT()的内容。-类型:素数。void countValue()/*标准答案*/int I,count=0,xx30;int j,k,m;cnt=0;sum=0;for(I=1;I=90;I+)if(isPrime(I)xxcount=I;count+;for(I=0;Icount;I+)if(isPrime(xxI+4)&isPrime(xxI+10)cnt+;sum+=xxI;或者:void countvalue()int a,b,i;for(i=3;i90;i+)if(isPrime(i)a=i+4;if(isPrime(a)b=i+10;if(isPrime(b)cnt+;sum+=i;题目 66:下列程序的功能是:计算500-800 区间内素数的个数cnt,并按所求素数的值从大到小的顺序,再计算其间隔加、减之各,即第 1 个素数-第 2 个素数+第 3 个素数-第 4 个素数+第 5 个素数,的值sum。请编写函数countvalue()实现程序的要求,最后调用函数writedat()把结果 cnt 和 sum,输出到文件out11.dat中。注意:部分源程序已给出。请勿改动主函数main()和输出数据函数writedat()的内容。-void countValue()/*标准答案,有问题*/int I,j,half,yy100;for(I=500;I=800;I+)half=I/2;for(j=2;j=half)yycnt=I;cnt+;for(I=0,j=-1;I=500;i-)for(j=2;j=i)cnt+;sum+=k*i;k=-1*k;int ss(int m)int i,k=1;for(i=2;i500;i-)if(ss(i)cnt+;aj+=i;for(i=0;i=1000;I-)thou=I/1000;hun=I%1000/100;ten=I%100/10;data=I%10;if(thou+hun=ten+data&thou+hun=(data-thou)*10)cnt+;sum+=I;或者:void countvalue()int i,a,b,c,d;for(i=1000;i5000;i+)a=i/1000;b=(i%1000)/100;名师资料总结-精品资料欢迎下载-名师精心整理-第 15 页,共 28 页 -c=(i%100)/10;d=i%10;if(a+b=c+d)&(a+b)=10*(d-a)cnt+;sum+=i;题目 77:已知数据文件IN.DAT 中存有 200 个四位数,并已调用读函数readDat()把这些数存入数组a 中,请考生编制一函数jsVal(),其功能是:若一个四位数的千位数字上的值加上十位数字上的值等于百位数字上的值加上个位数字上的值,并且此四位数是偶数,则统计出满足此条件的个数cnt,并把这些四位数按从小到大的顺序存入数组b 中。最后 main()函数调用写函数writeDat()把结果 cnt 以及数组b 中符合条件的四位数输出到OUT.DAT文件中。注意:部分源程序存在文件PROG1.C文件中。程序中已定义数组:a200,b200,已定义变量:cnt 请勿改动主函数main()、读函数readDat()和写

    注意事项

    本文(2022年2022年计算机三级网络技术南开百题 .pdf)为本站会员(C****o)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开