还剩39页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
题目星辰恩O1请编写一个函数该函数的功能是将大于整数且紧靠的个素数存入数组传回jsValueint m,int k,int xxf],m mk xx最后调用函数读取组数据,分别得出结果且把结果输出到文件中writeDat10out.dat部分源程序存在文件中prog
5.DATvoid StrORvoid{int i,righto j,s,k;fori=10;i32;i++hum=j/100;ten=j%100/10;data=j%10;ifhum==ten||hum==data||ten==databb[k++]=j;}return k;}■L*1*\!**1*■!*■!*•!*■!*■!**£*■!**1*■!**1**1*—!*■!*■!**1**1*■•*1*■1*•!*■!**!*♦・[••;••卜•卜•卜・卜・[•♦;••】••[•・卜・[••;•,卜*Iw*T*•卜,;•*•*♦•,卜•1••[•・卜•*•;•*1W•卜・卜・】•♦;••卜•1•,】•・卜•;■rTW♦[•,卜•[••卜•卜•;•*•*••,卜•[•・卜•*•;•・卜,卜•卜・卜・•★题目回文数问题25下列程序的功能是寻找并输出至之间的数它满足和均为回文数所谓回文数是指其各位数字11999m,m,m2m3左右对称的整数,例如等满足上述条件的数如皆为回文数请编制函数121,676,94249m=U,m2=121,m3=1331实现此功能,如果是回文数,则函数返回反之则返回最后把结果输出到文件中intsvaluelongm1,0out.datint jsValuelongn{int istrl half;99char xy
[20];注意这里不能使用让函数,因为是型的刃■0211/¥,10;/*020n longstrl=strlenxy;half=strl/2;fori=0;ihalf;i++ifxy[i]!=xy[—strl]break;ifi=half return1;else return0;或者下面的解法int jsValuelongn{long int s=0,k;k=n;whilek{s=s*10+k%10;k/=10;}ifs==n return1;ifs!=n return0;输出结果为m=121,m*m*m=1331m=101,m*m=10201,m*m*m=1030301m=lll,m*m=12321,m*m*m=1367631•.、rjw彳*rj*rj*rj*rj*♦.、rj*rjw,J*•.、rj*rj*rj*rjw,J%JJw rj*rj*rjw★☆题目整数统计运算题26已知在文件中存有若干个个数四位数字的正整数,函数读取这若干个正整数并存入数组IN.DAT200ReadDat xx中请编制函数,其功能要求.求出这文件中共有多少个正整数;.求这些数右移位后,产CalValue1totNum21生的新数是偶数的数的个数以及满足此条件的这些数右移前的值的算术平均值最后调用函数totCnt,totPjz,writeDat把所求的结果输出到文件中OUT.DATvoid CalValuevoid{int idata;9fori=0;iMAXNUM;i++ifxx[i]0{totNum++;data=xx[i]»l;ifdata%2==0{totCnt++;totPjz+=xx[i];}}iftotCnt==0totPjz=0;else totPjz/=totCnt;}
4、、
4、^4**7**7*«、r*i,]、,】、.卜〃、*7*KJ^KJ«、»*i*1«、«、*4***K*!1*1«、YK、J*4K、1*«、*7*K!*7K!*K*J^**K1*K|K!KJ K!T T7KJK1*K|K,F[、题目整数各位数字运算题27已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请编制一函数in.dat300ReadDat ajsValue,其功能是求出千位数上的数减百位数上的数减十位数上的数减个位数上的数大于零的个数再把所有满足此条件ent,的四位数依次存入数组中,然后对数组的四位数按从小到大的顺序进行排序,最后调用写函数把结果b b writeDat输出到文件out.dat例如则该数满足条件存入数组中,且个数9123,9-1-2-30,b cnt=cnt+l〉则该数不满足条件忽略9812,9-8-1-20,jsVaIue{int iJ,qw,bw,sw,gw;fori=0;i300;i++{qw=a[i]/1000;bw=a[i]/100%10;sw=a[i]%100/10;gw=a[i]%10;ifqw-bw-sw-gw0b[cnt++l=a[i];fori=0;icnt-l;i++forj=i+l;jcnt;j++if b[i]b[j]{qw=b[i];b[i]=b[j];b[j]=qw;}}彳*rj*rj*JJw rj*rj*♦.、rjw rj*rj*彳*rj*rj*rj*rjw rj*•.、rjw彳*rj*rj*★☆题目整数各位打散组合运算题28已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat ajsVal,其功能是把千位数字和十位数字重新组成一个新的十位数新十位数的十位数字是原四位数的千位数字,新十位ab数的个位数字是原四位数的十位数字,以及把个位数字和百位数字组成另一个新的十位数新十位数的十位数字cd是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字,如果新组成的两个十位数且ab-cd=0且两个数均是奇数,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入ab-cd=10数组中,并要计算满足上述条件的四位数的个数最后函数调用写函数把结果以及数组b entmain writeDat ent b中符合条件的四位数输出到文件中OUT.DATvoid jsVal{int ij,thou,hun,ten,data,ab,cd;fori=0;i200;i++{thou=a[i]/1000;hun=a[i]%1000/100;ten=a[i]%100/10;data=a[i]%10;ab=10*thou+ten;cd=10*data+hun;ifab-cd=0ab-cd=10ab%2==lcd%2==lab=10cd=10b[cnt++]=a[i];}fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]b[j]{thou=b[i];b[i]=bU];bU]=thou;}}KL*7,7,*1*7,
7.*.!**1*7,7,7,7,7,KL*K1*7,7,*1*-!*K**KJ^7,7,.1**1**17,7,-!**4*KJ7,7,7,KJKL*K1*7,7,*1*-!**1*7,7,*1**.!**1***K1rj*«、*4**|*«、«、〃、4*4^*4**j*«、J*〃、*4*«、«、*4*«、«、*4**2**1**4*«、«、«、4*4^4*«、«、、*4*«、〃、*4*«、«、*4**4**1**4*«、〃、*4*4^*j**y*☆题目整数各位打散组合运算题29已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat ajsVal,其功能是把千位数字和十位数字重新组成一个新的十位数新十位数的十位数字是原四位数的千位数字,新十位ab数的个位数字是原四位数的十位数字,以及把个位数字和百位数字组成另一个新的十位数新十位数的十位数字cd是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字,如果新组成的两个十位数且ab-cd=10且两个数均是偶数,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入ab-cd=20数组中,并要计算满足上述条件的四位数的个数b entvoid jsVal{int i,j,qw,bw,sw,gw,ab,cd;fori=0;iMAX;i++{qw=a[i]/1000;bw=a[i]/100%10;sw=a[i]%100/10;gw=a[i]%10;ab=qw*10+sw;cd=gw*10+bw;ifab-cd=10ab-cd=20ab%2==0cd%2==0qw!=0gw!=0b[cnt++]=a[i];fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]bU]{qw=b[i];b[i]=b[j];bO]=qw;}KJ**1*KJ*KJ**1**1**X»*1**T**T*☆题目整数统计排序题30已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat ajsVal,其功能是依次从数组中取出一个四位数,如果该四位数连续小于该四位数以后的五个数且该数是偶数该四位数a以后不满五个数,则不统计,则统计出满足此条件的个数并把这些四位数按从小到大的顺序存入数组中,最后ent b调用写函数把结果以及数组中符合条件的四位数输出到文件中writeDat ent b OUT.DAT void jsVal{int ij,flag;fori=0;iMAX-5;i++{forj=i+l;j=i+5;j++ifa[i]a[j]a[i]%2==0flag=l;else{flag=0;break;}ifflag==l b[cnt++]=a[i];}fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]bU]{flag=b[i];b[i]=bO];b[j]=flag;}ri*ri*ri*rTw rj*rj**1*ri*^7*rj*ri*ri*ri*rT*ri*1*T*rTw r*rj**7*ri*ri*T*1^ri*rj*★☆题目结构体运算题31已知在文件中存有个产品销售记录,每个产品销售记录由产品代码字符型位,产品名称字符IN.DAT100dm4me型位,单价整型,数量整型,金额长整型五部分组成其中金额=单价*数量计算得出函数10dj sije ReadDat是读取这个销售记录并存入结构数组中请编制函数,其功能要求按金额从大到小进行排列,若100sell SortDat金额相同,则按产品代码从大到小进行排列,最终排列结果仍存入结构数组中,最后调用函数把结果sell WriteDat输出到文件中OUT
4.DATvoid SortDat{int ij;PRO xy;fori=0;i99;i++forj=i+l;j100;j++ifsell[i].jesell[j].je||sell[i].je==sell[j].jestrcmpsell[i].dm,sell[j].dmO{xy=sell[i];sell[i]=sell[j];sell[j]=xy;}■!**1**1**1**1*■!**1*■!**1**1*\!*■!*■!*・[••;••卜*1*,卜・卜・•,】•,】•・卜*T*,卜*T*.[•,;■,卜,1•,卜*7*e•*•;•,I、,卜・卜・[••;••卜,[•,】•・卜rTW*T»♦卜*T*.I、・[••;•,卜,1•*7*e•*•;•,卜•卜•卜・卜・[••;••卜,】•,】•・卜☆题目结构体运算题32已知在文件中存有个产品销售记录,每个产品销售记录由产品代码字符型位,产品名称字符IN.DAT100dm4me型位,单价整型,数量整型,金额长整型五部分组成其中金额=单价*数量计算得出函数10dj sije ReadDat是读取这个销售记录并存入结构数组中请编制函数其功能要求按产品名称从大到小进行排列,100sell SortDat,若产品名称相等,则按金额从小到大进行排列,最终排列结果仍存入结构数组中sell,最后调用函数把结果输出到文件中WriteDat OUT
7.DATvoid SortDat{int ij;PRO xy;fori=0;i99;i++forj=i+l;j100;j++ifstrcmpsell[i].mc,sell[j].mcO||strcmpsell[i].mc,sell[jl.nic==OselI[i].jeseIl[j]Je{xy=sell[i];sell[i]=sell[j];sell[j]=xy;}*1**1**L»*1*KJ**1*1*T*★☆题目方差运算题33请编制函数实现从文件中读取个十进制整数到数组中;请编制函数分别计算出ReadDat IN.DAT1000xx Compute中偶数的个数奇数的平均值偶数的平均值以及方差的值,最后调用函数把结果输xx even,avel,ave2totfc WriteDat出到文件中OUT.DAT计算方差的公式如下N2totfc=1/NXxx[i]-ave2i=l设为偶数的个数,为偶数,为偶数的平均值N xx[i]ave2原始数据文件存放的格式是每行存放个数,并用逗号隔开每个数均大于且小于等于/*********102000编制函数的部分************/ReadDatfori=0;iMAX;i++{fscanffp,n%d;\xx[i];ifi+l%10==0fscanffp,H\nM;}///,.、•.、,卜・卜•.、•卜,卜*j、,.、•卜,]、・[、,.、•.、•卜•卜•.、•/•卜■卜・卜•.、*y*•卜•卜・卜,j、/void Computevoid{int i,yy[MAX];;fori=0;iMAX;i++yy[i]=ofori=0;iMAX;i++ifxx[i]%2==0{yy[even++]=xx[i];ave2+=xx[i];}else{odd++;avel+=xx[i];}ifodd==0avel=O;else avel/=odd;ifeven==O ave2=0;else ave2/=even;fori=0;ieven;i++totfc+=yy[i]-ave2*yy[i]-ave2/even;*£*..、rj*rj*•.、..•rp*JW rjw rjw..、rj*rp**Jw,..ejw rjw,.、题目素数题34无忧题提供了求素数函数id102isPrime程序的功能是选出以上之内所有个位数字及十位数字之和被除所得余数恰是百位数字的素数如progl.c100100010计算并输出上述这些素数的个数以及这些素数值的和请考生编写函数实现程序要求,最后293ent sumcountValueo调用函数把结果和输出到文件中writeDAT ent sum bclO.outint isPrimeintm{int i;fori=2;im;i++ifm%i==0return0;return1;void countValue{int ijbw,sw,gw;fori=100;i1000;i++{bw=i/100;sw=i%100/10;gw=i%10;ifisPrimeigw+sw%10==bw{cnt++;sum+=i;}..、rj*rj*rjw♦.、rj*rj*Jw..、..、rj**Jw*Jw*y»rj*J*rj*rj*★☆题目级数运算题35某级数的前两项以后各项具有如下关系A1=1,A2=1,二注:及为下标An An-2+2An-1n-2n-1下列程序的功能是要求依次对于整数和求出对应的值,使其满足且progl.c M=100,100010000n SnMSn+1=M,这里并依次把值存入数组单元和中,请编制函数来实现此功能,最后调用Sn=Al+A2+...+An,n b
[0],b[l]b
[2]jsValue函数把数组口中的值输出到文件中writeDat bout.dat请勿改动主函数和写函数的内容main writeDat#includc stdio.hint b
[3];jsValue{int al=l,a2=l,al2sn,k=2;9sn=al+a2;whilel{al2=al+2*a2;ifsn100sn+al2=100b[O]=k;ifsn1000sn+al2=1000b[l]=k;ifsn10000sn+al2=10000{b
[2]=k;break;}sn=sn+al2;al=a2;a2=al2;k++;}运行结果为M=100,n=6M=1000,n=9M=10000,n=ll■左*4**1**1**L**1**4*■,,***■],1■],■1,*1**1**1**L**L*“,“,*!1•\],*1**L*■],*4*■,,■],L*■[,*1**1**1**L**L**T**T**T»*T**T**T**T»*7**T**T**T**T**T**T**T**Tw*T^★题目字符替换题36函数实现从文件中读取一篇英文文章,存入到字符串数组中;请编制函数按给定ReadDat ENG.IN xx encryptChar,的替代关系对数组中的所有字符进行替代,仍存入数组的对应的位置上,最后调用函数把结果输xx xx WriteDat xx出到文件中pS
6.DAT替代关系是数组中某一个字符的值,是计算后新字符的值,如果计算后值fp=p*ll mod256p ASCII fp ASCIIfp小于等于或对应的字符是数字至则该字符不变,否则将所对应的字符进行替代32fp9,fpvoid encryptChar{int ij;fori=0;imaxline;i++forj=0;jstrlenxx[i];j++ifxx[i][j]*ll%256=32||xx[i][j]*ll%256=,0,xx[i][j]*ll%256V=9continue;else xx[i][j]=xx[i][j]*ll%256;*.1•*1*L»*1**1*KF**1**L*1**L»*1^*T**T**T**7**7*题目字符替换题37函数实现从文件中读取一篇英文文章,存入到字符串数组中;请编制函数按给定ReadDat ENG.IN xx encryptChar,的替代关系对数组中的所有字符进行替代,仍存入数组的对应的位置上,最后调用函数把结果输xx xx WriteDat xx出到文件中PS
7.DAT替代关系是数组中某一个字符的值,是计算后新字符的值,如果原字符是大写fpp*l lmod256p ASCIIfp ASCII字母或计算后值小于等于则该字符不变,否则将所对应的字符进行替代fp32,fpvoid encryptChar{int ij;fori=0;imaxline;i++forj=0;jstrlenxx[i];j++ifxx[i][j]*n%256=32||xx[i][j]=,A,xx[i][j]=,Z,continue;else xx[i][j]=xx[i][j]*n%256;}1**!**!*KJ^*!*!**1*KJ*!**!**!*T**T**T**T**T**T**T**T*题目结构体运算题38已知在文件中存有个产品销售记录,每个产品销售记录由产品代码字符型位,产品名称字符IN.DAT100dm4me型位,单价整型,数量整型,金额长整型五部分组成其中金额=单价*数量计算得出函数10dj sije ReadDat是读取这个销售记录并存入结构数组中请编制函数,其功能要求按产品代码从小到大进行排列,100sell SortDat若产品代码相同,则按金额从小到大进行排列,最终排列结果仍存入结构数组中,最后调用函数把结sell WriteDaK果输出到文件中OUT
6.DATvoid SortDat{int ij;PRO xy;fori=0;i99;i++fora=i+l;j100;j++ifstrcmpsell[i].dm,sell[j].dmO||strcmpsell[i].dm,sell[j].dm==Osell[i].jesell[j].je{xy=sell[i];sell[i]=sell[j];sell[j]=xy;}KA KA*KL«K1K1K1■
1、〃、^1*,I、«、*4*rTw
4、
4、...卜.卜.卜d、*7*
4、
4、.卜«、.卜.卜
4、.卜.卜,卜
4、.卜.卜.卜〃、***rw★☆题目选票问题39现有一个个人行的选票数据文件其数据存放的格式是每条记录的长度均为位,第一位表示第一个10100IN.DAT,10人的选中情况,第二位表示第二个人的选中情况,依此类推内容均为字符和表示此人被选中表示此人未被1,1,0选中,全选或不选均为无效的选票给定函数的功能是把选票数据读入到字符串数组中请编制函数ReadDat xx来统计每个人的选票数并把得票数依次存入到中把结果输出到文件中CountRs yy[O]yy
[9]yy OUT.DATvoid CountRsvoid{int i,j,count;fori=0;i100;i++{count=0;forj=0;j10;j++ifxx[i][j]==,rcount++;ifcount==0||count==10continue;forj=0;j10;j++ifxx[i][j]==,l,yy[j]++;****£*..、,;、•卜q、q、q、..、..、•卜,卜q、,卜*J、
4、,■、,丫、*
1、..、..、•卜,卜q、*j、..、,口..、•力•卜*j、..、,;、•卜q、*j、*j、..、..、•卜,卜q、..、•门,[■☆题目整数统计运算题40已知在文件中存有若干个个数四位数字的正整数,函数读取这若干个正整数并存入数组IN.DAT200ReadDat xx中请编制函数,其功能要求Cal Value.求出这文件中共有多少个正整数;1totNum.求这些数中的各位数字之和是偶数的数的个数2totCnt,以及满足此条件的这些数的算术平均值最后调用函数把所求的结果输出到文件中totPjz,writeDat OUT.DATvoid CalValuevoid{int i,qw,bw,sw,gw;fori=0;iMAXNUM;i++ifxx[i]0{totNum++;qw=xx[i]/1000;bw=xx[i]/100%10;sw=xx[i]%100/10;gw=xx[i]%10;ifqw+bw+sw+gw%2==0{totCnt++;totPjz+=xx[i];}}iftotCnt==0totPjz=0;else totPjz/=totCnt;}*1**1**1*—!**1*■!*■!*■!*•!**1**x*■!*■!**1*■!**1*■!*•!**1*■■£*■!**1*—!**1*■■£*■!*■!*■!**1**L*■1**1*■!*■!*■£*■!**1**1*■£*■!**1*■!**1*■*£*♦[••[••卜♦卜•卜,卜•[••卜•卜•;••卜•卜•卜♦卜力.•卜•卜•卜•[•,卜•卜•卜•卜•;••卜•卜■卜•[••卜•卜♦.、,卜☆题目问题41SIX/NINE下列程序的功能是计算出自然数和它们满足的条件是的个数以及progl.c SIX NINE,SIX+SIX+SIX=NINE+NINE ent满足此条件所有的及的和请编写函数实现程序的要求,最后调用函数把结SIXNINESUM countValue writeDat果和输出到文件中ent sum,OUT
15.DAT其中的各代表一个十进制数字S,I,X,N,E部分源程序存在文件中prog
1.c请勿改动主函数和输出数据函数的内容main writeDat#include stdio.hint ent,sum;void countValue{ints,i,x,n,e,six,nine;fors=l;s10;s++fori=0;i10;i++forx=0;x10;x++forn=l;n10;n++fore=0;e10;e++{six=s*100+i*10+x;nine=n*1000+i*100+n*10+e;if3*six==2*nine{cnt++;sum+=six+nine;}}■虹*1*.1*•[・■],■],■],•1・•卜,卜*1*«•*7*rT»rT»*Tw*Tw«•ri**Tw«•«•*7*rTw T*«•«•*7*«•*1*rTw«•*1*«•*1**7**
7、*T*«•*7*rTw T*«•*1**T*«•*7**7**Tw rTw«•题目结构体运算题42已知在文件中存有个产品销售记录,每个产品销售记录由产品代码字符型位,产品名称字符IN.DAT100dm4me型位,单价整型,数量整型,金额长整型五部分组成其中金额=单价*数量计算得出函数10dj sije ReadDat是读取这个销售记录并存入结构数组中请编制函数,其功能要求按产品名称从大到小进行排列,100sell SortDat若产品名称相等,则按金额从大到小进行排列,最终排列结果仍存入结构数组中,最后调用函数把结sell WriteDat果输出到文件中OUT
5.DAT部分源程序存在文件中prog
1.cvoid SortDat{int ij;PRO xy;fori=0;i99;i++forO=i+l;j100;j++ifstrcmpsell[i].mc,seIl[j].mcO||strcmpsell[i].mc,sell[j].mc==Osell[i].jesell[j].je{xy=sell[i];sell[i]=sell[j];sell[j]=xy;}*X^*1^*1^*1^*1**2^*£**1^*1^*1**1**1^*1^1^*1**1^*1^*1**1^*1**1**1**£**1^*1^*2^*1^*1^*1^*1**J、■.、r1*rjw*J J**!*r1*rjw*J**T**Jw*i**J**Jw rj^rjw rjw*1**J*rj**T*rj*/I*ri**T**TM*7^!*rT**Tw*1**Jw r1**lw*Tw J*/T*ri**T*★题目字符排序题43无忧题只是将结果按“从大到小”排序id82函数实现从文件中读取行数据存放到字符串数组中每行字符串长度均小于请编制函数ReadDat in.dat20xx80其函数的功能是以行为单位对字符串变量的下标为奇数的字符按其值从小到大的顺序进行排序,排jsSort,ASCII序后的结果仍按行重新存入字符串数组中,最后调用函数把结果输出到文件中例如位置xx WriteDat xx utdat01234567源字符串abcdefgh则处理后字符串a hc f e dg bvoid jsSort{int ij,k,strl;char ch;fori=0;i20;i++{strl=strlenxx[i];forg=l;jstrl-2;j=j+2fork=j+2;kstrl;k=k+2ifxx[i][j]xx[i][k]{ch=xx[i][j];xx[i][j]=xx[i][k];xx[i][k]=ch;}}■!*■!*■!**X**X*•£**i*■!*■!*■!**1*■\\X**1*■1**1*■!**1*»***1*•£*■!**1*\1*■*1*■£*■!*■!**1*—•£*■1**1*■!*■!**1^■•1**1*\1**X*■£*■!**1****•£*■£*■1**1*■!*■!*•£**1*■!*■!**X*•;••.••;■•[、•1••卜♦卜♦卜•,■■;、•1••】、■卜♦卜*7*•;•,;•♦[•,卜1*■1•■卜•;•,;、•卜•卜,[■♦卜•;•*.*•卜•
1、•卜♦卜•[••,•‘;••】•,I、•[■■卜♦1•,;•,;、***,卜*1*■卜•;•,;、•卜•卜,[■•;、•・、•;••卜•[•♦卜♦卜•卜•,■,;■,】•■
1、■卜♦卜•;•★☆题目字符串左右排序交换题44函数实现从文件中读取行数据存放到字符串数组中每行字符串长度均小于请编制函数ReadDat in.dat20xx80其函数的功能是以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组jsSort,xx中,最后调用函数把结果输出到文件中WriteDat xx out.dat条件:从字符串中间一分为二,左边部分按字符的值降序排序,排序后左边部分及右边部分进行交换如ASCII果原字符串长度为奇数,则最中间的字符不参加处理,字符仍放在原位置上例如位置012345678源字符串a bc dh gf e123498765则处理后字符串h gfed cb a876594321void jsSort{int ijk strlhalf;999char temp;fori=0;i20;i++{strl=strlenxx[i];half=strl/2;forj=0;jhalf-l;j++fork=j+l;khalf;k++ifxx[i]U]xx[i][k]{temp=xx[i][j];xx[i][j]=xx[i][k];xx[i][k]=temp;}for j=half-1,k=strl-1;j=0;j—,k—{temp=xx[i][j];xx[i][j]=xx[i][k];xx[i][k]=temp;}}KL*7,7,*1*7,
7.*1**.!**1***K17,7,*!*■!**i**KJ7,7,7,KJK1*K1*7,7,.!*K*K**K1*7,7,*1**1*K17,7,*!*-!**1*K*KJ7,7,7,KJKL*K1*7,7,*1*-!**1*7,7,*1**.!**1*☆JM-J*rj*,J、rj*rj*«、—J、,J*4^rj*ry*«、,J、,Jw,J、,J、,J、rjw-J*-f*«、,J、,J*-J*rj**4*«、,J、—J、f、,J、,J、,Jw f、«、,J、,J**jw-J**,J、,J、*J、,J*,J*rj*rj,J、,J、,J*4^☆题目数字统计排序题45已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat ajsVal,其功能是依次从数组中取出一个四位数,如果该四位数连续大于该四位数以前的五个数且该数是偶数该四位数a以前不满五个数,则不统计,则统计出满足此条件的个数并把这些四位数按从大到小的顺序存入数组中,最后ent b调用写函数把结果以及数组中符合条件的四位数输出到文件中writeDat ent b OUT.DATvoid jsVal{int ij,flag;fori=5;iMAX;i++{forj=i-5;ji;j++ifa[i]a[j]a[i]%2==0flag=l;else{flag=0;break;}ifflag==l b[cnt++]=a[i];fori=0;ient-l;i++forg=i+l;jcnt;j++ifb[i]b[j]{fla=b[i];b[i]=bU];b[j]=fla;}g g*1*KJ**1*7,*1*K.1*KS*KL*KL*7,7,■!**1**1*KJ**L*7,*1*-!**1**1**L*7,K!、!KJ*KL*KJ*K|7,K!!*1**1*KIK!!■1**1*KL*KJ7,*1**1*KL*7,7,*1**1**1**L*7,7,*1**1*rj*.、rj.q、^4*rj*q.q.*J、rj*%、q.*
1、*4*〃、^4*r1*rj*q、*4**7*q、q.〃、*j**2*q.〃、*2*☆题目数字统计排序题46已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat ajsVal,其功能是依次从数组中取出一个四位数,如果该四位数连续大于该四位数以前的五个数且该数是奇数,且该数必a须能被整除该四位数以前不满五个数,则不统计,则统计出满足此条件的个数并把这些四位数按从大到小的7ent顺序存入数组中,最后调用写函数把结果以及数组中符合条件的四位数输出到文件中b writeDat ent b OUT.DATvoid jsVal{int ijflag;fori=5;iMAX;i++{forj=i-5;ji;j++ifa[i]a[j]a[i]%2a[i]%7==0flag=l;else{flag=O;break;}ifflag==l b[cnt++]=a[i];}fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]b[j]{flag=b[i];b[i]=b[j];b[j]=fla;}gsi*ri**1*1*ri*ri*rTw ri*ri*rj*1ri1*1*1*rTw r*rj**1*ri*ri*11*T**1**7^rrw rT*ri*1**1*1*rTw r*rj*1*ri*1**1**7*rT*^7*ri*1**1*题目结构体运算题47已知在文件中存有个产品销售记录,每个产品销售记录由产品代码字符型位,产品名称字符IN.DAT100dm4me型位,单价整型,数量整型,金额长整型五部分组成其中金额=单价*数量计算得出函数10dj sije ReadDat是读取这个销售记录并存入结构数组中请编制函数,其功能要求按金额从大到小100sell SortDatchartem
6.DAT例如原文:You HeMeI ama student.结果:Me HeYoustudent aam IvoidStrOLvoid{int ij,k,s,m,strl;char str
[80];fori=0;imaxline;i++{strl=strlenxx[i];memsetstr,0,80;s=k=0;for j=strl-1;j=0;j-{ifisalphaxx[i][j]k++;else{form=l;m=k;m++str[s++]=xx[i][j+m];k=0;}if!isalphaxx[i][j]str[s++]=*f;form=l;m=k;m++str[s++]=xx[i][j+m];str[s]=,\0,;strcpyxx[i],str;}}题百o5在文件中有个正整数,且每个数均在至之间函数读取这个数存放到数组中in.dat20010009999ReadDat200aa请编制函数其函数的功能是要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前个数jsSort,10依次存入数组中,如果后三位的数值相等,则按原先的数值进行降序排列最后调用函数把结果输bb WriteDatbb出到文件中out.dat例处理前60125099901270258088处理后90126012702580885099进行排列,若金额相等,则按产品代码从小到大进行排列,最终排列结果仍存入结构数组中,最后调用函数senvoid SortDat{int ij;PRO xy;fori=0;i99;i++forj=i+l;j100;j++ifsell[i].jesell[j].je||selI[i].je==sell[j].jestrcmpsell[i].dm,sell[j].dmO{xy=sell[i];sell[i]=sell[j];sell[j]=xy;}*1**1**2^•.、rjw*pw..、rjw rj*rjw rjw rj*ej*rjw☆题目整数各位数字运算题48已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请编制一函数in.dat300ReadDat ajsValue,其功能是求出千位数上的数加个位数上的数等于百位数上的数加十位数上的数的个数再把所有满足此条件的四ent,位数依次存入数组中,然后对数组的四位数按从小到大的顺序进行排序,最后调用写函数把结果输出b b writeDat至!文件J out.dat例如则该数满足条件存入数组中,且个数6712,6+2=7+1,b cnt=cnt+lo则该数不满足条件忽略8129,8+901+2,jsValue{int i,qw,bw,sw,gwj;fori=0;i300;i++{qw=a[i]/1000;bw=a[i]%1000/100;sw=a[i]%100/10;gw=a[i]%10;ifqw+gw==bw+sw b[cnt++]=a[i];fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]b[j]{qw=b[i];b[i]=b[j];b[j]=qw;}******1^*1**1*..、,;、•卜q、q、q、..、..、•卜,卜q、
4、
4、..、4•q、..、
4、*j、〃、..、,;、•卜q、..、..、•卜,卜q、•[■・卜..、
4、*j、*j、q、..、,;、•卜q、*j、
4、..、..、,卜q、
4、
4、..、«j、题目整数各位数字运算题49已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请编制一函数in.dat300ReadDat ajsValue,其功能是求出千位数上的数减百位数减十位数上的数减个位数上的数大于零的个数再求出所有满足此条件的四ent,位数平均值以及不满足此条件的四位数平均值最后调用写函数把结果输出到文件pjzl,pjz2,writeDat out.dat例如则该数满足条件计算平均值且个数则该数不满足条件计算平9123,9-1-2-30,pjzl,cnt=cnt+l9812,9-8-1-20,均值pjz2jsValue{int i,qw,bw,sw,gw,n=0;fori=0;i300;i++{qw=a[i]/1000;bw=a[i]%1000/100;sw=a[i]%100/10;gw=a[ij%10;ifqw-bw-sw-gw0{cnt++;pjzl+=a[i];}else{n++;pjz2+=a[i];}ifcnt==O pjzl=O;else pjzl/=cnt;ifn==O pjz2=0;else pjz2/=n;}*1**1**1**1**1**1**!**i*■!*■!*■!**1**1*—*£*■!*■!**1*■*1*■!**1*—*£*■!*■!**1#*1*•£**2^\!*■!**1*■■£**1^■!*■!**X*■*£*■1**1*■!**1^—*£*,.、•.•♦[••【••卜♦卜■7•,.,•.•♦[••卜•[•,[••.••[••卜•[•.卜q.,.、•;••卜•卜•卜♦卜.[••.••卜•卜•卜■]•♦.•♦[••[•,[•,卜•.••卜•卜•1••卜•】•q.,.、•;••卜•卜■卜•.、•[••[••卜•卜•.、♦[••1•,[•■[,•.••卜•卜•[••[•q.题目字符串左右排序交换题函数实现从文件中读取行数据存放到字符串数组中每行字50ReadDat in.dat20xx符串长度均小于请编制函数其函数的功能是以行为单位对字符串按给定的条件进行排序,排序后的结80jsSortO,果仍按行重新存入字符串数组中,最后调用函数把结果输出到文件中xxWriteDat xx out.dat条件:从字符串中间一分为二,左边部分按字符的值升序排序,排序后左边部分及右边部分进行交换如ASCII果原字符串长度为奇数,则最中间的字符不参加处理,字符仍放在原位置上源字符串则处理后字符串hgfeabcd例如位置012345678void jsSort{int i,j,k,strl,half;char temp;fori=0;i20;i++{strl=strlenxx[i];half=strl/2;forj=0;jhalf-l;j++fork=j+l;khalf;k++ifxx[i]U]xx[i][k]{temp=xx[i][j];xx[i][j]=xx[i][k];xx[i][k]=temp;}forj=half-l,k=strl-l;j=0;j—,k—{temp=xx[i][j];xx[i][j]=xx[i][k];xx[i][k]=temp;}}*1^*1**1**4**;!•*4**;!•*.!**L»*1**L**X*KI*•.!**•*1*L**.1**X»*4**T**T*★☆题目整数各位打散组合运算题51没有提供求素数函数,可自己编制isprimeO已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat ajsVal,其功能是把千位数字和十位数字重新组成一个新的十位数新十位数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的十位数字,以及把个位数字和百位数字组成另一个新的十位数新十位数的十位数字是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字,如果新组成的两个十位数均是素数且新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组中,并要计算满足上述条件的四位数的个数b cnto最后函数调用写函数把结果以及数组中符合条件的四位数输出到文件中main writeDat ent b OUT.DATint isprimeintm{inti;fori=2;iv=m/2;i++ifm%i==O return0;return1;void jsVal{int ij,qw,bw,sw,gw;int ab,cd;fori=0;i200;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;ifisprimeabisprimecdab=10cd=10b[cnt++J=a[i];}for i=0;icnt-1;i++forj=i+l;jcnt;j++ifb[i]b[j]{qw=b[i];b[i]=b[j];b[j]=qw;}*1**!**1**1**1*****!*1**1*■],*.1**1**1*****1**T**T**T**1**T»*T»*7**T**T**7**T**T**T**T*题目整数各位打散组合运算题52已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat ajsVal,其功能是把千位数字和个位数字重新组成一个新的十位数新十位数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的个位数字,以及把百位数字和十位数字组成另一个新的十位数新十位数的十位数字是原四位数的百位数字,新十位数的个位数字是原四位数的十位数字,如果新组成的两个十位数均是奇数并且两个十位数中至少有一个数能被整除,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数5组中,并要计算满足上述条件的四位数的个数最后函数调用写函数把结果以及数组中符b cntomain writeDat ent b合条件的四位数输出到文件中OUT.DATvoid jsVal;{int i,thou,hun,ten,data4int ab cd;9fori=0;iMAX;i++{thou=a[i]/1000;hun=a[i]%1000/100;ten=a[i]%100/10;data=a[i]%10;ab=10*thou+data;cd=10*hun+ten;ifab%2cd%2ab%5==0||cd%5==0ab=10cd=10b[cnt++]=a[i];}fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]b[j]{data=b[i];b[i]=b[j];b[j]=data;}T*rT*r*rj*rj*rj*ri*ri*1*rrwri*ri**7*rT*rj*rs**1**7^rrwr*rTwr*ri*rTwrj*ri*☆题目整数各位数字运算题53已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请编制一函数in.dat300ReadDat ajsValue,其功能是求出千位数上的数减百位数上的数减十位数上的数减个位数上的数大于零的个数再把所有满足此条件ent,的四位数依次存入数组中,然后对数组的四位数按从小到大的顺序进行排序,最后调用写函数把结果b b writeDat输出到文件out.dat例如则该数满足条件存入数组中,且个数9123,9-1-2-30,b cnt=cnt+ljsValue{int ij,qw,bw,sw,gw;fori=0;i300;i++{qw=a[i]/1000;bw=a[i]/100%10;sw=a[i]%100/10;gw=a[i]%10;ifqw-bw-sw-gw0b[cnt++]=a[i];fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]b[j]{qw=b[i];b[i]=b[j];b[j]=qw;}*4**1**4*****!.•*1**1**L**!1•\],*1**L*■],L**1**1**1**L**L*“,“,*T**T**T**T**T**7**T**T**7**T**T**7**T**T**T**T**7**T**T**T»*7**T**T**T**T**T**7**T**T**7**T**T**T*题目整数各位数运算排序题54已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请编制一函数in.dat300ReadDat ajsValue,其功能是求出千位数上的数加百位数上的数等于十位数上的数加个位数上的数的个数再把所有满足此条件的四ent,位数依次存入数组中,然后对数组的四位数按从大到小的顺序进行排序,最后调用写函数把结果输出b b writeDat到文件out.dat例如则该数满足条件存入数组中,且个数7153,7+1=5+3,b cnt=cnt+l则该数不满足条件忽略8129,8+12+9,jsValue{int ij,qw,bw,sw,gw;fori=0;i300;i++{qw=a[i]/1000;bw=a[i]/100%10;sw=a[i]%100/10;gw=a[i]%10;ifqw+bw==sw+gw b[cnt++]=a[i];fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]b[j]{qw=b[i];b[i]=b[j];b[j]=qw;}}7■工*■]*■L*1*q*■],****1*u*u*、*T*«•«•«•*T**T»«•«•*7**T«rTw*Tw«•«•*7**7*«•«•*1**7*«•«•*1**7**T**Tw*Tw«•*T*«•«•«•*J**7**7*T*«•*1*«•*1**T**7•*7**Tw«•*Tw«•*1*«•*7*rTw*1*题目素数统计排序题55已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请编制一函数in.dat300ReadDat ajsValue,其功能是求出所有这些四位数是素数的个数再把所有满足此条件的四位数依次存入数组中,然后对数组的四ent,b b位数按从小到大的顺序进行排序,最后调用写函数把结果输出到文件writeDat out.dat例如是素数,则该数满足条件存入数组中,且个数十是非素数,则该数不满足条件忽略5591b ent=ent19812int isPintm{int i;fori=2;im;i++ifm%i==Oreturn0;return1;jsValue{int ij,value;fori=0;i30;i++ifisPa[i]b[cnt++]=a[i];fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]b[j]{value=b[i];b[i]=b[j];b[j]=value;}1^*1**1**2^•.、rjw,.、Jw..•rp**Jw rjw,..rj*..、rjw rj*,..ejw rjw,.、rj**Jw..、题目字符替换题56函数实现从文件中读取一篇英文文章,存入到字符串数组中;请编制函数,按ReadDat ENGIN xx encryptChar给定的替代关系对数组中的所有字符进行替代,仍存入数组的对应的位置上,最后调用函数把结果xx xxWriteDatO输出到文件中xx PS
5.DAT替代关系是数组中某一个字符的值,是计算后新字符的值,如果计算后fp=p*llmod256p ASCHfp ASCIIfp值小于等于或对应的字符是小写字母,则该字符不变,否则将所对应的字符进行替代32fp fpvoid encryptChar{int ij;fori=0;imaxline;i++forj=0;jstrlenxx[i];j++ifxx[i][j]*ll%256=32||xx[i][j]^ll%256=,a,xx[i][j]^ll%256=,z,continue;else xx[i][j]=xx[i][j]*ll%256;}.亚■],KL**1*■£**1**2**1**t**.L**.1**1*1*1****■1,*1**1*■],*1*■£**1**1**t*■],*.!**4**1**!**!•*1**1**4**1****■[,*4**1**1**!**.!**.1*■£*KL**t*■],*.!**T**T**T**T**T**T**T**T**T**T**T**T**T**T»*7**T**T**T**T**T**T»*T**T**i**7**T**T**7**T**T**T**7**T*★题目出圈题57本题采用实际上机题,年月和年月实际上机题及下面相同059049设有个人围坐一圈并按顺时针方向从到编号,从第个人开始进行到的报数,报数到第个人,此人n1n s1m m出圈,再从他的下一个人重新开始到的报数,如此进行下去直到所有的人都出圈为止现要求按出圈次序,给出1m这个人的顺序表请考生编制函数实现此功能并调用函数把编号按照出圈的顺序输出至n poJosegh WriteDatO文件中注意第个出圈的编号存放在中,第个出圈的编号存放在中,直至第个出圈的编lJOUT.DAT1p
[0]2p[l]n号存放在中设进行编程p[n-l]n=100,s=1,m=10void Joseghvoid{int ij,sl,w,q
[100];fori=0;in;i++q[i]=0;sl=s;fori=l;i=n;i++p[i-l]=i;fori=n;i=2;i—{sl=sl+m-l%i;ifsl==O sl=i;w=p[sl-l];;forj=sl;ji;j++p[j-l]=p[j]p[i-l]=w;;fori=0J=n-l;inJ=0;i++,j«q[j]=p[i]fori=0;in;i++■如*1*■£**1**2**1**t**.L**.1**1**L»*!1“・*1****-b■】,*1**1*4,*1**1*■],*1*■£**1**1**1**t*■],*.!*\I,*1**!**1**1**4**1****■],L»4,*1**1**!**.!**.1*■£**t**1*KL**t**.!**1**T**1**T**T**T**T»*T**T»*T»*T»*T**T**T**T»*T**T**T**T**T**T**T»*T**T**T**T**T**7**T**T**T**7**T**T**T**T**T»*T**T**T**T**T»*Tw*Tw*T**T**T**T**T**7**T**T**T**T**T»***T*题目选票问题58现有一个个人行的选票数据文件其数据存放的格式是每条记录的长度均为位,第一位表示第一个10100IN.DAT,10人的选中情况,第二位表示第二个人的选中情况,依此类推内容均为字符和表示此人被选中表示此人未被1,1,0选中,若一张选票人数小于等于个人时被认为无效的选票给定函数的功能是把选票数据读入到字符串5ReadDat数组中请编制函数来统计每个人的选票数并把得票数依次存入⑼到⑼中把结果输出到文件xx CountRsOyy yyyy中OUT.DATvoid CountRsvoid{int i,j,count;fori=0;i100;i++{count=0;forj=0;j10;j++ifxx[i][j]==,l,count++;ifcount=5continue;forj=0;j10;j++ifxx[i][j]==*r yyU]++;**1j***r1j***£*q.〃*、1*1**1q*.*〃
1、***11**q*.1**1t**11**41***1**1**1**1*\q].,■].*i**1**1*KF*1*1*rj**1**1*q.rj*K17,7,*1**1*q.rj**j*rj*7,q*.1**1**1**£**1*7,■1**1r*j*rj*rj**1*rj*q.7,■】,■1**1*KJ**1*7,7,KS**1**1*7,★题目整数各位打散组合运算题题59已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat ajsVal,其功能是把千位数字和十位数字重新组成一个新的十位数新十位数的十位数字是原四位数的千位数字,新十位ab数的个位数字是原四位数的十位数字,以及把个位数字和百位数字组成另一个新的十位数新十位数的十位数字cd是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字,如果新组成的两个十位数必须是奇abcd,ab数且不能被整除,必须是偶数,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序5cd存入数组中,并要计算满足上述条件的四位数的个数最后函数调用写函数把结果以及数b cntomain writeDat ent组中符合条件的四位数输出到文件中b OUT.DATvoid jsVal{int i,thou,him,ten,data j;int abcd;9fori=0;iMAX;i++{thou=a[i]/1000;hun=a[i]/100%10;ten=a[i]%100/10;data=a[i]%10;ab=10*thou+ten;cd=10*data+hun;ifab-cd0ab%2==lab%5!=0cd%2!=lab=10cd=10{b[cnt]=a[i];cnt++;}fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]b[j]{data=b[i];b[i]=b[j];b[j]=data;}*2*si*si**7**1*/J*rj*rjw ri**1*rjw rj**1*/J**1**1*题目整数运算排序题在文件中有组数据,每组有个数,每个数均是三位数函数读取这60in.dat2003ReadDat组数据存放到结构数组中,请编制函数,其函数的功能是要求在组数据中找出条件为每组中的200aa jsSort200第二个数大于第一个数加第三个数的之和,其中满足条件的组数作为函数的返回值,同时把满足条件的数据jsSort存入结构数组中,再对中的数据按照每组数据的第二个数加第三个之和的大小进行降序排列第二个数加第三个bb bb数的和均不相等,排序后的结果仍重新存入结构数组中,最后调用函数把结果输出到文件bb WriteDatbb out.dat中int jsSort{int i,j,cnt=0;data ch;fori=0;i200;i++ifaa[i].x2aa[i].xl+aa[i].x3bb[cnt++]=aa[i];fori=0;icnt-l;i++forj=i+l;jcnt;j++ifbb[i].x2+bb[i].x3bb[j].x2+bb[j].x3{ch=bb[i];bb[i]=bb[j];bb[j]=ch;}return ent;}KIA KL*KL*
4、.]、,卜〃、•
1、V、•】、•
1、,卜*4^
4、〃、〃、.
1、■】、〃、*4****
4、.卜.卜〃、〃、V、*3^*7*★题目结构体运算题61已知在文件中存有个产品销售记录,每个产品销售记录由产品代码字符型位,产品名称字符IN.DAT100dm4me型位,单价整型,数量整型,金额长整型五部分组成其中金额=单价*数量计算得出函数10dj sije ReadDat是读取这个销售记录并存入结构数组中请编制函数,其功能要求按金额从小到大进行排列,若100sell SortDat金额相同,则按产品代码从大到小进行排列,最终排列结果仍存入结构数组中,最后调用函数把结果sell WriteDat输出到文件中OUT
2.DATvoid SortDat{int ij;PRO xy;fori=0;i99;i++forO=i+l;j100;j++ifsell[il.jesell[j].je||sell[i].je==sell[j].jestrcmpsell[i].dm,sell[j].dmO{xy=sell[i];sell[i]=sell[j];sell[j]=xy;}*.1KJ**T**7**T**T**T^*T*☆题目字符替换题62无忧题条件微有不同id9函数实现从文件中读取一篇英文文章,存入到字符串数组中;请编制函数按给定ReadDat ENGIN xxencryptChar,的替代关系对数组中的所有字符进行替代,仍存入数组的对应的位置上,最后调用函数把结果xx xxWriteDat xx输出到文件中PS
2.DAT替代关系是数组中某一个字符的值,是计算后新字符的值,如果计算后fp=p*13mod256p ASCIIfp ASCII值小于等于或其值是偶数,则该字符不变,否则将所对应的字符进行替代fp32ASCII fpvoid encryptChar{int ij;fori=0;imaxline;i++forj=0;jstrlenxx[i];j++ifxx[i][j]*13%256=32||xx[i][j]*13%256%2==0continue;else xx[i][j]=xx[i][j]^13%256;*1**1**1*7,7,7,7,*1*KJ7,7,7,*1**1**1**1*7,7,7,7,*1**1**1**1*■],7,7,*-1**1*1*■17,7,7,*1*7,7,7,■1**1**£**1*7,7,*1**1**1**!*7,7,*1**1**1*■£*7,7,7,*1**1**1**1*7,7,■[,*1**1**1**£*■£*7,7・〃、q.q.
4、q.*»*q.*
1、〃、*
1、*1*q.q、q.〃、q.q.q.q.*j**»**
1.q、〃、*4**jw*g*q.q、*j**g*〃、q.q.q、〃、q.〃、〃、★题目字符串移位题63程序的功能是把字符串中的所有字符左移一个位置,串中的第一个字符移到最后请考生编写函数progLc schgchar实现程序要求,最后调用函数把结果输出到文件中*s readwriteDATbc
2.out例如字符串中原有内容为则调用该函数后,结果为s Mn.l23xyZ,n.l23xyZMovoid chgchar*s{int i;char ch=*s;fori=0;istrlens-l;i++s[i]=s[i+l];s[strlens-l]=ch;*x**X*xl**1*..、,R*J、*J、..、..、•卜*J、.,、..、...,卜rjw..、,R ej*rj*..、,命,R*J、*J、..、..、rj*,R•卜*J、•卜,.、..、,门ej**J、..、•R•卜*J、*J、..、..、•卜*J、.,、...★☆题目素数题64下列程序的功能是找出所有以内含满足都是素数的整数也在以内的个数以100100I,1+4,1+10I1+10100ent及这些之和请编写函数实现程序要求的功能,最后调用函数把结果和输出到I sumcountValueO writeDat entsum文件中out.datint isPrimeintm{int i;fori=2;im;i++ifm%i==0return0;return1;void countValueO{int i;fori=2;i=90;i++ifisPrimeiisPrimei+4isPrimei+10{cnt++;sum+=i;}运行结果为满足条件的整数的个数=7满足条件的整数的和值=201■[,■],\1,****1**1*—必、]“*!**!*\],***■],*1*1*■[,*!**!*4■q.*T**T**TM*
7.*
7.*T**T**T**T**T**TM*
7、*Tw*Tw Tw*Tw*
7、*7**T»*T**TW*Tw*
7、*
7.*
7.*7**T*rTw«■*Tw*Tw*
7、*Tw rTw*Tw*Tw*Tw*
7、*
7、*7,*T**Tw
4.*T**
7、*
7、*
7、*T**T、*Tw*Tw*
7、*T«rTw☆题目整数统计运算题65已知在文件中存有若干个个数四位数字的正整数,函数读取这若干个正整数并存入数组IN.DAT200ReadDat xx中请编制函数其功能要求.求出这文件中共有多少个正整数;.求这些数中的各位数字之和CalVaIue,1totNum2是奇数的数的个数以及满足此条件的这些数的算术平均值最后调用函数把所求的结果输出到totCnt,totPjz,writeDat文件中OUT.DATvoid CalValuevoid{int i,qw,bw,sw,gw;fori=0;iMAXNUM;i++ifxx[i]0{totNum++;qw=xx[i]/1000;bw=xx[i]/100%10;sw=xx[i]%100/10;gw=xx[i]%10;ifqw+bw+sw+gw%2{totCnt++;totPjz+=xx[i];}iftotCnt==0totPjz=0;else totPjz/=totCnt;*2*4*rjw rjwJWJJW rjrj*rj**Jw*Jw rjw*Jw*Jw rj*rj*Jw JJw rj*JJW rj**J*JJwrj*rjw rj*rj**J*..、彳*★题目素数题66下列程序的功能是计算区间内素数的个数并按所求素数的值从大到小的顺序,再计算其间隔加、progl.c500-800ent,减之和,即第个素数-第个素数+第个素数-第个素数+第个素数…的值请编写函数实现程12345sumo countValue序的要求,最后调用函数把结果和输出到文件中writeDatentsum,OUT
11.DATint isPintm{int i;fori=2;im;i++ifm%i==0return0;return1;}void countValue{int ij,k=l;fori=800;i500;i-ifisPicnt++;sum=sum+k*i;k=k*-l;}*.1**1*.[,.[■*1**1*.1**1*\1**1**1**t**1*\!**1•*1**1*.[■.]■\J**11**1**t*.],*1**,£*■1**L»*1**1**1**1*.],*1*[,•£**1*.]■1**1**1**1*****1*■匕*1**
7、*T**T*•卜•1•*1**7**T**T»•卜*1**7**
7、*T*•[•*1*•]•*7**T**T»*Tw*Tw•1•*T**Tw rTwrT*•[•*7**T*rTw*Tw•卜•1••卜*7**T»•[•*1**Tw,]•*7**T»•[、*1*•[•*T**
7、*7**T*•卜•1•*T**T»*
7、*T*•卜*1*•1••卜题目整数各位数字运算题67下列程序的功能是选出以下符合条件的自然数条件是千位数字及百位数字之和等于十位数字及个位数字5000之和,且千位数字及百位数字之和等于个位数字及千位数字之差的倍计算并输出这些四位自然数的个数以及10ent这些数的和请编写函数实现程序的要求,最后调用函数把结果和输出到文件sum countVahiewriteDatentsum,中OUT
13.DATvoid countValue{int i,thou,him,ten,data;fori=1000;i5000;i++{thou=i/1000;hun=i%1000/100;ten=i%100/10;data=i%10;ifthou+hun==ten+datathou+hun==data-thou*10{cnt++;sum+=i;}}*1**1**1*7,7,7,7,■].7,*1**1**1*7,*.!*■[,*1**1**1**1*KF\].7,■1**1**1**1**1*7,7,*1**1**1*KJ7,
7.
7.*1**1**1**1*7,7,*!**1**1**1**1**!**1**1**1**£**1*7,7,7,*1**1**i**1*7,7,*1**1*1**1*〃、〃、〃、*j***rj*〃、J、*2**7*q、
4、*g*〃、*4**g*〃、q.rj*〃、〃、q、rjw〃、q、
4、〃、*4**g*q.〃、〃、*4*☆题目整数各位数字统计运算题68已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat ajsVal,其功能是如果四位数各位上的数字均是奇数,则统计出满足此条件的个数并把这些四位数按从大到小的顺序存ent入数组中最后函数调用写函数把结果以及数组中符合条件的四位数输出到文b main writeDatent b OUT.DAT件中voidjsVal{int ij,thou hun,ten data;99fori=0;i200;i++{thou=a[i]/1000;hun=a[i]%1000/100;ten=a[i]%100/10;data=a[i]%10;ifthouthou%2hun%2ten%2data%2b[cnt++]=a[i];}fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]b[j]{thou=b[i];b[i]=b[j];b[j]=thou;}}*,•\],*1**!**1**1**1**1**1*■】,L*1**1*■[,*1**1*■],L*■],*1*****!*1**1**1*■],*L**1**1*■1,*1**4*“,*1•\以■[,*.1**1**1*****L**1,*.1**T**T**7**T**T**7**7**T**T**T**T**7**T**T**T**T**T**T**7**T^*T**T*题目整数统计运算题69已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat ajsVal,其功能是把一个四位数的千位数字上的值减去百位数字上的值再减去十位数字上的值最后减去个位数字上的值,如果得出的值大于等于零且原四位数是奇数,则统计出满足此条件的个数并把这些四位数按从小到大的顺序存入数ent组中,最后调用写函数把结果以及数组中符合条件的四位数输出到文件中b writeDatent b OUT.DAT注意部分源程序存在文件中progl.c程序中已定义数组:已定义变量a
[200],b
[200],ent请勿改动数据文件中的任何数据、主函数、读函数和写函数的内容IN.DAT mainreadDat writeDatvoidjsVal{int ijthou hun ten,data;999fori=0;i200;i++{thou=a[i]/1000;hun=a[i]%1000/100;ten=a[i]%100/10;data=a[i]%10;ifthou-hun-ten-data=0a[i]%2b[cnt++]=a[i];fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]b[j]{thou=b[i];b[i]=b[j];b[j]=thou;}■、,・■,・*j*■‘・■・■・*!•»j*•・»j*»j*、!•■・、,、!・、!•■!,■‘,■・j*■!・、!••!・■‘・■]・■!・•‘・、•»j*、!•■・、,»j****、!,■!,■‘,■・j*■!・•!・•‘・•・•・.!•»j*•卜・[、•[、•
1、•.、•.、•卜,卜♦[、
4、•.、•卜,卜・卜*j、•.、•卜•卜・卜♦[、,.、•;、•卜.[、•[、,.、•.、•卜•卜,卜,卜・卜•
1、•.、*y*•卜•卜.卜*j、•.、•;、•卜・[、•[、,.、•.、•卜,卜♦[、题目整数统计运算题70已知在文件中存有若干个个数〈四位数字的正整数,函数读取这若干个正整数并存入数组IN.DAT200ReadDat xx中请编制函数,其功能要求.求出这文件中共有多少个正整数;.求这些数右移位后,Cal Value1totNum21产生的新数是奇数的数的个数以及满足此条件的这些数右移前的值的算术平均值最后调用函数totCnt,totPjz,把所求的结果输出到文件中writeDat OUT.DATvoid jsSort{int ijdata;9fori=0;i199;i++forj=i+l;j200;j++ifaa[i]%1000aa[j]%1000||aa[i]%1000==aa[j]%1000aa[i]aa[j]{data=aa[i];aa[i]=aa[j];aa[j]=data;}fori=0;i10;i++bb[i]=aa[i];■!**1*•1**1*■!**1*■!**1*■!**1*.!**1*■!*■!*•1*■*1*■],■】,■1**1*•*1*■!**1*.!*■*£**1*■!**1*•;••卜•[••卜・卜・••;••[•,】•,】•・卜*T*,卜*T*.[•,;■♦;•,卜,1•,卜*7*e•*•;•,I、,卜・卜・[••;••卜,[•,】•・卜•;•rTW*T»♦卜*T*.I、・[••;•,卜,1•*7*e•*•;•,卜•卜•卜・卜・[••;••卜,】•,】•・卜•;•*T*,卜*1*,I、,;■☆题目正整数排序6在文件中有个正整数,且每个数均在至之间函数读取这个数存放到数组中in.dat20010009999ReadDat200aa请编制函数,其函数的功能是要求按每个数的后三位的大小进行降序排列,然后取出满足此条件的前jsSort10个数依次存入数组中,如果后三位的数值相等,则按原先的数值进行升序排列最后调用函数把结果b WriteDat输出到文件中bb out.dat例处理前90125099601270258088处理后50998088702560129012void jsSort|int ijdata;fori=0;i199;i++forg=i+l;j200;j++ifaa[i]%1000aa[j]%1000||aa[i]%1000==aa[j]%1000aa[i]aa[j]{data=aa[i];aa[i]=aa[j];aa[j]=data;}fori=0;i10;i++bb[i]=aa[i];}*1r*j*1*吗*、L q*.q
7、,r7j,**1*7,7,*1**1*KJ*7q,、*q
1、*q.rj**1**1**£**1*7,*1*7,*1**1**1**1*7*,
1、7,rj**1*q.*1r*j、*q1*、**21***7*吗、qK.!q、乙、乙、q.q、*1*7,7,7,*1**1**!7,7,*■!**1**1**L*☆题目结构体操作题7已知在文件中存有个产品销售记录,每个产品销售记录由产品代码字符型位,产品名称字符IN.DAT100dm4me型位,单价整型,数量整型,金额长整型五部分组成其中金额=单价*数量计算得出函数10dj sije ReadDat是读取这个销售记录并存入结构数组中请编制函数,其功能要求按产品代码从大到小进行排列,100sell SortDat若产品代码相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组中,最后调用函数把结sell WriteDat果输出到文件中OUT
6.DATvoid SortDat{int ij;PRO xy;fori=0;i99;i++forj=i+l;j100;j++ifstrcmpsell[i].dm,sell[j].dmO||strcnipsell[i].dm,sell[j].dm==Osell[i].jesell[j].je{xy=sell[i];sell[i]=sell[j];sell[j]=xy;}KJ^KJ K!*KJ KJ**1KJ*KF*★7**T**T**T**T*★题目字符替换题8函数实现从文件中读取一篇英文文章,存入到字符串数组中;请编制函数按ReadDat ENG.IN xxencryptChar,void CalValuevoid{int idata;9fori=0;iMAXNUM;i++ifxx[i]0{totNum++;data=xx[i]»l;ifdata%2{totCnt++;totPjz+=xx[i];}iftotCnt==0totPjz=0;else totPjz/=totCnt;rjwrjw Jw*Jwrj*rj*rj*rj**Jw Jw*1*r|*rjwrj*rj**J★题目(字符串左右排序题)函数实现从文件中读取行数据存放到字符串数组中(每行71ReadDat in.dat20xx字符串长度均小于)请编制函数()其函数的功能是以行为单位对字符串按给定的条件进行排序,排序80jsSort,后的结果仍按行重新存入字符串数组中,最后调用函数把结果输出到文件中xxWriteDat xxout.dat条件:从字符串中间一分为二,左边部分按字符的值降序排序,右边部分按字符的值升序排序如ASCII ASCII果原字符串长度为奇数,则最中间的字符不参加排序,字符仍放在原位置上例如位置012345678源字符串a b则处理后字符串d cb avoidjsSort{int ijk strlhalf;999char ch;fori=0;i20;i++{strl=strlenxx[i];half=strl/2;forj=0;jhalf-l;j++fork=j+l;khalf;k++ifxx[i][j]xx[i][k]{ch=xx[i][j];xx[i][j]=xx[i][k];xx[i][k]=ch;}ifstrl%2half++;forQ=half;jstrl-l;j++fork=j+l;kstrl;k++ifxx[i][j]xx[i][k]{ch=xx[i][j];xx[i][j]=xx[i][k];xx[i][k]=ch;}*1**!**4***1**1**!•*4**J*4***1**X**1^*4**X*!«•*7**T**T»*7**T*题目(整数各位打散组合运算题)72已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat ajsVal()其功能是把个位数字和千位数字重新组成一个新的十位数(新十位数的十位数字是原四位数的个位数字,新,十位数的个位数字是原四位数的千位数字),以及把百位数字和十位数字组成另一个新的十位数(新十位数的十位数字是原四位数的百位数字,新十位数的个位数字是原四位数的十位数字),如果新组成的两个十位数均是偶数并且两个十位数中至少有一个数能被整除,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺9序存入数组中,并要计算满足上述条件的四位数的个数最后()函数调用写函数把结果以b ontomain writeDatent及数组中符合条件的四位数输出到文件中b OUT.DATvoid jsVal{int ijthou,hun,ten,data ab,cd;99fori=0;i200;i++{thou=a[i]/1000;hun=a[i]/100%10;ten=a[i]%100/10;data=a[i]%10;ab=10*data+thou;cd=10*hun+ten;ifab%9==0||cd%9==0ab%2==0cd%2==0hun!=0data!=0{b[cnt]=a[i];cnt++;}}fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]bO]{data=b[i];b[i]=b[j];bU]=data;}■!*■!**1****■!*\!**2*■!*■!**1**1**1*■!*■!*■!**1****■!*■!**1*■!*■!**1••••卜・[,・[•,卜,[•***•卜*T**x*•卜■[,・[•*1*,】•*1*,卜,[•,1•***•卜*.«•;••卜・[,・[•*1*,】•*7*★题目字符替换题73函数实现从文件中读取一篇英文文章存入到字符串数组中,请编制函数其函数ReadDat IN.DAT xxConverCharD,的功能是以行为单位把字符串中的所有小写字母改写成该字母的上一个字母,如果是字母则改写成字母大写a,zo字母仍为大写字母,小写字母仍为小写字母,其它字符不变最后把已处理的字符串仍按行重新存入字符串数组xx中,最后调用函数把结果输出到文件中writeDat xxOUT
4.DAT例原文:Adb.Bcdzaabck.LLhj结果Aca.Bbcyzzabj.LLgivoid ConvertCharDvoid{int ij;fori=0;imaxline;i++{forj=0;jstrlenxx[i];j++ifxx[i]rj]==*a*xx[i][j]=l l;Zelse ifxx[i][j]=,b,xx[i][j]=,z,xx[i][j]-=l;}•L*1*rTw rTw«•*7*.*J T*■卜*1**T**Tw«•*1**
7、*7**r*T1w•rTw«•*TW«•*Z***7!**r*T*»*r*T1w*«•«•*7*rT*«•*7*rTw«•**1•★题目字符值移位替换题74ASCII函数实现从文件中读取一篇英文文章存入到字符串数组中,请编制函数其函数的功ReadDat IN.DAT xxStrCharJL,能是以行为单位把字符串中的所有字符的值左移位,低位补如果左移后,其字符的值小于等于ASCII40,ASCII32或大于则原字符保持不变,否则就把左移后的字符值再加上原字符值,得到新的字符仍存入原字符100,ASCII ASCII串对应的位置上最后把己处理的字符串仍按行重新存入字符串数组中,最后调用函数把结果输出xx writeDat xx到文件中OUT
7.DATchar xx
[50]
[80];文章的总行数*/int maxline=0;/*int ReadDatvoid;void WriteDatvoid;void StrCharJLvoid{int ij;char c;fori=0;imaxline;i++forj=0;jstrlenxx[i];j++{c=xx[i][j]«4;if!c=32||c100xx[i][j]+=c;}*1**1*■江*1*■!**1**1**1**1**1*■江■£*•1**1*■\以*1**1*■!*■!**X*■■£**1*♦;•♦:、♦[••1••卜・卜•[••,、■;、*T*•卜■卜♦卜•;•,;■♦卜•[•♦卜・卜•;•,;、*»*.T、•卜♦卜♦卜♦;、*.»♦;、♦卜♦卜♦■、■;■♦[、*T*•卜■卜•;••;.♦卜•1•♦卜・卜•;••;••卜•卜♦卜♦;、*.»♦;、♦卜*T*•卜,卜•卜♦,•♦;■♦[、*T*•1•■卜♦卜•;•★☆题目整数各位数运算及排序题75在文件中有组数据,每组有个数,每个数均是三位数函数读取这组数据存放到结构数组in.dat2003ReadDat200中,请编制函数,其函数的功能是要求在组数据中找出条件为每组中的第一个数大于第二个数加第aa jsSort200三个数的和,其中满足条件的组数作为函数的返回值,同时把满足条件的数据存入结构数组中,再对中jsSort bbbb的数据按照每组数据的第一个数加第三个之和的大小进行升序排列第一个数加第三个数的和均不相等,排序后的结果仍重新存入结构数组中,最后调用函数把结果输出到bb writeDatbb文件中out.datint jsSort{int iJ,cnt=0;data xy;fori=0;i200;i++ifaa[i].xlaa[i].x2+aa[i].x3bb[cnt++]=aa[i];fori=0;icnt-l;i++forQ=i+l;jcnt;j++ifbb[i].xl+bb[i].x3bb[j].xl+bb[j].x3{xy=bb[i];bb[i]=bb[j];bb[j]=xy;}return ent;KF*1**7**T**T**7**T**T**T**T*★题目整数各位打散组合运算题76己知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat ajsVal,其功能是把个位数字和千位数字重新组成一个新的十位数新十位数的十位数字是原四位数的个位数字,新十位数的个位数字是原四位数的千位数字,以及把百位数字和十位数字组成另一个新的十位数新十位数的十位数字是原四位数的百位数字,新十位数的个位数字是原四位数的十位数字,如果新组成的两个十位数必须是一个奇数,另一个为偶数并且两个十位数中至少有一个数能被整除,同时两个新数的十位数字均不为零,则将满足此条件的四位数17按从大到小的顺序存入数组中,并要计算满足上述条件的四位数的个数最后函数调用写函数b entmainwriteDat把结果以及数组中符合条件的四位数输出到ent b文件中OUT.DATvoid jsVal{int ijthou,huntendata,abcd;9999fori=0;iMAX;i++{thou=a[i]/1000;hun=a[i]/100%10;ten=a[i]%100/10;data=a[i]%10;ab=10*data+thou;cd=10*hun+ten;ifab%2!=cd%2ab%17==0||cd%17==0ab=10cd=10b[cnt++]=a[i];fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]b[j]{data=b[i];b[i]=bU];b[j]=data;}}*1*%i**i**1*—*£**1*■!**1*■*£*—*1*■*1*•!**1**1*•*£**1*、X*■■!*■!**X*■■£*■£**1^\1*■!**1*■*£*■£*■!*,.、•.•♦[••【••卜♦卜■7••.•♦[••卜•1•,卜,••.••[••卜•[••[•q.•;••卜•卜•卜♦卜«••.••卜•卜•卜♦.•♦[••[•,[•,卜•.••卜•卜•卜q.,.、•;••卜•卜■卜•.、•[••[••卜•卜.[••.、♦[••1•,[•■[,•.••卜•卜•【•★☆题目整数各位运算题77已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat ajsVal,其功能是把一个四位数的千位数字上的值加上十位数字上的值恰好等于百位数字上的值加上个位数字上的值,并且原四位数是偶数,则统计出满足此条件的个数并把这些四位数按从小到大的顺序存入数组中,最后调用写函数ent b把结果以及数组中符合条件的四位数输出到文件中writeDatent b OUT.DATvoid jsVal{int ilthou,him,ten,data;fori=0;iMAX;i++{thou=a[i]/1000;hun=a[i]/100%10;ten=a[i]%100/10;data=a[i]%10;ifthou+ten==hun+dataa[i]%2==0b[cnt++]=a[i];fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]b[j]{thou=b[i];b[i]=bU];b[j]=thou;}.I、,I、〃、*7*^1****^1*
4、K.L卜*V、*2*K.卜1,【、.卜d、〃、*7**1*KJ*
1、
4、
1、1*卜,卜V、
4、
1、卜〃、,】、、
4、K|、K
41、
4、
1、1*^1*KJ K1*1*K£^1*KY
4、K«
1、V、
4、«、★题目整数各位统计排序题78已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat ajsVal,其功能是若一个四位数的千位数字上的值大于等于百位数字上的值,百位数字上的值大于等于十位数字上的值,以及十位数字上的值大于等于个位数字上的值,并且原四位数是奇数,则统计出满足此条件的个数并把这些四位数ent按从小到大的顺序存入数组中,最后调用写函数把结果以及数组中符合条件的数输出到bwriteDatentbOUT.DAT文件中voidjsVal{int ijthou hunten,data;999fori=0;iMAX;i++{thou=a[i]/1000;hun=a[i]/100%10;ten=a[i]%100/10;data=a[i]%10;ifthou=hunhun=tenten=dataa[i]%2b[cnt++]=a[i];fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]b[j]{thou=b[i];b[i]=b[j];b[j]=thou;}***•卜・[、•[、•[、*j、,.、•.、•卜,卜,j、q、•.、•卜,卜・卜,j、•.、•卜•卜・卜♦[、力、,.、•;、•】、•[、,.、•.、•卜•卜•.、•卜,卜・卜,[、•.、•卜•卜,j、*j、•.、•;、•卜,[、•[、,.、•.、•卜•卜•]、★题目数字运算题79请编写函数它的功能是求出到之内能被或整除但不能同时被或整除的voidcountValueint*a,int*n,11000711711所有整数放在数组中,并通过返回这些数的个数a nvoidcountValueint*a,int*n{int i;*11=0;fori=l;i=1000;i++if i%7==0i%ll||i%7i%ll==0a[*n++]=i;}*1**1**1*■!*■!*■!**1**1*—*£*■!*■!**1*■\■!**1*■*£*■!**1**1*—*i*■!*■!**1^—*£*■!**1*—*1*■!**1*■•.••.•♦[••【••卜♦卜■7•♦.•♦[••卜•1•,卜,••.••[••卜•[••卜.1•q.•;••卜•卜•卜♦卜力.•卜•卜•卜,.、•.•♦[••[•,[•,卜,、•.••卜•卜q.,.、•;••卜•卜■卜力.•[••[••卜•卜♦.、♦1•题目整数各位数运算题80已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请编制一函数in.dat300ReadDat ajsValue,其功能是求出个位数上的数减千位数上的数减百位数上的数减十位数上的数大于零的个数再求出所有满足此条ent,件的四位数平均值以及不满足此条件的四位数平均值最后调用写函数把结果输出到文件pjzl,pjz2,writeDat out.dat例如」则该数满足条件计算平均值且个数1239,9-2-30,pjzl,cnt=cnt+l则该数不满足条件计算平均值8129,9-8-1-20,pjz2ojsValue{int iJ,thou,hun,ten,data,n=0;fori=0;i300;i++{thou=a[i]/1000;hun=a[i]/100%10;ten=a[i]%100/10;data=a[i]%10;ifdata-thou-hun-ten0{cnt++;pjzl+=a[i];}else{n++;pjz2+=a[i];}}ifcnt==O pjzl=O;else pjzl/=cnt;ifn==0pjz2=0;else pjz2/=n;}*1r*j1**W*、L*q.q、7,*47*,**1j**7,7,*1**1**1**1*KI**£•K1*7,*1**1**1*KL*7,*1**1*74,、7*1,、■1q、*r*j1**KJ*KL*7,7,*1**1*q.7,q
7、,**
11、*q.KJ*7,7,*■]**1*KJ*KL*☆题目整数各位数运算题81已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请编制一函数in.dat300ReadDat ajsValue,其功能是求出千位数上的数加百位数等于十位数上的数加个位数上的数的个数再求出所有满足此条件的四位数ent,平均值以及不满足此条件的四位数平均值最后调用写函数把结果输出到文件pjzl,pjz2,writeDat out.dat例如则该数满足条件计算平均值且个数则该数不满足条件计算平均值7153,7+1=5+3,pjzl,cnt=cnt+l8129,8+12+9,pjz2jsValue{int i,thou,hun,ten,data,n=0;fori=0;i300;i++{thou=a[i]/1000;hun=a[i]%1000/100;ten=a[i]%100/10;data=a[i]%10;ifthou+hun==ten+data{cnt++;pjzl+=a[i];}else{n++;pjz2+=a[i];}}ifcnt==O pjzl=O;else pjzl/=cnt;ifn==O pjz2=0;else pjz2/=n;*1**1**1*7,7,7,7,*■17,7,7,7,7,*1**1*7,7,7,*1**1**1**1*7,7,7,*1**1**1**1*7,7,7,■1*7,7,7,7,7,*1**£**1*7,7・7,*1**1**L*7,7,*1**1**1*■1*7,7,*1**1**1**1**1*7,7,7,«1*4**1*〃、q.*1*q.
4、q.*j**»*q.*
1、〃、*
1、*1*q.q、q.〃、q.q.q.q.*j**»*q、〃、*4**gw q.q、〃、q.q.q、〃、*j**j*★题目素数题82已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请编制一函数in.dat300ReadDat ajsValue,其功能是求出所有这些四位数是素数的个数再求出所有满足此条件的四位数平均值以及不满足此条件的四ent,pjzl,位数平均值最后调用写函数把结果输出到文件pjz2,writeDat cnt,pjzl,pjz2out.dat例如是素数,则该数满足条件计算平均值且个数5591pjzl,ent=cnt+1是非素数,则该数不满足条件计算平均值9812pjz2int isPintm{int i;fori=2;im;i++ifm%i==0return0;return1;}jsVaIue{int i;fori=0;i300;i++ifisPa[i]{pjzl+=a[i];cnt++;}else pjz2+=a[i];ifcnt==O pjzl=O;else pjzl/=cnt;if300-cnt==0pjz2=0;else pjz2/=300-cnt;■•】,*1**1**1**1**1*7**1**1**£*■!**1**1**1*■■1,■】,*1**1*■1*■!**1**i*■1,7,■!**1*■■!**1*■!**1**!**1*■\】,■】,■!*•】,7,*1*■1*•;■•卜•卜.[••[••;••I、•[••[••卜•[••;•♦[•,卜•】•,卜,卜•;•,;、•;•,卜,[••1••;•*•*•;■,卜•;•,卜*1*.I、•[••[••;•♦1•,卜,】•,卜,卜•;•V、•,卜,[••;•*•*•;■,卜•卜•1••卜•;•,卜•卜.卜•1••[•☆题目方差运算题83请编制函数实现从文件中读取个十进制整数到数组中;请编制函数分别计算ReadDat IN.DAT1000xx Compute出中奇数的个数奇数的平均值偶数的平均值以及所有奇数的方差的值,最后调用函数xx odd,avel,ave2totfc WriteDat把结果输出到文件中OUT.DAT计算方差的公式如下N2totfc=1/N^xx[i]-ave1i=l设为奇数的个数,为奇数,为奇数的平均值Nxx[i]avcl原始数据文件存放的格式是每行存放个数,并用逗号隔开每个数均大于且小于等于1002000/*********编制函数的部分************/ReadDatfori=0;iMAX;i++{fscanffp,H%d;\xx[i];ifi+l%10==0fscanffp;*\nH;void Computevoid{int i,yy[MAX];fori=0;iMAX;i++;yy[i]=ofori=0;iMAX;i++ifxx[i]%2{yy[odd++]=xx[i];avel+=xx[i];}else{even++;ave2+=xx[i];}ifodd==0avel=0;else avel/=odd;ifeven==0ave2=0;else ave2/=even;fori=0;iodd;i++totfc+=yy[i]-avel*yy[i]-avel/odd;}KJ*vj KL*KJ*vl KL*KY〃、
4、.[、■】、V、***
1.
1、■】、〃、*2*.卜,卜•卜•[、〃、
4、«、d、•】、,[、*7*
4、1•[、1*7*«、1〃、,卜*1*☆题目选票问题84现有一个个人行的选票数据文件其数据存放的格式是每条记录的长度均为位,第一位表示第一个10100IN.DAT,10人的选中情况,第二位表示第二个人的选中情况,依此类推内容均为字符和表示此人被选中表示此人未被01,1,0选中,若一张选票人数大于个人时被认为无效的选票给定函数的功能是把选票数据读入到字符串数组5ReadDat中请编制函数来统计每个人的选票数并把得票数依次存入到中把结果输出到文件xx CountRsyy[O]yy
[9]yy中OUT.DATvoid CountRsvoid{int ij,count;fori=0;i100;i++{count=0;forj=0;j10;j++ifxx[i][j]==,rcount++;ifcount5continue;forj=0;j10;j++ifxx[i][j]==,l,yy[j]++;〃、..、,;、•口•卜,卜•】、q、..、..、■卜—卜
4、..、,q・[••卜•】、..、•黄,卜*j、..、•;、,卜,卜*j、,•、,■、,卜,卜*T、*
7、*
7、,♦、,卜•】、..、,q*j、〃、..、,;、,j*•卜,卜,卜..、..、•口•卜q、*j、*j、..、,R☆题目整数各位数运算题85已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat ajsVal,其功能是把一个四位数的个位数字上的值减去千位数字上的值再减去百位数字上的值最后减去十位数字上的值,如果得出的值大于等于零且原四位数是偶数,则统计出满足此条件的个数并把这些四位数按从小到大的顺序存入数ent组中,最后调用写函数把结果以及数组中符合条件的四位数输出到文件中bwriteDatentbOUT.DATvoid jsVal{int ij,thou hun,ten,data;9fori=0;iMAX;i++{thou=a[i]/1000;hun=a[i]/100%10;ten=a[i]%100/10;data=a[i]%10;ifdata-thou-hun-ten=0a[i]%2==0b[cnt++J=a[i];fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]bU]{thou=b[i];b[i]=bU];b[j]=thou;}-J*4K*J r7j,*7,q.7,r7j,*,—JJ、**72,*74,*7,7,7,7,*1**1*q.吗、〃、1*■
1、rj*■
1、,J*—7J,*7q,*7,q
7.,〃*!、*,J■、!,*
17、,*I
2、,j、,J、q*rj*q.,
1、,J、*j*q*〃、■
1、,J*7,7,*1**1**1*7,7,■1**1**1**£**1**!7,*1**1**1**1**1*题目整数各位打散组合运算题86已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat ajsVal,其功能是把千位数字和十位数字重新组成一个新的十位数新十位数的十位数字是原四位数的千位数字,新十位ab数的个位数字是原四位数的十位数字,以及把个位数字和百位数字组成另一个新的十位数新十位数的十位数字cd是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字,如果新组成的两个十位数必须是偶abcd,ab数且能被整除,必须是奇数,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存5cd入数组中,并要计算满足上述条件的四位数的个数最后函数调用写函数把结果以及数组b cntomainwriteDatent中符合条件的四位数输出到文件中bOUT.DATvoid jsVal{int ij,thou,hun,ten,data,ab,cd;fori=0;iMAX;i++{thou=a[i]/1000;hun=a[i]%1000/100;ten=a[i]%100/10;data=a[i]%10;ab=10*thou+ten;cd=10*data+hun;ifab-cd0ab%2!=lab%5==0cd%2==lab=10cd=10{b[cnt]=a[i];cnt++;}fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]b[j]{data=b[i];b[i]=b[j];b[j]=data;}*1**1**1**1*■!*■!**1**1*.!**1**1*•1,7**1*■7,*1*•!*•】,■】,*1**1*■!**1**1*•;■•卜•卜.[••I、•卜‘I、•卜,卜•・、•卜■卜*•*,卜•卜,卜*1*.I、•卜•卜,卜■;、,卜,[•*•*,卜•卜•卜☆题目整数各位运算统计题87已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请编制一函数in.dat300ReadDat ajsValue,其功能是求出千位数上的数加个位数等于百位数上的数加十位数上的数的个数再求出所有满足此条件的四位数ent,平均值以及不满足此条件的四位数平均值最后调用写函数把结果输出到文件pjzl,pjz2,out.dat例如则该数满足条件计算平均值且个数则该数不满足条件计算平均6712,6+2=7+1,pjzl,cnt=cnt+l8129,8+91+2,值pjz2ojsValue{int i,gw,sw,bw,qw,cnt2=0;fori=0;i300;i++{gw=a[i]%10;sw=a[i]/10%10;bw=a[i]/100%10;qw=a[i]/1000;ifqw+gw==sw+bw{cnt++;pjzl+=a[i];}else{cnt2++;pjz2+=a[i];}ifcnt==O pjzl=O;else pjzl/=cnt;ifcnt2==0pjz2=0;else pjz2/=cnt2;*2^*2^*1^*1**3^*2^*5**1*ri**Jw rj*rj*rj**Jwr|**T**Jw*Jw rj*/J*rj**1*ej*Jw*1**Jw*Jw题目字符串排序题88函数实现从文件中读取一篇英文文章存入到字符串数组中,请编制函数其函数的ReadDat IN.DAT xxSortCharA,功能是以行为单位对字符按从小到大的顺序进行排序,排序后的结果仍按行重新存入字符串数组中,最后调用xx函数把结果输出到文件中writeDat xxOUT
1.DAT例原文dAe,BfC.CCbbAA结果,.ABCdef AACCbbvoidSortCharAvoid{int ijk strl;99char ch;fori=0;imaxline;i++{strl=strlenxx[i];forj=0;jstrl-l;j++fork=j+l;kstrl;k++ifxx[i]U]xx[i][k]{ch=xx[i][j];xx[i][j]=xx[i][k];xx[i][k]=ch;}题目整数统计排序题89已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat ajsVal,其功能是把一个四位数的千位数字上的值加上个位数字上的值恰好等于百位数字上的值加上十位数字上的值,并且原四位数是奇数,则统计出满足此条件的个数并把这些四位数按从小到大的顺序存入数组中,最后调用写函数entb把结果以及数组中符合条件的四位数输出到文件中writeDatentbOUT.DATvoid jsValint ij,gw,sw,bw,qw;fori=0;iMAX;i++{gw=a[i]%10;sw=a[i]/10%10;bw=a[i]/100%10;qw=a[i]/1000;ifq w+g w==s w+bwa[i]%2b[cnt++]=a[i];fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]b[j]{qw=b[i];b[i]=b[j];b[j]=qw;}KJ KJ**1KJ**L**T**T**T**T**T**T**T*★题目整数排序题90下列程序的功能是将一正整数序列重新排列成一个新的序列新序列中,比小的数都在{KI,K2,…,K9}K1K1的前面左面,比大的数都在的后面右面要求编写函数实现此功能,最后调用函数K1K1jsVakie writeDat将新序列输出到文件中out.dat说明在程序中已给出了个序列,每个序列有个正整数,并存入数组中,分别求出这个新序列109a
[10]
[9]10例序歹U{6,8,9,1,2,547,3}经重排后成为{3,4,52168,9,7jsValueint a
[10]
[9]{int i,j,k,val,num;fori=0;i10;i++{val=a[i]
[0];forj=0;j9;j++ifa[i]U]val{num=a[i][j];fork=j;k0;k-a[i][k]=a[i][k-l];a[i]r01=num;}}*1*****!*1**1*■],*.1**1**1*****L**.1**1**7**T**7**T**1**T»*T**T**7**T**T**7**7**T**T**T**T**T**T**T**7*题目整数统计运算题91请编制程序从文件中读取个整数至数组中,求出奇数的个数和偶数的个数以及数组progl.c,in.dat200xx cntl cnt2xx下标为偶数的元素值的算术平均值保留位小数pj2sum=0;pj=O.O;cntl=cnt2=0;fori=0;iN;i++{ifxx[i]%2cntl++;else cnt2++;ifi%2==0{pj+=xx[i];sum++;}pj/=sum;si*KJ*KJ^KJ*KJ^ri*1*rrw rTwri*ri*ri rj*rr*ri*T*1*ri**5***1**7^Jw rjwT*☆题目整数统计运算题92请编制程序从文件中读取个整数至数组中,求出最大数及最大数的个数和数组中progl.c,IN.DAT200xx maxent xx能被整除或能被整除的算术平均值保留位小数37pj2cnt=0;max=xx
[0];pj=O.O;n=0;form=0;mN;m++ifmaxxx[m]max=xx[m];form=0;mN;m++{ifxx[m]==max cnt++;ifxx[m]%3==0||xx[m]%7==0{pj+=xx[m];n++;}};Pj/=n—1**1*■!*•!**1**1*—■!*•!**1**1**1*■£*■£*■1*■!**1*■!*■■£**1*■!*•!**1*■!**£*■!*■!*■*£*■!*•!**1**1**1*■■1*■!*•!**1*■1*—■£*■1**1**1*■*i**1*■1*■!**1*•*1*■!*•!*■!**1*—■!*■!*•!*给定的替代关系对数组中的所有字符进行XXj、•.、•[■•卜・卜j、•.、•.、•[••卜•卜q.•.、•[••卜•卜•卜
4、•.•・[••卜•卜・卜.j、*j、,.••[■•卜・1•q、,.、•.、•[••卜•卜q.q.•.、•卜•卜•卜
4、•.•・[••卜・卜■[、*j、•.••,、•卜•卜・卜
4、•.、•卜•卜,.、・[••卜・卜替代,仍存入数组的对应的位置上,最后调用函数把结果输出到文件中XX WriteDatOxx PS
1.DAT替代关系是数组中某一个字符的值,是计算后新字符的值,如果计算后fpp*ll mod256p ASCIIfp ASCIIfp值小于等于或大于则该字符不变,否则将所对应的字符进行替代注意中间变量用无符号整型,部分32130,fp源程序存在文件中原始数据文件存放的格式是每行的宽度均小于个字符progl.c80voidencryptChar{int i,j;fori=0;imaxline;i++forj=0;jstrlenxx[i];j++ifxx[i][j]*n%256=32||xx[i][j]*ll%256130continue;else xx[i][j]=xx[i][j]*ll%256;KJ^^1*KA*KL*K1K
14、
4、.卜.[、*4**7****^1*、•卜.[、****1*
4、.卜.卜***,卜«、•1*
4、*4**4*
4、
4、,I、,卜*4**1****■卜〃、*4**1*«、
4、
4、.卜Y、、.[、«、*4**4**1*.卜«、★☆题目字符串排序题9函数实现从文件中读取一篇英文文章存入到字符串数组中,请编制函数其函数的ReadDat IN.DAT xxSortCharD,功能是以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组中,最后调用xx函数把结果输出到文件中writeDat xxOUT
2.DAT例原文dAe,BfC.CCbbAA结果fedCBA.bbCCAAvoid SortCharDvoid{int ij,k,strl;char ch;fori=0;imaxline;i++{strl=strlenxx[i];for Q=0;j strl-1;j++fork=j+l;kstrl;k++ifxx[i][j]xx[i][k]{ch=xx[i][j];xx[i][j]=xx[i][k];xx[i][k]=ch;}vl*K1K1*1*^1*KI*K1K!KJ*^1*K!K1KJ KL*KI K1K
11、,I、,卜*7*卜I、
1、*4*,卜
1、*4**3^***]、*4**1****7*,卜.卜
1、*1****[、1,I、
1、***
1、7*,]、,卜?、*1*•卜卜,卜★☆题目替换字符题10函数实现从文件中读取一篇英文文章存入到字符串数组中,请编制函数其函ReadDatO IN.DAT XXConvertCharA,数的功能是以行为单位把字符串中的所有小写字母改写成该字母的下一个字母,如果是字母则改写成字母大写z,ao字母仍为大写字母,小写字母仍为小写字母,其他字符不变把已处理的字符串仍按行重新存入字符串数组中,xx最后调用函数把结果输出到文件中writeDat xxOUTLDAT例原文:Adb.Bcdzaabck.LLhj结果:Aec.Bdeabbcdl.LLikvoid ConvertCharAvoid{int ij;fori=0;imaxline;i++{for0=O;jstrlenxx[i];j++☆题目方差运算题93请编制函数实现从文件中读取个十进制整数到数组中;请编制函数分别计算ReadDat IN.DAT1000xx Compute,出中奇数的个数偶数的个数平均值以及方差的值,最后调用函数把结果输出到xx odd,even,aver totfcWriteDat文件中OUT.DAT计算方差的公式如下N2totfc=1/N^xx[i]-aver i=l原始数据文件存放的格式是每行存放个数,并用逗号隔开每个数均大于且小于等于102000/***************编制函数*****************/ReadDatfori=0;iMAX;i++{fscanffpj%dj,xx[i];ifi+l%10==0fscanffp/*\nH;•,、void Computevoid{int i;fori=0;iMAX;i++{ifxx[i]%2odd++;else even++;aver+=xx[i];aver/=MAX;fori=0;iMAX;i++totfc+=xx[i]-aver*xx[i]-aver;totfc/=MAX;*1**1**1**.£**1**L»*!**1**1**L»*L»*!**T**1**1**1**T**T**T*^T**T**T**T**7**T**T**T**T**T**T**T**T**T*题目整数统计运算题94请编制程序从文件中读取个整数至数组中,求出奇数的个数和偶数的个数以及数组progl.c,in.dat200xx cntlcnt2xx中值为偶数的算术平均值保留位小数pj2结果输出至中cntl,cnt2,pj Uout.datcntl=0;cnt2=0;pj=O.O;form=0;mN;m++ifxx[m]%2cntl++;else{cnt2++;pj+=xx[m];}ifcnt2==0pj=O;else pj/=cnt2;*1*■!*\X**1**X*,.、•[••卜・[、•[、•
1、•.、•.、•[••卜,卜♦[、q、•.、•卜,卜・卜,卜•.、,A•卜•卜・卜♦[、力、,.、•;、•[••】、•[、*j、,.、•.、•[••卜•卜,1•*j、•.、,A•卜,卜・卜,[、•.、•/•卜•卜,j、*j、•.、•;、•[••卜,[、•[、,.、•.、•[••卜•卜*j、*j、•.、,A•1■,卜☆题目字符替换题95函数实现从文件中读取一篇英文文章,存入到字符串数组中;请编制函数按给定ReadDat ENG.IN xxencryptChar,的替代关系对数组中的所有字符进行替代,仍存入数组的对应的位置上,最后调用函数把结果xx xxWriteDatxx输出到文件中PS
4.DA替代关系是数组中某一个字符的值,是计算后新字符的值,如果fp=p*ll mod256p ASCIIfp ASCII计算后值小于等于或对应的字符是大写字母,则该字符不变,否则将所对应的字符进行替代fp32fp fpvoid encryptChar{int ij;fori=0;imaxline;i++forj=0;jstrlenxx[i];j++ifxx[i][j]*U%256V=32||xx[i][j]*U%256=Axx[i][j]*ll%256V=Z continue;else xx[i][j]=xx[i][j]*ll%256;}*£**1*■!**1**£**1*■!*■!**1**1**X*■*£**1*♦:、♦[••1••卜・卜•,、■;、*T*•卜■卜♦卜•;•,;■♦卜•[•♦卜・卜,;、*»*.T、•卜♦卜♦卜♦;、*.»♦;、♦卜♦卜♦■、■;■♦[、*T*•卜■卜•;••;.♦卜•1•♦卜・卜•;••卜•卜♦卜♦;、*.»♦;、♦卜*T*•卜,卜•卜♦;■♦[、*T*•1•■卜♦卜☆题目字符替换题96函数实现从文件中读取一篇英文文章,存入到字符串数组中;请编制函数按给定ReadDat ENG.IN xxencryptChar,的替代关系对数组中的所有字符进行替代,仍存入数组的对应的位置上,最后调用函数把结果xx xxWriteDatxx输出到文件中PS
5.DAT替代关系是数组中某一个字符的值,是计算后新字符的值,如果原字符是fp=p*llmod256p ASCHfp ASCII小写字母或计算后值小于等于则该字符不变,否则将所对应的字符进行替代fp32,fpvoid encryptChar{int ij;fori=0;imaxline;i++forj=0;jstrlenxx[i];j+4-ifxx[i][j]*ll%256=32||xx[i][j]=,a,xx[i][j]=,z,continue;else xx[i][j]=xx[i][j]*ll%256;}\如*.L»*!**.1**1**1*****1*■£**1**1**t*■],*.!**4**1**!**1**1**4**1*****4**1**.!**.1*KL**t*■],*.!**1**T**1**T**7**T**T**T*ri**T**T**T**7**7**T**7**T**7**T**T**7**T*rT*★题目字符替换题97函数实现从文件中读取一篇英文文章,存入到字符串数组中;请编制函数按给定ReadDat ENG.IN xxencryptChar,的替代关系对数组中的所有字符进行替代,仍存入数组的对应的位置上,最后调用函数把结果输xx xxWriteDatxx出到文件中PS
9.DAT替代关系是数组中某一个字符的值,是计算后新字符的值,如果原字符是fp=p*ll mod256p ASCIIfp ASCII数字字符至或计算后值小于等于则该字符不变,否则将所对应的字符进行替代9fp32,fpvoidencryptChar{int ij;fori=0;imaxline;i++forj=0;jstrlenxx[i];j++ifxx[i][j]*ll%256=32||xx[i][j]=,0,xx[i][j]=,9,continue;else xx[i][j]=xx[i][j]*ll%256;*1**!**4***1**1**!•*4**4***1**X**4**X*!«•*T**7**T**1^*T**7**T**7**T**T**T*★题目字符替题98函数实现从文件中读取一篇英文文章,存入到字符串数组中;请编制函数按ReadDat ENG.INxxencryptChar,给定的替代关系对数组中的所有字符进行替代,仍存入数组的对应的位置上,最后调用函数把结果xx xxWriteDat输出到文件中xx PS
3.DAT替代关系是数组中某一个字符的值,是计算后新字符的值,如果计算后fpp*17mod256p ASCIIfp ASCII值小于等于或其值是奇数,则该字符不变,否则将所对应的字符进行替代fp32ASCII fpvoidencryptChar{int i,j;fori=0;imaxline;i++forj=0;jstrlenxx[i];j++ifxx[i][j]*17%256=32||xx[i][j]^17%256%2!=0continue;else xx[i][j]=xx[i][j]*17%256;*1^*2^*2^*1^r|*rj**5*rj**1**T**T**T**T*rj*rj*rj*r|**J**T*rj**T*rj*rj*ri**T*rp*rj**1*题目结构体排列题99已知在文件中存有个产品销售记录,每个产品销售记录由产品代码字符型位,产品名称字符IN.DAT100dm4me型位,单价整型,数量整型,金额长整型五部分组成其中金额=单价*数量计算得出函数10dj sije ReadDat是读取这个销售记录并存入结构数组中请编制函数其功能要求按金额从小到大进行排列,若金100sell SortDat,额相等,则按产品代码从小到大进行排列,最终排列结果仍存入结构数组中,最后调用函数把结果输sell WriteDat出到文件中OUTLDATvoid SortDat{int ij;PRO xy;fori=0;i99;i++forj=i+l;j100;j++ifsell[i].jesell[j].je||selI[i].je==sell[j].jestrcmpselI[i].dm,sell[j].dmO{xy=sell[i];sell[i]=sell[j];sell[j]=xy;}K1**1*vl*KA*^1**1**£**1*K£*KJ*KJ,;、q、q、•[、•[、•
1、•卜.;、..、•[、•[、•卜•卜.;、W.乙、•[、•]、•]、■卜.卜..、q.•;、•[、•[、•卜•卜,;、、rj、•『,卜.卜?、、q、X,4•[、J、rT*、•]、•[、,卜rj、*7*、,[、•卜7*rr*rr*、[、•[、•[、J、rl*•卜•[、?、q、★☆题目字符替换题100函数实现从文件中读取一篇英文文章存入到字符串数组中,请编制函数,其函数ReadDatO IN.DAT xxCharConvA的功能是以行为单位把字符串中的最后一个字符的值右移位,高位补后加最后第二个字符的值,ASCII40ASCII得到最后一个新的字符,最后第二个字符的值右移位,高位补后加最后第三个字符的值,得到最后ASCII40ASCII第二个新的字符,依此类推一直处理到第二个字符,第一个字符的值加原最后一个字符的值,得到第一ASCII ASCII个新的字符,得到的新字符分别存放在原字符串对应的位置上最后已处理的字符串仍按行重新存入字符串数组xx中,最后调用函数把结果输出到文件中writeDatxxOUT
10.DATvoid CharConvA{int i,j;char p,c;fori=0;imaxline;i++{p=xx[i][strlenxx[i]-l];c=xx[i]
[0];forj=strlenxx[i]-l;j0;j-xx[i]U]=xx[i]U]»4+xx[i][j-l];xx[i]
[0]=p+c;ifxx[i][j]==tz,xx[i][j]=,a,;else ifxx[i][j]=,a,xx[i][j]=,y,xx[i][j]+=l;}*7**T**T**T**T**T**7**Tw*Tw*7**T**X**T**Tw■,,•“■1,■],■1,■].U,■*,T,w■*,T,*■*,T,*■*]T”**T•w,,W、\[*,TU*,」«•,■*7],*■[,■,,■[,■],■],■,*■T*一,«•,■*,T*,■】■■*7】*“**T1***■T,*,*•T1w,\*[T■«■】*T,»*!.*T**1,*■T[*,■*7]*,■*[T,»-,,*£««•*T**T**Tw*7*☆题目字符串字母移位题11程序的功能是把字符串中的所有字母改写成该字母的下一个字母,字母改写成字母要求大写字母仍progl.c sz a为大写字母,小写字母仍为小写字母,其它字符不做改变请考生编写函数实现程序要求,最后调用函数把结果输出到文件中chgchar*s readwriteDATbcl.out例如字符串中原有的内容为则调用该函数后,结果为s Mn.l23Zxy,No.l23Ayzovoid chgchar*s{int I;forI=0;Istrlens;I++if s[i]==**||s[i]==,Z,s[i]-=25;zelseifs[i]=,a,s[i]=,y,||s[i]=,A,s[i]=,Y,s[i]+=l;☆1**1**1*7,7,7,7,*■1*1*7,7,7,*1**1**1**1*7,7,7,■1**1*7,7,7,*1**1**1*7,7,*1^*1**1*7,7,7,*1**1**1*7,7,7,*1**1**1**1*7,7,7,*1**i**1**1*7,7,7,*1**1**1**1*7,7,7,*1**1**1**1*7,7,7,〃、/j、*7*吗、〃、〃、■
1、*
1、*7*q*〃、■{、,j、*2**i*q*〃、,i、〃、*4*/j、、〃、〃、■!、■!、“J**7*q*j*〃、〃、,j、*2*〃、n、*4*〃、♦
1、*j*q*q*〃、,j、,j、,j**4*■
1、〃、*1*☆☆题目结构体运算题题12已知在文件中存有个产品销售记录,每个产品销售记录由产品代码字符型位,产品名称字符IN.DAT100dm4me型位,单价整型,数量整型,金额长整型五部分组成其中金额=单价*数量计算得出函数10dj sije ReadDat是读取这个销售记录并存入结构数组中请编制函数,其功能要求100sell SortDat按产品名称从小到大进行排列,若产品名称相等,则按金额从小到大进行排列,最终排列结果仍存入结构数组中,sellvoid SortDat{int ij;PRO xy;fori=0;i99;i++forO=i+l;j100;j++ifstrcmpsell[i].mc,sell[jl.mcO||strcmpsell[i].mc,sell[j].mc==Oseliri].jesell[j].je{xy=sell[i];sell[i]=sell[j];sell[j]=xy;}*!**1^*1**1**4**;!•*4**;!•*.!**L»*1**L**!*X*KI**X»•.!**•*1*L**.1**X»*4**T**T**7**T**T*^T**T*题目结构体运算题13已知在文件中存有个产品销售记录,每个产品销售记录由产品代码字符型位,产品名称字符IN.DAT100dm4me型位,单价整型,数量整型,金额长整型五部分组成其中金额=单价*数量计算得出函数10dj sije ReadDat是读取这个销售记录并存入结构数组中请编制函数其功能100sell SortDat,要求按产品代码从小到大进行排列,若产品代码相等,则按金额从大到小进行排列,最终排列结果仍存入结构数组中,最后调用函数把结果输出到文件中sell WritcDatOUT
9.DATvoid SortDat{int ij;PRO xy;fori=0;i99;i++forQ=i+l;j100;j++ifstrcmpsell[i].dm,sell[j].dmO||strcmpsell[i].dm,sell[j].dm==Osell[i].jesell[j].je{xy=sell[i];sell[i]=sell[j];sell[j]=xy;}}KL*7,7,*1*7,
7.*.!**1*7,7,■!*7,7,7,K1*7,*1*-!*K**KJ^7,7,.1**1**1**K|7,7,■!**i K*KJ7,7,KJKL*K1*7,7,*1*-!**1*K1*7,7,*1**1**1Krj*«、*1**4**!*«、〃、*4*4^*4**j*«、J*«、*J、^4*〃、*4*«、*4**2**4**4*«、«、«、4*4^*4**j*«、J*Y、*4**1**4*«、«、*4**4**2**1**4*«、^4*4*rj*«、★☆题目整数统计排序题14已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat a其功能是依次从数组中取出一个四位数,如果该四位数连续大于该四位数以后的五个数且该数是奇数该jsVal,a四位数以后不满五个数,则不统计,则统计出满足此条件的个数并把这些四位数按从小到大的顺序存入数组entb中,最后调用写函数把结果以及数组中符合条件的四位数输出到文件中writeDatentbOUT.DAT voidjsVal{int ij,flag;fori=0;iMAX-5;i++{forj=i+l;j=i+5;j++ifa[i]a[j]flag=l;else{flag=O;break;}ifflag==l b[cnt++]=a[i];}fori=0;icnt-l;i++forj=i+l;jcnt;j++ifb[i]b[j]{flag=b[i];b[i]=bU];b[j]=flag;}}■!**1**1**1*•!**1**1**1**!*\1**1*■!**1**1*\!*■!**1****■£*■!*■!**1**1*■!**1**!*■!*■!**1*■!**£*■!**1*****1*■!**1**1*•;••;■•[、•1••卜♦卜♦卜•,■■;、•】、■卜♦卜*7*•;•,;•♦[•,卜1*■卜•;•,;、•卜•卜,[■♦卜*.*•卜•
1、•卜♦卜•,•‘;•,I、•[■■卜♦1•,;•,;、***,卜*1*■卜•;•,;、•卜•卜,[■•;、•・、•;••卜•[•♦卜♦卜•卜•,■,;■,】•■
1、*1*★题目整数各位数字运算排序题15已知数据文件中存有个四位数,并已调用读函数把这些数存入数组中,请考生编制一函数IN.DAT200readDat a其功能是若一个四位数的千位数字上的值小于等于百位数字上的值,百位数字上的值小于等于十位数字上jsVal,的值,以及十位数字上的值小于等于个位数字上的值,并且原四位数是偶数,则统计出满足此条件的个数并把这ent些四位数按从小到大的顺序存入数组中,最后调用写函数把结果以及数组中符合条件的四位数输bwriteDatentb出到文件中OUT.DATvoid jsVal{int ij;int qw,bw,sw,gw;for i=0;iMAX;i++{qw=a[i]/1000;bw=a[i]%1000/100;sw=a[i]%100/10;gw=a[i]%10;ifqw=bwbw=swsw=gwa[i]%2==0b[cnt++]=a[i];fori=0;icnt-l;i++forj=i+l;jcnt;j++if b[i]b[j]{qw=b[i];b[i]=b[j];b[j]=qw;}}*.1•*1**1**1**1**1•1*\L*1**1**!**1•*1*•!**1**1**.1•*.1•*;!•*1**1*•.!•*1**1**1•*1*\上•1**1**1**»!•*.1••£*;!••!**7**»*
4、*T*«•*T*•*7**T*、«•*T、«•*T**7*«、«•*T**7**T*、«•*T**
1、*
1、«•*T**7**7**T*«•
4、*T**7*«、«•*4**T**7**T*、«■*!•*7*•*
1、*T、★☆题目字符替换题16函数实现从文件中读取一篇英文文章存入到字符串数组中,请编制函数其函数的ReadDat IN.DAT xxStrCharJR,功能是以行为单位把字符串中所有字符的值右移位,然后把右移后的字符值再加上原字符的ASCII4ASCII ASCII值,得到新的字符仍存入原字符串对应的位置上最后把己处理的字符串仍按行重新存入字符串数组中,最后调xx用函数把结果输出到文件中writeDatxxOUT
8.DATvoid StrCharJRO{int ij;fori=0;imaxline;i++forj=0;jstrlenxx[i];j++右移四位的表达方式}xx[i][j]+=xx[i][j]»4;*1**!**i*■!*■!*■!**1**1*—*£**1**1**1*■*2^*1^*1*••£*■£**1^■■£**1*■!*\1**1*■1*,.、•.•♦[••【••卜♦卜■7••.•♦[••卜•1•,卜,••.••[••卜•[••[•q.•;••卜•卜•卜♦卜«••.••卜•卜•卜♦.•♦[••[•,[•,卜•.••卜•卜•卜q.,.、•;••卜•卜■卜•.、•[••[••卜•卜.[••.、♦[••1•,[•☆题目亲朋字符替换题17函数实现从文件中读取一篇英文文章存入到字符串数组中;请编制函数其函数功能READDATIN.DAT XXCHA,是:以行为单位把字符串中的第一个字符的值加第二个字符的值,得到第一个亲朋字符,第二个字符的ASCII ASCII值加第三个字符的值,得到第二个新字符,依此类推一直处理到最后第二个字符,最后一个字符的ASCII ASCIIASCII值加原第一个字符的值,得到最后一个新的字符,得到的新字符分别存放在原字符串对应的位置上最后把ASCII已处理的字符串逆转后按行重新存入字符串数组中,最后调用函数把结果输出到文件XX WRITEDATOXX中.原始数据文件存放的格式是:每行的宽度均小于个字符,含标点符号和空格.0UT
9.DAT80void ChAvoid{int i,j;char ch;fori=0;imaxline;i++{ch=xx[i]
[0];forG=0;jstrlenxx[i]-l;j++xx[i][j]+=xx[i][j+l];xx[i][strlenxx[i]-l]+=ch;strrevxx[i];}\如*.L»*!**.1**1**1*****1*■£**1**1**t*■],*.!**4**1**!**1**1**4**1*****4**1**.!**.1*KL**t*■],*.!**1**!**.1**1**T**T**7**T**7**7**T**T»*7**T*☆题目18函数实现从文件中读取一篇英文文章,存入到字符串数组中;请编制函数按给ReadDat ENGINxxencryptChar,定的替代关系对数组中的所有字符进行替代,仍存入数组的对应的位置上,最后调用函数把结果xx xxWriteDat输出到文件中xx PS
10.DAT替代关系是数组中某一个字符的值,是计算后新字符的值,如果原字符fpp*ll mod256p ASCIIfp ASCH的值是偶数或计算后值小于等于则该字符不变,否则将所对应的字符进行替代ASCIIfp32,fpvoidencryptChar{int ij;fori=0;imaxline;i++forj=0;jstrlenxx[i];j++ifxx[i][j]*ll%256=32||xx[i][j]%2==0continue;else xx[i][j]=xx[i][j]^ll%256;*7**»*
4、*T*«•1**T**.•1•*7**T*•£、*«•*1**7-•*T**T、«•*T***17***!
7、**T**7*«、«•**T1***.1•**.71*•*T*、«•*T*•**11*、*•
11、*«•**1T***7**7**T*«•
4、*T**7*«、«•*4**T**7**T*、«■*!•*7*•*
1、*T、«•*T*☆题目单词个数统计题19编写一个函数该函数统计一个长度为的子字符串在另一个字符串中出现的次数例如,findStrchar*str,char*substr,2假定输入的字符串为,子字符串为“,函数返回值是表明了返回值是整数asd asasdfgasd aszx67asd mklo”as”6型函数实现从文件中读取两个字符串,并调用函数最后把结果输出到文件中ReadWrite in.dat findStr,out.datint findStrchar*str,char*substr{int i,j,lenlJen2,cnt=0,flag;lenl=strlenstr;len2=strlensubstr;fori=0;ilenl;i++{forj=0;jlen2;j++ifstr[i+j]==substr[j]flag=l;else{flag=O;break;}ifflag==lcnt++;return ent;KA KA*KL«K1K1K1K1K1■■
1、〃、^1*
4、,I、«、*4*rTw
4、
4、...卜.卜.卜d、*7*
4、
4、.卜«、.卜.卜
4、.卜.卜,卜7*7*
4、.卜T*.卜.卜〃、***rw★题目数列题20Fibonacci编写函数它的功能是求数列中大于的最小的一个数,结果由函数返回其中数列jsValue,Fibonacci tFibonacci Fn的定义为F0=0,Fl=lFn=Fn-l+Fn-2最后调用函数读取个数据分别得出结果且把结果输出到文件中writeDat50t,out.dat例如当时,函数值为t=10001597int jsValueintt{int f0=0,n=l,fn;fn=fO+fl;whilefn=t{fO=fl;fl=fn;fn=fO+H;return fn;K1KJKJ*K1KJKJ KIK1K1KJ*«J K1KIK1K1*KL*KI K1K1KJ^^1*K1KIK1K!K17^^7^
7.卜,J、1*[、*1*
1、*
1.卜.卜.卜1*]、..,卜
1、*1*,卜?、*7****]、I、,卜
1、7*
1、’
1、*1*.卜*T*Y、■「I、☆题目迭代方法求方程题21下列程序的功能是利用以下所示的简单迭代方法求方程:的一个实根progl.c cosx-x=0Xn+l=cosXn迭代步骤如下取初值为;1XI
0.0把的值赋给;2XO=X1,XI X0求出一个新的;3Xl=cosX0,XI若的绝对值小于执行步骤否则执行步骤;4X0-X
10.000001,5,2⑸所求就是方程的一个实根,作为函数值返回XI cosX-X=0请编写函数实现程序的要求,最后调用函数把结果输出到文件中countValuewriteDatOUT
17.DATfloat countValue{float x0,xl;xl=
0.0;do{xO=xl;xl=cosxO;}whilefabsx0-xl=
0.000001;return xl;注本题在无忧或捷成模拟盘中,需定义才能通过,据实际上机抽到该题的考生反映,实际上机需按double xO,xl;上面解法的定义方能通过,特此说明,供参考KJ KJKJ*K!KJ^K1*K|K!KFKT K1*K!〃、*1****〃、r*〃、
4、1**
1、*7****«、1*1«、〃、r,]、,
1、1*r r*^r*2**r★题目平方根问题22请编写函数,它的功能是求以内不包括同时能被及整除的所有自然数之和的平方根并作countValue nn37s,为函数值返回,最后结果输出到文件中s outdat例如若为时,函数值应为n1000s=
153.909064odouble countValueintn{int i;double s=
0.0;fori=l;in;i++ifi%21==0s+=i;return sqrts;}■!**1**1**1*•!**1**1**!*•\1**1*■!**1**1*\!*■!**1****■£*■!*■!**1*—*1*■!**1**!*•■!*■!**1*■!**£*■!**1****•£*■£*■1**1*■!**1**1*•;••;■•[、•1••卜♦卜♦卜•,■■;、•1••】、■卜♦卜*7*•;•,;•♦[•,卜1*■卜•;•,;、•卜•卜,[■♦卜•;•*.*•卜•
1、•卜♦卜•,•‘;••】•,I、•[■■卜♦1•,;•,;、***,卜*1*■卜•;•,;、•卜•卜,[■•;、•・、•;••卜•[•♦卜♦卜•卜•,■,;■,】•■
1、*1*题目实数运算题23已知在文件中存有个个数实数,函数读取这个实数并存入数组中请编制函数in.dat N200readdat Nxx calvalue,其功能要求求出这个实数的平均值;
1.N aver、分别求出这个实数的整数部分之和以及小数部分之和最后调用函数把所求的结果输出2N sumintsumdec,writedat到文件中out.dat注意部分源程序已给出void CalValuevoid{inti;for i=0;iN;i++{sumint+=longxx[i];sumdec+=xx[i]-longxx[i];aver+=xx[i];aver/=N;}«£K|KIKVKK!KIKI7,7,7,*1*V K17,7,^1*K*K1*K|7,7,7,*1*7,7,*1*\!*K£K1K|rj*«、*2**4*〃、q、5*«、rjwrj*/、rj、rj**2**4**4**4**2**4**|、
4、«、rj*/、«、rj**2**4**4**4*题目完全平方数问题24下列程序的功能是在三位整数至中寻找符合条件的整数并依次从小到大存入数组中;它既progl.c100999是完全平方数,又是两位数字相同,例如等
144.676请编制函数实现此功能,满足该条件的整数的个数通过所编制的函数返回int jsValueintbb[]{int iJ,k=O;int him,ten,data;。
个人认证
优秀文档
获得点赞 0