文档介绍:******************************************************************************* ☆题目 1 请编写一个函数 jsValue(int m,int k,int xx[]) ,该函数的功能是:将大于整数 m 且紧靠 m的k 个素数存入数组 xx 传回。最后调用函数 writeDat() 读取 10 组数据, 分别得出结果且把结果输出到文件 中。部分源程序存在文件 中。例如:若输入 175 则应输出: 19, 23, 29, 31, 37。请勿改动主函数 main() 和写函数 writeDat() 的内容。 int isP(int m) { int i; for(i=2;i<m;i++) if(m % i==0)return 0; return 1; // 判断是否是素数} void num(int m,int k,int xx[]) { int s=0; for(m=m+1;k>0;m++) if(isP(m)) { xx[s++]=m; k--;} } // 将素数存入到数组中☆题目 2 已知数据文件 中存有 200 个四位数,并已调用读函数 readDat() 把这些数存入数组 a 中,请考生编制一函数 jsVal() ,其功能是: 如果四位数各位上的数字均是 0或2或4或6 或8 ,t ,并把这些四位数按从大到小的顺序存入数组 b中。最后 main( ) 函数调用写函数 writeDat() t 以及数组 b 中符合条件的四位数输出到 文件中。 void jsVal() { int i,j,qw,bw,sw,gw; for(i=0;i<MAX;i++) { qw=a[i]/1000; bw=a[i]/100%10; sw=a[i]%100/10; gw=a[i]%10; if(qw&&qw%2==0&&bw%2==0&&sw%2==0&&gw%2==0) t++]=a[i]; // 四位数分别是 02468 但千位不能是 0 } // 以下为排序(冒泡排序) for(i=0;t-1 ( i<=cnt ) ;i++) // 此处有错误 for(j=i+1;t;j++) if(b[i]<b[j]) { qw=b[i]; b[i]=b[j]; b[j]=qw;} } ************************************* ***************************************** ★题目 3 (字符型题) 函数 ReadDat( ) 实现从文件 中读取一篇英文文章存入到字符串数组 xx中; 请编制函数 StrOR( ), 其函数的功能是: 以行为单位依次把字符串中所有小写字母 o 左边的字符串内容移到该串的右边存放, 然后把小写字母 o 删除, 余下的字符串内容移到已处理字符串的左边存放,之后把已处理的字符串仍按行重新存入字符串数组 xx 中。最后 main() 函数调用函数 WriteDat() 把结果 xx 输出到文件 中 void StrOR(void) {int i,righto,j,s,k; char tem[80]; for(i=0;i<maxline;i++) for(j=strlen(xx[i])-1;j>=0;j--) { k=0; memset(tem,0,80); if(xx[i][j]=='o') {righto=j; for(s=righto+1;s<strlen(xx[i]);s++) // 记录“o”右面的字符 tem[k++]=xx[i][s]; for(s=0;s<righto;s++) // 记录左边的字符 if(xx[i][s]!='o') // 此句没必要有 tem[k++]=xx[i][s]; strcpy(xx[i],tem); } else continue; }} // 此题注意用字符串函数 strcpy strlen ******************************************************************************* ★题目 4 函数 ReadDat() 实现从文件 中读取一篇英文文章存入到字符串数组 xx中, 请编制函数 StrOL() , 其函数的功能是: 以行为单位对行中以空格或标点符号为分隔的所有单词进行倒排。最后把已处理的字符串(应不含标点符号)仍按行重新存入字符串数组 xx中,最后调用函数 writeDat() 把结果 xx 输出到文件 中。例如:原文: You He