资源描述
全国计算机三级考试上机题库题目1:下列程序的功能是:将大于整数m且紧靠m的k个素数存入数组xxo请编写函数num(int m,int k,int xx)实现函数的要求,最后调用函数readwriteDAT。把结果输出到文件out.dat中。标准答案*/int data=m+1;int half,n=O,I;while(l)half=data/2;for(I=2;Ihalf)xxn=data;n+;if(n=k)break;data+;)题目2:已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a 中,请考生编制一函数jsVal(),其功能是:如果四位数各位上的数字均是。或 2或 4 或 6 或 8,则统计出满足此条件的个数ent,并把这些四位数按从大到小的顺序存入数组b 中。最后main()函数调用写函数writeDat()把结果ent以及数组b 中符合条件的四位数输出到OUT.DAT文件中。void jsVal()/*标准答案*/int bb4;int I,j,k,flag;for(I=0;I200;I+)bb0=aI/1000;bbl=aI%1000/100;bb2=aI%100/10;bb3=aI%10;for(j=0;j4;j+)if(bbj%2=0)flag=l;elseflag=0;break;)if(flag=l)bcnt=aI;cnt+;for(I=0;ICNT-l;I+)for(j=I+l;jCNT;J+)if(bIBJ)k=bI;bI=bj;bj=k;题目3:函数READDAT()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组X X中;请编制函数STROR(),其函数功能是:以行为单位把字符串中的所有小写字 母O左边的字符串内容移到该串的右边存放,然后并把小写字母O删除,余下的字符串内容移到已处理字符串的左边存放.最后把已处理的字符串仍按行重新存入字符串数组XX中,最后调用函数WRITEDAT()把 结 果X X输出到文件OUT.DAT 中.void StrOR(void)/*标准答案*/int I,j,k,index,strl;char ch;for(I=0;IMAXLINE;I+)strl=strlen(xxI);index=strl;for(j=0;jSTRL;J+)if(xxIU=o)for(k=j;k=index;j)ch=xxIstrl-l;for(k=strl-1;kO;k)xxIk=xxIk-l;xxIO=ch;)题目4:函数ReadD at()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组x x中;请编制函数StrO L(),其函数的功能是:以行为单位对行中以空格或标点符号为分隔的所有单词进行倒排,同时去除标点符号,之后把已处理的字符串(应不含标点符号)仍按行重新存入字符串数组x x中。最 后main。函数调用函数WriteDat()把结果x x输出到文件OUT6.DAT中。void StrOL(void)/*标准答案*/int I,j,k,strl,l;char c;for(I=0;IMAXLINE;I+)for(j=0;j=A&c=a&c=,z,)llc=,);else xxIj=;for(l=0;l=a&xxlI=A,&xxlI=0)for(j=k;j=0;j-)ppj+l=ppj;ppO=xxlI;k+;I-;strcat(ch,pp);strcpy(pp,);k=l;if(I=-l)break;while(xxlIz)&I=O)for(j=k;j=0;j-)PPU+l=PPj;ppO=xxlI;k+;I-;strcat(ch,pp);strcpy(pp,);k=0;if(I=-l)break;strcpy(xxl,ch);题目5:在文件in.dat中有200个正整数,且每个数均在 1000至9999之间。函数ReadDat。读取这200个数存放到数组a a 中。请编制函数jsSort(),其函数的功能是:要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前10个数依次存入数组b 中,如果后三位的数值相等,则按原先的数值进行降序排列。最后调用函数WriteDat。把结果bb输出到文件out.dat中。void jsSort()/*标准答案*/int I,j,data;for(I=0;I199;I+)for(j=I+l;jaaj%1000)data=aaI;aaI=aaj;aaj=data;else if(aaI%1000=aaj%1 ()00)if(aaIAAJ)data=aaI;aaI=aaj;aaj=data;)for(I=0;I10;I+)bbI=aaI;)题目6:在文件in d a t中有200个正整数,且每个数均在1000至9999之间。函数ReadDat。读取这200个数存放到数组a a中。请编制函数jsS o rt(),其函数的功能是:要求按每个数的后三位的大小进行降序排列,然后取出满足此条件的前10个数依次存入数组b中,如果后三位的数值相等,则按原先的数值进行升序排列。最后调用函数WriteDatO把结果bb输出到文件out.dat中。void jsSort()/*标准答案*/int I,j,data;for(I=0;I199;I+)for(j=I+l;j200;j+)if(aaI%l 000aaj)data=aaI;aaI=aaj;aaj=data;for(I=0;I10;I+)bbI=aaI;)题目7:已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4 位),产品名称 me(字符型10位),单价dj(整型),数量si(整型),金额je(长整型)四部分组成。其中:金额=单价*数量计算得出。函数ReadDat。是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品代码从大到小进行排列,若产品代码相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDatO把结果输出到文件OUT10.DAT中。void SortDat。/*标准答案*/int I,j;PRO xy;for(I=0;I99;I+)for(j=I+l;j100;j+)if(strcmp(sellI.dm,sellj.dm)O)xy=sellI;sellI=sellj;sell|j=xy;else if(strcmp(sellI.dm,sellj.dm)=0)if(sellI.jeSELLJ.JE)xy=sellI;sellI=sellj;sellj=xy;)题目8:函数ReadDat。实现从文件EN G IN中读取一篇英文文章,存入到字 符 串 数 组x x中;请编制函数encryptChar(),按给定的替代关系对数组x x中的所有字符进行替代,仍存入数组x x的对应的位置上,最后调用函数WriteDat。把结果xx输出到文件PS1.DAT中。替代关系:f(p)=p*ll mod 256(p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果计算后f(p)值小于等于32或大于1 30,则该字符不变,否则将f(p)所对应的字符进行替代。void encryptChar()/*标准答案*/inti;char*pf;for(I=0;I 130ll*pf*11%256=32);else*pf=*pf*U%256;pf+;)9 题目:题目9:函数ReadDat()实现从文件IN.DAT中读取一篇 英 文 文 章 存 入 到 字 符 串 数 组 x x 中;请编制函数SortCharD(),其函数的功能是:以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组 x x 中。最后main。函数调用函数WriteDat()把结果xx输出到文件OUT2.DAT中。void SortCharD(void)/*标准答案*/int I,j,k,strl;char ch;for(I=0;IMAXLINE;I+)strl=strlen(xxI);for(j=0;jSTRL-l;J+)for(k=j+l;kif(xxIjXXIK)ch=xxIj;xxIj=xxIk;xxIk=ch;题目10:请编制函数ConvertCharA。,其函数的功能是:以行为单位把字符串中的所有小写字母改写成该字母的下一个字母,如果是字母z,则改写成字母a,大写字母和其它字符保持不变。把已处理的字符串仍按行重新存入字符串数组xx中。最后main。函数调用函数WriteDat()把结果xx输出 至!J文件OUT3.DAT中。void ConvertCharA(void)/*标准答案*/int I,j,str;for(I=0;IMAXLINE;I+)str=strlen(xxI);for(j=0;j=a&xxIj=a&*s=A&*s=Y)*s+=l;s+;else s+;)或者:void chg(char*s)int i,k;k=strlen(s);for(i=0;iK;I+)if(si=zllsi=Z()si-=25;elseif(isalpha(si)si+;)题目12:已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称me(字符型1。位),单价可(整型),数量si(整型),金额je(长整型)四部分组成。其中:金额=单价*数量计算得出。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品名称从小到大进行排列,若产品名称相同,则按金额从小到大进行排列.最终排列结果仍存入结构数组s e ll中,最后调用函数WriteDat。把结果输出到文件OUT5.DAT中。void SortDat。/*标准答案*/int I,j;PRO xy;for(I=0;I99;I+)for(j=I+l;j100;j+)if(strcmp(sellI.dm,sellj.dm)0)xy=sellI;sellI=sellj;sellj=xy;else if(strcmp(sellI.dm,sellj.dm)=O)if(sellI.jeSELLJ.JE)xy=sellI;sellI=sellj;sellj=xy;题目13:已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称me(字符型10位),单价dj(整型),数量si(整型),金额je(长整型)四部分组成。其中:金额=单价*数量计算得出。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品代码从小到大进行排列,若产品代码相同,则按金额从大到小进行排列,最终排列结果仍存入结构 数 组s e ll中,最后调用函数WriteDat。把结果输出到文件OUT6.DAT中。void SortDat。/*标准答案*/int I,j;PRO xy;for(I=0;I99;I+)for(j=I+l;jO)xy=sellI;sell I=sellj;sellj=xy;else if(strcmp(sellI.mc,sellj.mc)=0)if(sellI.jeSELLJ.JE)xy=sellI;sellI=sellj;sellj=xy;)题目14:已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat。把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:依次从数组a中取出一个四位数,如果该数连续大于该四位数以后的5个数且该数是奇数,则统计出满足此条件的个数e n t,并把这些四位数按从小到大的顺序存入数组b中。并要计算满足上述条件的四位数的个数en to最后main。函数调用写函数writeDat()把结果ent以及数组b中符合条件
展开阅读全文
温馨提示:
金锄头文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
相关搜索