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

2019-04-22 13:17

writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。 注意: 部分源程序存在文件PROG1.C文件中。

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

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

{int I,j,flag=0;

for(I=0;Ielse flag=0;

if(a[I]%2!=0) flag=0; if (flag==0) break;}

if(flag==1) {b[cnt]=a[I];cnt++;} }

for(I=0;I

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

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

题目31:已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)四部分组成。其中:金额=单价*数量计算得出。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品代码从大到小进行排列,若产品代码相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT6.DAT中。 注意: 部分源程序存放在PROG1.C中。

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

---------------------------------- void SortDat() {int I,j; PRO xy;

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

for(j=I+1;j<100;j++)

if(sell[I].je

{xy=sell[I]; sell [I]=sell[j]; sell[j]=xy;} else if(sell[I].je==sell[j].je)

if(strcmp(sell[I].dm,sell[j].dm)<0) {xy=sell[I];sell[I]=sell[j];sell[j]=xy;} }

题目32:已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)四部分组成。其中:金额=单价*数量计算得出。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品名称从大到小进行排列, 若产品名称相同, 则按金额从小到大进行排列. 最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT7.DAT中。 注意: 部分源程序存放在PROG1.C中。

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

---------------------------------- void SortDat() {int I,j;

PRO xy;

for(I=0;I

if(strcmp(sell[I].mc,sell[j].mc)<0)

{xy=sell[I]; sell [I]=sell[j]; sell[j]=xy;} else if(strcmp(sell[I].mc,sell[j].mc)==0) if(sell[I].je>sell[j].je)

{xy=sell[I];sell[I]=sell[j]; sell[j]=xy;} }

题目33:请编制函数ReadDat()实现从文件IN.DAT中读取1000个十进制整数到数组xx中;请编制函数Compute()分别计算出xx中奇数的个数odd,奇数的平均值ave1,偶数的平均值ave2以及所有奇数的方差totfc的值,最后调用函数WriteDat()把结果输出到OUT.DAT文件中。计算方差的公式如下:totfc=1/N∑(xx[i]-ave1)2

设N为奇数的个数,xx[i]为奇数,ave1为奇数的平均值。

原始数据文件存放的格式是:每行存放10个数,并用逗号隔开。(每个数均大于0且小于等于2000) 注意:部分源程序已给出。

请勿改动主函数main()和输出数据函数writeDat()的内容。 void Compute(void) {int I, yy[MAX];

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

if(xx[I]%2){odd++;ave1+=xx[I]; }

else{even++;ave2+=xx[I]; yy[even-1]=xx[I];} ave1/=odd; ave2/=even;

for(I=0;I

totfc+=(yy[I]-ave2)*(yy[I]-ave2)/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;I<1000;I++) {hun=I/100; ten=I0/10;

data=I;

if(hun==(ten+data)) {half=I/2;

for(j=2;j=half)

{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值存入数组单元b[0],b[1]和b[2]中,请编制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 (sum0<100&&sum>100) b[0]=n; if (sum0<1000&&sum>1000) b[1]=n;

if (sum0<10000&&sum>10000) {b[2]=n; break;} sum0=sum; } }

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

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

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

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

------------------------------ void encryptChar() {int I; char *pf;

for(I=0;I

while(*pf!=0)

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

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

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

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

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

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

char *pf;

for(I=0;I

while(*pf!=0)

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

题目38:已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)四部分组成。其中:金额=单价*数量计算得出。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品代码从小到大进行排列, 若产品代码相同, 则按金额从小到大进行排列. 最终排列结果仍存入结构数组sell中,最后调用函


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

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

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

马上注册会员

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