第三題:編程題 請編寫函數(shù)fun,其功能是:將所有大于1小于整數(shù)m的非素數(shù)存入xx所指數(shù)組中,非素數(shù)的個數(shù)通過k傳回。
例如,若輸入17,則應(yīng)輸出:9和4 6 8 9 10 12 14 15 16。
請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)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; } }
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |