第三题:编程题 请编写函数fun,其功能是:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k传回。
例如,若输入17,则应输出:9和4 6 8 9 10 12 14 15 16。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
#include
#include
void fun( int m, int *k, int xx[] )
{
}
main()
{
int m, n, zz[100];
FILE *out;
printf( "\nPlease enter an integer number between 10 and 100: " );
scanf( "%d", &n );
fun( n, &m, zz );
printf( "\n\nThere are %d non-prime numbers less than %d: ", m, n );
for( n = 0; n < m; n++ )
printf( "\n %4d", zz[n] );
out=fopen("out.dat", "w"); www.Examda.CoM
fun( 28, &m, zz );
fprintf(out, "%d\n", m);
for( n = 0; n < m; n++ )
fprintf(out, "%d\n", zz[n] );
fclose(out);
}
参考答案
编程题:void fun(int m,int *k,int xx[])
{
int i,j;
int t=0;
for(i=2;i
{ j=2;
while(j
{ if(i%j==0)
{ xx[t]=i;
t++;
break;
}
j++;
}
*k=t;
}
}
更多关注: