1、void num(int m, int k, int xx) int i=0;for(m=m+1;m+)if(isP(m) xxi+=m; 原程序如下:#include stdio.hvoid readwriteDAT() ;int isP(int m) int i ;for(i = 2 ; i m ; i+)if(m % i = 0) return 0 ;return 1 ;main() int m, n, xx1000 ;clrscr() ;printf(nPlease enter two integers:) ;scanf(%d,%d, &m, &n ) ;num(m, n, xx) ;
2、for(m = 0 ; m n ; m+)%d , xxm) ;nreadwriteDAT() ;system(pause);void readwriteDAT() int m, n, xx1000, i ;FILE *rf, *wf ;rf = fopen(in.dat, rwf = fopen(out.datwfor(i = 0 ; 10 ; i+) fscanf(rf, %d %dn) ; m+) fprintf(wf, fprintf(wf, fclose(rf) ;fclose(wf) ;2:已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入
3、数组a中,请考生编制一函数jsVal(),其功能是: 如果四位数各位上的数字均是0或2或4或6或8, 则统计出满足此条件的个数cnt, 并把这些四位数按从大到小的顺序存入数组b中。最后main()函数调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。注意: 部分源程序存在文件PROG1.C文件中。程序中已定义数组: a200, b200, 已定义变量: cnt请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容-void jsVal() /*标准答案*/int bb4;int
4、I,j,k,flag;for (I=0;200;bb0=aI/1000; bb1=aI%1000/100;bb2=aI%100/10; bb3=aI%10;for (j=0;4;if (bbj%2=0)flag=1;elseflag=0;break;if (flag=1) bcnt=aI;cnt+;for(I=0;cnt-1;for(j=I+1;cnt;if (bIbj)k=bI;bI=bj;bj=k;#define MAX 200int aMAX, bMAX, cnt = 0;void jsVal()void readDat()FILE *fp ;fp = fopen( MAX ; i+)
5、fscanf(fp, %dai) ;fclose(fp) ;void main()readDat() ;jsVal() ;满足条件的数=%dn, cnt) ; cnt ; i+) printf(, bi) ;writeDat() ;writeDat() FILE *fp ;int i ;fprintf(fp, %dn i+) fprintf(fp, 3:函数READDAT()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组XX中;请编制函数STROR(),其函数功能是:以行为单位把字符串中的所有小写字母O左边的字符串内容移到该串的右边存放,然后并把小写字母O删除,余下的字符串内容移到已
6、处理字符串的左边存放.最后把已处理的字符串仍按行重新存入字符串数组XX中,最后调用函数WRITEDAT()把结果XX输出到文件OUT.DAT中.例如:原文:You can create an index on any field.you have the correct record.结果: n any field.You can create an indexrd.yu have the crrect rec原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格.-类型:字符串(单词)的倒置和删除。void StrOR(void) /*标准答案*/int I,j,k,inde
7、x,strl;char ch;maxline;strl=strlen(xxI);index=strl;for(j=0;strl;if(xxIj=o)for(k=j;k=index;j-)ch=xxIstrl-1;for(k=strl-1;k-)xxIk=xxIk-1;xxI0=ch;void StrOR(void) int i;char a80,*p;for(i=0;i=xxi) p1-;memcpy(t1,p1+1,p2-p1);t1p2-p1=0;strcat(t,t1);strcat(t, if(p1Acaz)|c=else xxIj= for(l=0;lxxlI)&I=0)for(j=
8、k;ppj+1=ppj; pp0=xxlI; k+;I-;strcat(ch,pp);strcpy(pp, if(I=-1)break;while(xxlI)& I-; strcpy(pp,k=0;strcpy(xxl,ch);void StrOL(void) int i,j,k,m,n,ll;char yy80; maxline; ll=strlen(xxi); k=n=0;for(j=ll-1; j j-) if(isalpha(xxij) k+; for(m=1; maaj%1000)data=aaI;aaI=aaj;aaj=data;else if(aaI%1000=aaj%1000)
9、if(aaIaaj)10;bbI=aaI;#includeint aa200,bb10;void jsSort()readDat();jsSort();writeDat();readDat()FILE *in;in=fopen( i i+) fscanf(in,%d,&aai);fclose(in);FILE *out;clrscr();out=fopen( i+)i=%d,%dn,i+1,bbi);fprintf(out,bbi);fclose(out);6:进行降序排列,然后取出满足此条件的前10个数依次存入数组b中,如果后三位的数值相等,则按原先的数值进行升序排列。处理前 9012 5099 6012 7025 8088处理后 5099 8088 7025 6012 9012if (aaI%1000readDat();FILE *in;FILE *out;i=%
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1