在自己编译器是对的,在这怎么是零分?
查看原帖
在自己编译器是对的,在这怎么是零分?
470881
郭亮20510507027楼主2021/4/10 09:30
#include <stdio.h>
int main ()
{
	int i=2,sum=0,cnt,L;     //i是被筛选的数,sum是总和在L以内的数相加的和 
	scanf ("%d",&L);
	while (i<100000)
	{
		int flag=0;         //先定义一个flag,若为0,则是质数 
		for (int j=2;j<i;j++)
		{
			if (i%j==0)
			{
				flag=1;     //flag为1,则不是质数 
			}
		}
		if (flag==0)
		{
			sum=sum+i;      //把筛选出的质数相加 
			if (sum<=L)
			{
				printf ("%d\n",i);
				cnt++;
			}
			else 
			{
				printf ("%d",cnt);
				break;       //若质数相加的和大于L则停止循环 
			}
		}
		i++;         //被筛选的数为下次循环做准备 
	}
	return 0;
}
2021/4/10 09:30
加载中...