20xx年计算机三级网络技术上机题库_及答案内容摘要:

t++。 } } for(I=0。 It1。 I++) for(j=I+1。 jt。 j++) if (b[I]b[j]) {k=b[I]。 b[I]=b[j]。 b[j]=k。 } } 数 ReadDat()实现从文件 中读取一篇英文文章存入到字符串数组 xx 中,请编制函数StrCharJR(),其函数的功能是:以行为单位把字符 串中所有字符的 ASCII 值右移 4位,然后把右移后的字符 ASCII 值再加上原字符的 ASCII 值,得到新的字符仍存入原字符串对应的位置上。 最后把已处理的字符串仍按行重新存入字符串数组 xx 中,最后调用函数 writeDat()把结果 xx 输出到文件 中。 原始数据文件存放的格式是:每行的宽度均小于 80个字符,含标点符号和空格。 注意:部分源程序已给出。 请勿改动主函数 main()、读数据函数 ReadDat()和输出数据函数 writeDat()的内容。 void StrCharJR(void) {int I,j,strl。 for(I=0。 Imaxline。 I++) {strl=strlen(xx[I])。 for(j=0。 jstrl。 j++) xx[I][j]+=xx[I][j]4。 } } 注:这个编程题比二级考得还简单。 void StrCharJR(void) {int i,j。 for(i=0。 imaxline。 i++) for(j=0。 xx[i][j]!=39。 \039。 j++) xx[i][j]+=xx[i][j]4。 } 题目 17:函数 READDAT()实现从文件 中读取一篇英文文章存入到字符串数组XX 中。 请编制函数 CHA(),其函数功能是 :以行为单位把字符串中的第一个字符的 ASCII 值加第二个字符的 ASCII值,得到第一个亲朋字符,第二个字符的 ASCII值加第三个字符的 ASCII全国计算机等级考试中心 值,得到第二个新字符,依此类推一直处理到最后第二个字符,最后一个字符的 ASCII 值加原第一个字符的 ASCII 值,得到最后一个新的字符,得到的新字符分别存放在原字符串对应的位置上。 最后把已处理的 字符串逆转后按行重新存入字符串数组 XX 中 ,最后调用函数 WRITEDAT()把结果 XX 输出到文件 中 .原始数据文件存放的格式是 :每行的宽度均小于 80个字符 ,含标点符号和空格 . 注意:部分源程序已给出。 请勿改动主函数 main()、读数据函数 ReadDat()和输出数据函数 writeDat()的内容。 void ChA(void) {int I,j,k,str。 char ch。 for(I=0。 Imaxline。 I++) {str=strlen(xx[I])。 ch=xx[I][0]。 for(j=0。 jstr1。 j++) xx[I][j]+=xx[I][j+1]。 xx[I][str1]+=ch。 for(j=0,k=str1。 jstr/2。 j++,k) {ch=xx[I][j]。 xx[I][j]=xx[I][k]。 xx[I][k]=ch。 } } } 题目 18:函数 ReadDat()实现从文件 中读取一篇英文文章,存入到字符串数组 xx 中;请编制函数 encryptChar(),按给定的替代关系对数组 xx 中的所有字符进行替代,仍存入数组 xx 的对应的位置上,最后调用函数 WriteDat()把结果 xx 输出到文件 中。 替代关系: f(p)=p*11 mod 256 (p 是数组中某一个字符的 ASCII 值, f(p)是计算后新字符的 ASCII 值 ),如果原字符的 ASCII 值是偶数或计算后 f(p)值小于等于 32,则该字符不变,否则将 f(p)所对应的字符进行替代。 注意:部分源程序已给出。 原始数据文件存放的格式是:每行的宽度均小于 80个字符。 请勿改动主函数 main()、读数据函数 ReadDat()和输出数据函数 WriteDat()的内容。 void encryptChar() {int I。 char *pf。 for(I=0。 Imaxline。 I++) {pf=xx[I]。 while(*pf!=0) {if(*pf%2==0||*pf*11%256=32)。 else *pf=*pf*11%256。 pf++。 全国计算机等级考试中心 } } } 题目 19:编写一个函数 findstr(),该函数统计一个长度为 2的子字符串在另一个字符串中出现的次数。 例如:假定输入的字符串为 asd asasdfg asd as zx67 asd mklo,子字符串为 as,函数返回值为 6。 函数 readwriteDat()的功能是实现从文件 4,并调用函数 findstr(),最后把结果输出到文件 中。 注意:部分源程序已给出。 请勿改动主函数 main()和函数 ReadWrite()的内容。 int findStr(char *str,char *substr) { int n。 char *p , *r。 n=0。 while ( *str ) { p=str。 r=substr。 while(*r) if(*r==*p) { r++。 p++。 } else break。 if(*r==39。 \039。 ) n++。 str++。 } return n。 } 题目 20:编写函数 jsvalue,它的功能是:求 Fibonacci 数列中大于 t 的最小的一个数,结果由函数返回。 其中 Fibonacci 数列 F(n)的定义为: F(0)=0,F(1)=1 F(n)=F(n1)+F(n2) 最后调用函数 writeDat()读取 10个数据 t,分别得出结果且把结果输出到文件 中。 例如:当 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。 } 题目 21:下列程序的功能是:利用发下所示的简单迭代方法求方程: cos(x)x=0的一个实根。 xn+1=cos(xn) 迭代步骤如下: ( 1)取 X1初值为 ; ( 2) X0=X1,把 X1的值赋给 X0; ( 3) X1=COS( X0),求 出一个新的 X1; ( 4)若 X0X1绝对值小 ,执行步骤 (5),否则执行步骤 (2)。 (5)所求 X1就是方程 cos(X)X=0的一个实根 ,作为函数值返回。 请编写函数 countvalue()实现程序的要求,最后调用函数 WRITEDAT()把结果输出到文件 中。 注意:部分源程序已给出。 请勿改动主函数 main()和输出数据函数 writeDAT()的内容。 float countValue() {float x0,x1=。 while(1) {x0=x1。 x1=cos(x0)。 if(fabs(x0x1)1e6) break。 } return x1。 } 题目 22:请编写函数 countvalue(),它的功能是:求 n 以内(不包括 n)同时能被 3和 7整数的所有自然数之和的平方根 s,并作为函数值返回,最后结果 s 输出到文件 中。 例如若 n 为 1000时,函数值应为: s=。 注意:部分源程序已给出。 请勿改动主函数 main()和输入输出数据函数 progreadwrite()的内容。 double countValue(int n) {double xy=。 int I。 for(I=1。 In。 I++) if(I%3==0amp。 amp。 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==0amp。 amp。 i%7==0) j+=i。 k=sqrt(j)。 return k。 } 题目 23:已知在文件 中存有 N 个(个数 200)四位数字的正整数,函数 readdat()读取这 N 个正整数并存入数组 xx 中。 请编制函数 calvalue(),其功能要求: 求出这 N 个实数的平均值 aver; 分别求出这 N 个实数的整数部分之和 sumint 以及小数部分之和 sumdec,最后调用函数 writedat()把所求的结果输出到文件 中。 注意:部分源程序已给出。 请勿改动主函数 main()、读数据函 数 readdat()和输出数据函数 writedat()的内容。 void CalValue(void) {int I。 double x,sum=0。 for (I=0。 IMAXNUM。 I++) {sumint=sumint+(int)xx[I]。 x=xx[I](int)xx[I]。 sumdec=sumdec+x。 sum=sum+xx[I]。 } aver=sum/MAXNUM。 } 题目 24:在三位整数 (100至 999)中寻找符合条件的整数并依次从小到大存入数组中;它既是完全平方数,又是两位数字相同,例如 14 676等。 请编制函数实现此功能,满足该条件的整数的个数通过所编制的函数返回。 最后调用函数 writeDat()把结果输出到文件 中。 注意:部分源程序已给出。 请勿改动主函数 main()和写函数 writeDat()的内容。 jsValue(int a[10][9]) {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=Ihun*100。 ten=data/10。 data=dataten*10。 if(hun==ten||hun==data||ten==data) {bb[k]=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。 最后把结果输出到文件 中。 注意:部分源程序已给出。 请勿改动主函数 main()的内容。 int jsValue(long n) {int I,strl,half。 char xy[20]。 ltoa(n,xy,10)。 strl=strlen(xy)。 half=strl/2。 for(I=0。 Ihalf。 I++) if(xy[I]!=xy[strl]) break。 if(I=half) return 1。 else return 0。 } 题目 26:已知在文件 中存有若干个(个数 200)四位数字的正整数,函数 readdat()读取这若干个正整数并存入数组 xx 中。 请编制函数 calvalue(),其功能要求: 求出这文件中共有多少个正整数 totnum; 求这些数右移 1位后,产生的新数是偶数的数的个数 tott,以及满足此条件的这些数(右移前的值)的算术平均值 totpjz,最后调用函数 writedat()把所求的。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。