资源描述:
《2010南开网络技术三级100题》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、更多学习资源请登录(www.flyingyouth.com)1:下列程序的功能是:将大于整数m且紧靠m的k个素数存入数组xx。请编写函数num(intm,intk,intxx[])实现函数的要求,最后调用函数readwriteDAT()把结果输出到文件out.dat中。例如:若输入17,5,则应输出:19,23,29,31,37。注意:部分源程序已给出。请勿改动主函数main()和函数readwriteDAT()的内容。---------类型:素数。voidnum(intm,intk,intxx[])/*标准答案*/{intdata=m+
2、1;inthalf,n=0,I;while(1){half=data/2;for(I=2;I<=half;I++)if(data%I==0)break;if(I>half){xx[n]=data;n++;}if(n>=k)break;data++;}}或者:voidnum(intm,intk,intxx[]){inti,j,s=0;for(i=m+1;k>0;i++){for(j=2;j
3、x[s++]=i;k--;}}}或者:voidnum(intm,intk,intxx[]){inti=0;for(m=m+1;k>0;m++)if(isP(m)){xx[i++]=m;k--;}}原程序如下:#include#includevoidreadwriteDAT();更多学习资源请登录(www.flyingyouth.com)intisP(intm){inti;for(i=2;i4、]){}main(){intm,n,xx[1000];clrscr();printf("Pleaseentertwointegers:");scanf("%d,%d",&m,&n);num(m,n,xx);for(m=0;m5、at","w");for(i=0;i<10;i++){fscanf(rf,"%d%d",&m,&n);num(m,n,xx);for(m=0;m6、出满足此条件的个数cnt,并把这些四位数按从大到小的顺序存入数组b中。最后main()函数调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。注意:部分源程序存在文件PROG1.C文件中。程序中已定义数组:a[200],b[200],已定义变量:cnt请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容-------------------------voidjsVal()/*标准答案*/{intbb[4];intI,j,k,
7、flag;for(I=0;I<200;I++){bb[0]=a[I]/1000;bb[1]=a[I]%1000/100;bb[2]=a[I]%100/10;bb[3]=a[I]%10;for(j=0;j<4;j++){if(bb[j]%2==0)flag=1;else{flag=0;break;}}if(flag==1){b[cnt]=a[I];cnt++;}}for(I=0;I8、lude#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){}更多学习资源请登录(www.flyingyouth.com)void