★題目43(素數(shù)題)
下列程序prog1.c的功能是:計算500-800區(qū)間內(nèi)素數(shù)的個數(shù)cnt,并按所求素數(shù)的值從大到小的順序,再計算其間隔加、減之和,即第1個素數(shù)-第2個素數(shù)+第3個素數(shù)-第4個素數(shù)+第5個素數(shù)...的值sum。請編寫函數(shù)countValue()實現(xiàn)程序的要求,最后調(diào)用函數(shù)writeDat()把結(jié)果cnt和sum,輸出到文件OUT11.DAT中。
int isP(int m)
{ int i;
for(i=2;i if(m % i==0)return 0; return 1; } void countValue() {int i,j,k=1; for(i=800;i>500;i--) if(isP(i)) { cnt++; sum=sum+k*i; k=k*(-1); } } } *********************************************************************** ★題目44(素數(shù)題) 已知數(shù)據(jù)文件in.dat中存有300個四位數(shù),并已調(diào)用讀函數(shù)ReadDat()把這些數(shù)存入數(shù)組a中,請編制一函數(shù)jsValue(),其功能是:求出所有這些四位數(shù)是素數(shù)的個數(shù)cnt,再求出所有滿足此條件的四位數(shù)平均值pjz1,以及不滿足此條件的四位數(shù)平均值pjz2,最后調(diào)用寫函數(shù)writeDat()把結(jié)果cnt,pjz1,pjz2輸 出到out.dat文件。 例如:5591是素數(shù),則該數(shù)滿足條件計算平均值pjz1,且個數(shù)cnt=cnt+1。 9812是非素數(shù),則該數(shù)不滿足條件計算平均值pjz2。 int isP(int m) {int i; for(i=2;i if(m%i==0)return 0; return 1; } jsValue() {int i; for(i=0;i<300;i++) if(isP(a[i])) {pjz1+=a[i];cnt++;} else pjz2+=a[i]; if(cnt==0) pjz1=0; else pjz1/=cnt; if(300-cnt==0) pjz2=0; else pjz2/=(300-cnt); } *********************************************************************** ★題目45(數(shù)字運算題) 請編寫函數(shù)void countValue(int *a,int *n),它的功能是:求出1到1000之內(nèi)能被7或11整除但不能同時被7或11整除的所有整數(shù)放在數(shù)組a中,并通過n返回這些數(shù)的個數(shù)。 void countValue(int *a,int *n) { int i; *n=0; for(i=1;i<=1000;i++) if(i%7==0&&i%11||i%7&&i%11==0) a[(*n)++]=i; }
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |