2012年计算机三级网络技术南开100题(8)

2019-04-22 13:17

cd=10*hun+ten;

if (ab%2==1&&cd%2==1&&(ab%5==0||cd%5==0)&&ab!=0&&cd!=0) {b[cnt]=a[I];cnt++;} }

for(I=0;I

{data=b[I];b[I]=b[j];b[j]=data;} }

题目53:已知数据文件IN.DAT中存有300个四位数,并已调用读函数READDAT()把这些数存入数组A中.请编制一函数SVALUE(),其功能是:求出个位数上的数减千位数上的数减百位数上的数减十位数上的数大于零的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从大到小的顺序进行排序,最后调用写函数WRITEDAT()把数组b中的数输出到OUT.DAT文件. 例如:1239,9-1-2-3>0,则该数满足条件存入数组b中,且个数cnt=cnt+1. 8129,9-8-1-2<0,则该数不满足条件忽略。 注意:部分源程序已给出。

程序中已定义数组:a[300],已定义变量:cnt

请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。 --------------------- void jsValue()

{int I,thou,hun,ten,data,j; for(I=0;I<300;I++)

{thou=a[I]/1000; hun=a[I]00/100;

ten=a[I]0/10; data=a[I];

if (data-thou-hun-ten>0){b[cnt]=a[I];cnt++;} }

for(I=0;I

if(b[I]

{data=b[I]; b[I]=b[j];b[j]=data;} }

题目54:已知数据文件IN.DAT中存有300个四位数,并已调用读函数READDAT()把这些数存入数组A中.请编制一函数SVALUE(),其功能是:求出千位数上的数加个位数上的数等于百位数上的数加十位数上的数的个数CNT,再把所有满足条件的四位数依次存入数组b中,然后对数组b的四位数按从大到小的顺序进行排序,最后调用写函数WRITEDAT()把数组b中的数输出到OUT.DAT文件.

例如:7153,7+1=5+3,则该数满足条件存入数组bb中,且个数CNT=CNT+1. 8129,8+1<>2+9,则该数不满足条件忽略. 注意:部分源程序已给出。

程序中已定义数组:a[300],已定义变量:cnt

请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。 --------------------- void jsValue()

{int I,thou,hun,ten,data,j; for(I=0;I<300;I++) {thou=a[I]/1000; hun=a[I]00/100; ten=a[I]0/10;

data=a[I];

if (thou+hun==data+ten){b[cnt]=a[I];cnt++;} }

for(I=0;I

{data=b[I];b[I]=b[j];b[j]=data;} }

题目55:已知数据文件IN.DAT中存有300个四位数,并已调用读函数READDAT()把这些数存入数组A中.请编制一函数SVALUE(),其功能是:求出所有这些四位数是素数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从小到大的顺序进行排序,最后调用写函数writeDat()把结果输出到OUT.DAT文件。

例如:5591是素数,则该数满足条件存入数组b中,且个数cnt=cnt+1。 9812是非素数,则该数不满足条件忽略。 注意:部分源程序已给出。

程序中已定义数组:a[300],b[300],已定义变量:cnt

请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。 --------------------- void jsValue() {int j,I,value;

for(I=0;I<300;I++)

if(isP(a[I])) {b[cnt]=a[I];cnt++;} for(I=0;I

for(j=I+1;j

if(b[I]>b[j])

{value=b[I]; b[I]=b[j]; b[j]=value;} }

题目56:函数ReadDat()实现从文件ENG.IN中读取一篇英文文章,存入到字符串数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx输出到文件PS5.DAT中。

替代关系:f(p)=p*11mod 256 (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果计算后f(p)值小于等于32或f(p)对应的字符是小写字母,则该字符不变,否则将f(p)所对应的字符进行替代。

注意:部分源程序已给出。原始数据文件存放的格式是:每行的宽度均小于80个字符。

请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。

------------------------------ void encryptChar() {int I;

char *pf;

for(I=0;I

while(*pf!=0)

{ if ((*pf*11%6>='a'&&*pf*11%6<='z')||*pf*11%6<=32) {pf++;continue;} *pf=*pf*11%6; pf++;} } }

题目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个人报数后出圈,则将p[i]置于数组的倒数第i个位置上,而原来第

i+1个至倒数第i个元素依次向前移动一个位置; (3)重复第(2)步直至圈中只剩下p[1]为止。 部分源程序已给出。

请勿改动主函数main()和输出数据函数writeDat()的内容。 ------------------- void Josegh(void) {int I,j,k,s1,w;

s1=s;

for(I=1;I<=n;I++) p[I-1]=I; for(I=n;I>=2;I--) {s1=(s1+m-1)%I; if (s1==0) s1=I;

w=p[s1-1];

for(j=s1;j<=I-1;j++) p[j-1]=p[j]; p[I-1]=w;}

}

题目58:对10个候选人进行选举,现有一个100条记录的选票数据文件IN.DAT,其数据存放的格式是每条记录的长度均为10位,第一位表示第一个人的选中情况,第二位表示第二个人的选中情况,依此类推:内容均为字符0和1,1表示此人被选中,0表示此人未被选中,若一张选票人数小于等于5个人时被认为无效的选票。给定函数ReadDat()的功能是把选票数据读入到字符串数组xx中。请编制函数CountRs()来统计每个人的选票数并把得票数依次存入yy[0]到yy[9]中。把结果yy输出到文件OUT.DAT中。 注意:部分源程序已给出。

请勿改动主函数main()、读数据函数ReadDat()和输出数据函数writeDat()的内容。

---------------------- 类型:选票问题。 void CountRs(void) {int I,count,j; char *pf;

for(I=0;I<10;I++) yy[I]=0; for(I=0;I<100;I++) {pf=xx[I];count=0; while (*pf)

if(*pf=='1'){count++;pf++;} else pf++; if (count>5)

{pf=xx[I]; j=0;

while (*pf)

if (*pf=='1') {yy[j]+=1;j++;pf++;} else if (*pf=='0') {pf++;j++;} } } }

题目59:已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是: 把千位数字和十位数字重新组成一个新的十位数ab(新十位数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的十位数字), 以及把个位数字和百位数字组成另一个新的十位数cd (新十位数的十位数字是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字), 如果新组成的两个十位数ab

程序中已定义数组: a[200], b[200], 已定义变量: cnt

请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。 ------------------------- void jsVal()

{int I,thou,hun,ten,data,j; int ab,cd;

for(I=0;I<200;I++)

{thou=a[I]/1000; hun=a[I]00/100; ten=a[I]0/10; data=a[I];

ab=10*thou+ten; cd=10*data+hun;

if(((ab-cd)<0&&ab%2==1&&ab%5!=0)&&cd%2!=1&&ab!=0&&cd!=0) {b[cnt]=a[I];cnt++;} }

for(I=0;I

{data=b[I];b[I]=b[j];b[j]=data;} }


2012年计算机三级网络技术南开100题(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:配电环网柜接点在线测温系统科技项目申请书及可行性研究

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: