请教一个C语言问题,求具体代码,感谢大神

编程实现对5000以内能被3整除,但不能被5整除,且个位数不能为2的数进行如下处理:统计这些数,求出这些数的平均值,输出满足条件的每一个数;要求:将上述结果输出到C盘data文件夹中,文件名为out.txt。文件内容格式为:第一行为满足条件数的个数,第二行为这些数的平均值,第三行输出这些数

第1个回答  2013-01-04
对楼上代码进行优化:
1. 将for循环里的 i++ 可优化成 i = i + 3;
2. 将第一次判断得到的满足条件的数存入数组中,第二次for循环里就不需要进行第二次判断了,提高效率
第2个回答  2013-01-04
以下代码供参考:
#include "stdio.h"
#include "stdlib.h"
int main()
{
int i,j;
int count=0;
float sum=0.0;
FILE *fp;
fp=fopen("c:\\data\\out.txt","w");
if(fp == NULL)return -1;
for(i=1;i<5000;i++)
{
if((i %3 ==0)&&(i&5 !=0)&&(i%10 != 2))
{
count ++;
sum +=i;
}
}
fprintf(fp,"%d\n",count);
fprintf(fp,"%f\n",sum/count);
for(i=1;i<5000;i++)
{
if((i %3 ==0)&&(i&5 !=0)&&(i%10 != 2))
{
fprintf(fp," %d",i);
}
}
fclose(fp);
return 0;
}本回答被提问者采纳
相似回答