




已阅读5页,还剩21页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
类型一:英文文章字母ASCII值变换 替代关系:f(p)=p*11 mod 256,同时限定部分替换条件。一 例题:题目96:函数ReadDat()实现从文件ENG.IN中读取一篇英文文章,存入到字符串数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx输出到文件PS8.DAT中。替代关系:f(p)=p*11 mod 256 ,p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果原字符是小写字母或计算后f(p)值小于等于32,则该字符不变,否则将f(p)所对应的字符进行替代。注意:部分源程序已给出。原始数据文件存放的格式是:每行的宽度均小于80个字符。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。-void encryptChar() 定义函数encryptchar()int i,j,t; 定义i,j,tfor(i=0;imaxline;i+) 行数i循环 for(j=0;jstrlen(xxi);j+) 列数j循环 t=xxij*11%256; 替换ASCII值 if(t=a & xxij=z) continue; 替换后处理continuexxij=t; 内嵌的for函数来表达行列: for(i=0;imaxline;i+) for(j0;jstrlen(xxi);j+) 用if表达额外条件利用continue函数跳过改轮循环后面的语句,而继续进入下一次循环; 比较:break语句则跳过剩下的语句,而且跳出循环;二 变形题目(4)题目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,j,t;for (i=0;imaxline;i+)for(j=0;j strlen(xxi;j+)t=xxij*11%256;if (t=0 & t= 9) continue;xxij=t;(8)题目95:函数ReadDat()实现从文件ENG.IN中读取一篇英文文章,存入到字符串数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx输出到文件PS4.DAT中。替代关系:f(p)=p*13 mod 256 (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果计算后f(p)值小于等于32或其ASCII值是偶数,则该字符不变,否则将f(p)所对应的字符进行替代。注意:部分源程序已给出。原始数据文件存放的格式是:每行的宽度均小于80个字符。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。-void encryptChar()int i,j,t;for(i=0;imaxline;i+)for(j=0;jstrlen(xxi);j+)t=xxij*11%256;if(t=32 |( xxij20) continue;xxij=t;类型二: 英文文章以行为单位进行字符变化一 例题:题目73:函数ReadDat( )实现从文件IN.DAT中读取一篇英文文章存入到字符串数组xx中; 请编制函数ConvertCharD(), 其函数的功能是: 以行为单位把字符串中的所有小写字母改写成该字母的上一个字母, 如果是字母a, 则改写成字母z,大写字母和其它字符保持不变。把已处理的字符串仍按行重新存入字符串数组xx中。最后main()函数调用函数WriteDat()把结果xx输出到文件OUT4.DAT中。原始数据文件存放的格式是: 每行的宽度均小于80个字符, 含标点符号和空格。注意: 部分源程序存放在PROG1.C中。请勿改动主函数main( )、读数据函数ReadDat()和输出数据函数WriteDat()的内容。-类型:字符串(单词)的倒置和删除。答案:void ConvertCharD(void) int i,j;char c;for(i=0;imaxline;i+) 千万注意,此时用,而不是=,因为是从0开始数的 for(j=0;j=b&xxij=z)xxij-; xxij表示xxij-=1即xxij= xxij-1用两个for函数表达行列:for(i=0;imaxline;i+)for(j=0;jstrlen(xxi);j+)二 变形(1)题目63:下列程序的功能是:把S字符串中的所有字符左移一个位置,串中的第一个字符移到最后.请编写函数CHG(CHAR *S)实现程序要求,最后调用函数READWRITEDAT()把结果输出到OUT.DAT文件中.例如:S字符串中原有内容为:Mn.123xyZ,则调用函数后,结果为:n.123xyZM.注意:部分源程序已给出。请勿改动主函数main()和输出数据函数readwriteDat()的内容。-void chg(char *s) int i;char c;c=s0;for(i=0;istrlen(s)-1;i+)si=si+1;sstrlen(s)-1=c;(2)题目11:下列程序的功能是:把s字符串中的所有字母改写成该字母的下一个字符,字母z改写成字母a。要求大写字母仍为大写字母,小写字母仍为小写字母,其他字符不做改变。请编写函数chg(char *s)实现程序的要求,最后调用函数readwriteDat()把结果输出到文件out.dat中。例如:s字符串中原有的内容为:Mn.123Zxy,则调用该函数后,结果为No.123Ayz。注意:部分源程序已给出。请勿改动主函数main()和输出数据函数readwriteDat()的内容。-void chg(char *s) int i,k;k=strlen(s);for(i=0;ik;i+) if(si=z|si=Z)si-=25;elseif(isalpha(si)si+; (3)题目10:请编制函数ConvertCharA(), 其函数的功能是: 以行为单位把字符串中的所有小写字母改写成该字母的下一个字母, 如果是字母z, 则改写成字母a,大写字母和其它字符保持不变。把已处理的字符串仍按行重新存入字符串数组xx中。最后main()函数调用函数WriteDat()把结果xx输出到文件OUT3.DAT中。例: 原文: Adb.Bcdzaabck.LLhj结果: Aec.Bdeabbcdl.LLik原始数据文件存放的格式是: 每行的宽度均小于80个字符, 含标点符号和空格。注意: 部分源程序存放在PROG1.C中。请勿改动主函数main( )、读数据函数ReadDat()和输出数据函数WriteDat()的内容。-类型:字符串(单词)的倒置和删除。答案:void ConvertCharA(void) /*标准答案*/int I,j,str;for(I=0;Imaxline;I+)str =strlen(xxI);for(j=0;j=a&xxIj=y) xxIj+=1;类型三 产品排列 按序号,按代码一 例题 题目99:已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)四部分组成。其中:金额=单价*数量计算得出。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按金额从小到大进行排列, 若金额相等, 则按产品代码从小到大进行排列 最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT1.DAT中。注意: 部分源程序存放在PROG1.C中。请勿改动主函数main( )、读数据函数ReadDat()和输出数据函数WriteDat()的内容。-void SortDat() /*标准答案*/ 定义sortdat()int i,j; 定义i,jPRO xy; ?for(i=0;i99;i+) for循环各个产品for(j=i+1;jsellj.je) 比较jexy=selli;sell i=sellj;sellj=xy; 交换出较大的一个继续比较else if(selli.je=sellj.je) 如果相同 if(strcmp(selli.dm,sellj.dm)0) 比较dmxy=selli;selli=sellj;sellj=xy; 交换出较大的一个继续比较表达行列for(i0;i=99;i+)for (j=i+1;jxj) “交换”txj;xj=xi;xi=t字母顺序比较:strcmp( selli.dm,sellj.dm)0大于0则表示selli.dm比sellj.dm的ASCII值大类型四 英文文章 按行 ASCII值 排列一简单排列 例题 题目88:函数READDAT()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组XX中;请编制函数SORTCHARA(),其函数功能是:以行为单位对字符按从小到大的顺序进行排序,排序后的结果仍按行重新存入字符串数组XX中,最后调用函数WRITEDAT()把结果XX输出到文件OUT1.DAT .例:原文:dAe,BfC.CCbbAA结果:,.ABCdefAACCbb原始数据文件存放的格式是: 每行的宽度均小于80个字符, 含标点符号和空格。注意: 部分源程序存放在PROG1.C中。请勿改动主函数main( )、读数据函数ReadDat()和输出数据函数WriteDat()的内容。-类型:字符串(单词)的倒置和删除。答案:void ConvertCharA(void)/*标准答案*/int I,j,k,strl;char ch;for(I=0;Imaxline;I+) 列strl=strlen(xxI);for(j=0;jstrl-1;j+) 行 某个字母for(k=j+1;kxxIk) 按行对字母进行比较ch=xxIj; xxIj=xxIk;xxIk=ch; 交换排序二 一分为二排列例题 题目71:函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(第行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。条件:从字符串中间一分为二,左边部分按字符的ASCII值降序排序,右边部分按字符的ASCII值升序排序。如果原字符串长度为奇数,则最中间的字符不参加排序,字符仍放在原位置上。类型:字符串左右排序和比较。注:要注意当要进行右半部分排序时,一定要判断原字符串个数是否为奇数,若是则要half加1,本题对右半部分采用选择法对其进行升序排序。void jsSort() /*标准答案*/int I,j,k,strl,half;char ch;for(I=0;I20;I+) 按行strl=strlen(xxI); half=strl/2; 定义halffor(j=0;jhalf-1;j+) 左半部分进行排列for(k=j+1;khalf;k+)if (xxIjxxIk)ch=xxIj;xxIj=xxIk;xxIk=ch;if (strl%2) half+; 判断原字符串长度为奇为偶for(j=half;jstrl-1;j+) 右半部分进行排列for(k=j+1;kxxIk)ch=xxIj;xxIj=xxIk;xxIk=ch;变形(1)题目50:函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(每行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。条件:从字符串中间一分为二,左边部分按字符的ASCII值升序排序,排序后左边部分与右边部分进行交换。如果原字符串长度为奇数,则最中间的字符不参加处理,字符仍放在原位置上。例如:位置012345678源字符串d c b a h g f e 4 3 2 1 9 8 7 6 5则处理后字符串 h g f e a b c d8 7 6 5 9 1 2 3 4部分源程序已给出。请勿改动主函数main()、读函数ReadDat()和写函数WriteDat()的内容。 -类型:字符串左右排序和比较.注:先采用冒泡法对左边部分进行升序排序,然后将排序后的左半与右半按对应位进行调换。void jsSort()int i,strl,half,j,k;char ch; /*注意:用以交换的ch,必须是char型的!*/for(i=0;i20;i+) /*行循环*/strl=strlen(xxi); /*每行长度*/ half=strl/2;for(j=0;jhalf-1;j+) /*每行的第j个位置*/for(k=j+1;kxxik)ch=xxij;/*每次将最小数赋给xxij*/ xxij=xxik; xxik=ch;for(j=half-1,k=strl-1;j=0;j-,k-)/*左右部分进行交换*/ch=xxij;xxij=xxik;xxik=ch;题43: 函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(第行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串变量的下标为奇数的字符按其ASCII值从小到大的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。例如:位置01234567源字符串h g f e d c b a 则处理后字符串 h a f c d e b g部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。-类型:字符串左右排序和比较。void jsSort() /*标准答案*/int I,j,k,strl;char ch;for(I=0;I20;I+)strl=strlen(xxI);for(j=1;jstrl-2;j=j+2) /*下标从0,1,2其中为奇数就是1,3*/for(k=j+2;kxxIk)ch=xxIj;xxIj=xxIk;xxIk=ch; 下标为奇数的数据的表达 for(j=1;jstrl-2;j=j+2) for (k=j+2;kstrl;k=k+2)题目16:函数ReadDat()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组xx中,请编制函数StrCharJR(),其函数的功能是:以行为单位把字符串中所有字符的ASCII值右移4位,然后把右移后的字符ASCII值再加上原字符的ASCII值,得到新的字符仍存入原字符串对应的位置上。最后把已处理的字符串仍按行重新存入字符串数组xx中,最后调用函数writeDat()把结果xx输出到文件OUT8.DAT中。原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。注意:部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数writeDat()的内容。-void StrCharJR(void) /*标准答案*/int I,j,strl;for(I=0;Imaxline;I+)strl=strlen(xxI);for(j=0;j4; 注:这个编程题比二级考得还简单。void StrCharJR(void)int i,j;for(i=0;i4;题目17:函数READDAT()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组XX中;请编制函数CHA(),其函数功能是:以行为单位把字符串中的第一个字符的ASCII值加第二个字符的ASCII值,得到第一个亲朋字符,第二个字符的ASCII值加第三个字符的ASCII值,得到第二个新字符,依此类推一直处理到最后第二个字符,最后一个字符的ASCII值加原第一个字符的ASCII值,得到最后一个新的字符,得到的新字符分别存放在原字符串对应的位置上。最后把已处理的字符串逆转后按行重新存入字符串数组XX中,最后调用函数WRITEDAT()把结果XX输出到文件OUT9.DAT中.原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格.注意:部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数writeDat()的内容。-void ChA(void) /*标准答案*/int I,j,k,str;char ch;for(I=0;Imaxline;I+)str=strlen(xxI);ch=xxI0;for(j=0;jstr-1;j+)xxIj+=xxIj+1;xxIstr-1+=ch;for(j=0,k=str-1;jstr/2;j+,k-)/*逆转 对头调动*/ch=xxIj;xxIj=xxIk;xxIk=ch; 类型五 两百个数的简单计算题目91:请编制程序,从文件in.dat中读取200个整数至数组xx中,求出奇数的个数cnt1和偶数的个数cnt2以及数组xx值为偶数的元素值的算术平均值pj(保留2位小数)。结果cnt1,cnt2,pj输出到out.dat中。部分程序、读数据函数read_dat(int xx200)及输出格式已给出。-cnt1=0;cnt2=0;pj=0.0; for(i=0;iN;i+) 200个数据循环处理if(xxi%21) cnt1+; 2为1即为奇数else cnt2+; pj+=xxi; pjxxi求和的极好方法pj/=cnt2;题目92:请编制程序,从文件in.dat中读取200个整数至数组xx中,求出最大数max及最大数的个数cnt和数组xx中值能被3整除或能被7整除的算术平均值pj(保留2位小数)。结果cnt1,cnt2,pj输出到out.dat中。部分程序、读数据函数read_dat(int xx200)及输出格式已给出。-max=xx0; /*求最大数的办法*/for(I=1,k=0;Imax) max=xxI;if (xxI%3=0|xxI%7=0)j+=xxI;k+;for(I=0,cnt=0;IN;I+)if (xxI=max) cnt+;pj=(float)(j*100/k)/100; /*保留两位小数的办法*/ 求最大数的办法:假定maxxx0;然后逐个比较:比xx0大,就重新定义max即可。 保留两位小数的办法:pj(float)(j*100/k)/100题目6:在文件in.dat中有200个正整数,且每个数均在1000至9999之间。函数ReadDat()读取这200个数存放到数组aa中。请编制函数jsSort(),其函数的功能是:要求按每个数的后三位的大小进行降序排列,然后取出满足此条件的前10个数依次存入数组b中,如果后三位的数值相等,则按原先的数值进行升序排列。最后调用函数WriteDat()把结果bb输出到文件out.dat中。例:处理前 9012 5099 6012 7025 8088处理后 5099 8088 7025 6012 9012注意:部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。 -void jsSort() /*标准答案*/int I,j,data;for(I=0;I199;I+)for(j=I+1;j200;j+)if (aaI%1000aaj)data=aaI;aaI=aaj;aaj=data;for(I=0;I10;I+)/*当排列完成以后,取其前十个即可 */bbI=aaI;题目5(完全同上):题目22:请编写函数countvalue(),它的功能是:求n以内(不包括n)同时能被3和7整数的所有自然数之和的平方根s,并作为函数值返回,最后结果s输出到文件out.dat中。例如若n为1000时,函数值应为:s=153.909064。注意:部分源程序已给出。请勿改动主函数main()和输入输出数据函数progreadwrite()的内容。-double countvalue(int n) int i,j=0;double k;for(i=0;in;i+)if(i%3=0&i%7=0)j+=i;k=sqrt(j);/*平方根的求法*/return k; 题目93请编制函数ReadDat()实现从文件IN.DAT中读取1000个十进制整数到数组xx中;再编制函数COMPUTE()分别计算出XX中奇数的个数ODD,偶数的个数EVEN,平均值AVER以及方差TOTFE的值,最后调用函数WriteDat()把结果输出到OUT.DAT文件中。计算方差的公式如下:totfc=1/N(xxi-ave1)2设N为奇数的个数,xxi为奇数,ave1为奇数的平均值。原始数据文件存放的格式是:每行存放10个数,并用逗号隔开。(每个数均大于0且小于等于2000)注意:部分源程序已给出。请勿改动主函数main()和输出数据函数writeDat()的内容。-void Compute(void)int I;for(I=0;I1000;I+)if(xxI%2) odd+; /*表达偶数这样就可以了吗?*/else even+;aver=aver+xxI;/*要注意使用题目已知的变量,尽可能减少变量*/aver/=even;for(I=0;I1000;I+)totfc+=(xxI-aver)*(xxI-aver)/MAX;/*方差公式一直都没有看明白*/totfc/=MAX;题目23:已知在文件in.dat中存有N个(个数200)四位数字的正整数,函数readdat()读取这N个正整数并存入数组xx中。请编制函数calvalue(),其功能要求:1、求出这N个实数的平均值aver;2、分别求出这N个实数的整数部分之和sumint以及小数部分之和sumdec,最后调用函数writedat()把所求的结果输出到文件out.dat中。注意:部分源程序已给出。请勿改动主函数main()、读数据函数readdat()和输出数据函数writedat()的内容。-void CalValue(void) /*标准答案*/int I;double x,sum=0;/*到底什么时候用double噢?*/for (I=0;IMAXNUM;I+)sumint=sumint+(int)xxI; /*在前面补充类型(int)就可以表达整数部分了了*/x=xxI-(int)xxI; /*小数部分整体整数部分*/sumdec=sumdec+x;sum=sum+xxI;aver=sum/MAXNUM;题目33:请编制函数ReadDat()实现从文件IN.DAT中读取1000个十进制整数到数组xx中;请编制函数Compute()分别计算出xx中奇数的个数odd,奇数的平均值ave1,偶数的平均值ave2以及所有奇数的方差totfc的值,最后调用函数WriteDat()把结果输出到OUT.DAT文件中。计算方差的公式如下:totfc=1/N(xxi-ave1)2设N为奇数的个数,xxi为奇数,ave1为奇数的平均值。原始数据文件存放的格式是:每行存放10个数,并用逗号隔开(这个有关系么?)。(每个数均大于0且小于等于2000)注意:部分源程序已给出。请勿改动主函数main()和输出数据函数writeDat()的内容。-void Compute(void) int i;for(i=0;iMAX;i+)if(xxi%2) odd+; ave1+=xxi; else even+; ave2+=xxi; ave1/=odd; ave2/=even;for(i=0;iMAX;i+)if(xxi%2=0) totfc+=(xxi-ave2)*(xxi-ave2);totfc/=even;终于了解方差的含义了噢:(XiX的平均值)的平方/N题目46:已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是: 依次从数组a中取出一个四位数,如果该数连续大于该四位数以前的5个数且该数是奇数,但该数必须能被7整除。 则统计出满足此条件的个数cnt, 并把这些四位数按从大到小的顺序存入数组b中。 并要计算满足上述条件的四位数的个数cnt。最后main()函数调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。注意: 部分源程序存在文件PROG1.C文件中。程序中已定义数组: a200, b200, 已定义变量: cnt请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。-void jsVal() /*标准答案*/int I,j,flag=0;for(I=5;IMAX-5;I+)for(j=I-5;jaj)flag=1;else flag=0;break;if (flag=1&aI%2=1&aI%7=0) bcnt=aI;cnt+;for(I=0;Icnt-1;I+)for(j=I+1;jcnt;j+)if(bIcd, ab必须是偶数且能被5整除, cd必须是奇数,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b中, 并要计算满足上述条件的四位数的个数cnt。最后main()函数调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。注意: 部分源程序存在文件PROG1.C文件中。程序中已定义数组: a200, b200, 已定义变量: cnt请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。-void jsVal() /*标准答案*/int I,thou,hun,ten,data,j;int ab,cd;/*注意把变量都定义好了*/for(I=0;I0&(ab%2!=1&ab%5=0)&cd%2=1&ab!=0&cd!=0)bcnt=aI;cnt+;for(I=0;Icnt-1;I+) 按从大到小排序for(j=I+1;jcnt;j+)if(bIbj)data=bI;bI=bj;bj=data;有一个四位数i表达千位、百位、个位、十位数字的办法定义为整型:int thou,hun,ten,data;thou=i/1000;hun=i%1000/100;ten=i%100/10;data=i%10题目87:已知数据文件IN.DAT中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsvalue(),其功能是:求出千位数上的数加个位数等于百位数上的数加十位数上的数的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,最后调用写函数把结果输出到OUT.DAT文件。例如:6712,6+2=7+1,则该数满足条件计算平均值pjz1,且个数cnt=cnt+1。8129,8+91+2,则该数不满足条件计算平均值pjz2.注意:部分源程序已给出。程序中已定义数组:a300,已定义变量:cnt请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。-void jsValue() /*标准答案*/int I,n=0,thou,hun,ten,data;for(I=0;I300;I+)thou=aI/1000; hun=aI%1000/100;ten=aI%100/10; data=aI%10;if (thou+data=hun+ten)cnt+;pjz1+=aI; else n+;pjz2+=aI;pjz1/=cnt; pjz2/=n;自己写程序时存在的问题:1Pjz1ai表达还不熟练2这样可以减少变量,从求和开始,久直接用pjz题目77:已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:若一个四位数的千位数字上的值加上十位数字上的值等于百位数字上的值加上个位数字上的值,并且此四位数是偶数,则统计出满足此条件的个数cnt, 并把这些四位数按从小到大的顺序存入数组b中。最后main()函数调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。注意: 部分源程序存在文件PROG1.C文件中。程序中已定义数组: a200, b200, 已定义变量: cnt请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。-void jsVal() /*标准答案*/int I,thou,hun,ten,data,j;for(I=0;IMAX;I+)thou=aI/1000; hun=aI%1000/100;ten=aI%100/10; data=aI%10;if (thou+ten=hun+data)&aI%2!=1)bcnt=aI;cnt+;for(I=0;Icnt-1;I+)for(j=I+1;jbj)data=bI;bI=bj;bj=data;题目72:已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是: 把千位数字和个位数字重新组成一个新的十位数(新十位数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的个位数字), 以及把十位数字和百位数字组成另一个新的十位数 (新十位数的十位数字是原四位数的百位数字,新十位数的个位数字是原四位数的十位数字), 如果新组成的两个十位数均是偶数并且两个十位数中至少有一个能被9整除,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b中, 并要计算满足上述条件的四位数的个数cnt。最后main()函数调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。注意: 部分源程序存在文件PROG1.C文件中。程序中已定义数组: a200, b200, 已定义变量: cnt请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。-void jsVal() /*标准答案*/int I,thou,hun,ten,data,j;int ab,cd;for(I=0;IMAX;I+)thou=aI/1000; hun=aI%1000/100;ten=aI%100/10; data=aI%10;ab=10*data+thou; cd=10*hun+ten;if (ab%9=0|cd%9=0)&ab%2!=1&cd%2!=1&ab!=0&cd!=0)bcnt=aI;cnt+;for(I=0;Icnt-1;I+)for(j=I+1;jcnt;j+)if(bI=1000;I-)thou=I/1000;hun=I%1000/100;ten=I%100/10;data=I%10;if (thou+hun=ten+data&thou+hun=(data-thou)*10)cnt+;sum+=I;类型
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026中交一公局集团有限公司校园招聘备考考试题库附答案解析
- 2025山东临沂罗开控股集团有限公司及其权属公司招聘工作人员6人考试参考试题及答案解析
- 2025山西阳泉人才发展集团招聘服务工作人员19人备考考试题库附答案解析
- 2025年金华兰溪市市属国企(兰创集团)下半年公开招聘工作人员19人备考考试题库附答案解析
- 2025广东肇庆市高要区公办中小学招聘临聘教师200人备考考试题库附答案解析
- 哲学博士答辩精要
- 2025版泌尿外科疾病常见症状及护理建议分享
- 运动中的数学乐园
- 工厂安全培训效果验证课件
- 神经影像标志物筛选-洞察及研究
- 小学生电信防诈课件
- 急性心梗诊疗(2025指南)解读课件
- 防触电及安全用电培训课件
- 鄂托克高新技术产业开发区固废处理场建设项目环评报告书
- 精准分析分离与鉴定技术知到智慧树章节测试课后答案2024年秋浙江中医药大学
- 老年焦虑障碍课件
- 产科护理个案分享案例
- DB31-T 1540-2025 针刀技术操作规范
- 2024-2025学年黑龙江省1月普通高中学业水平合格性考试数学试卷(含答案)
- 招商转正工作总结
- 公路工程全套资料表格
评论
0/150
提交评论