蓝桥杯:第几个幸运数。显示不出来结果,什么原因?

#include<stdio.h>
int main()
{
	 int i,num[2000],j;
	 for(i=3;i<=59084709587505;i++)
	 {
	 	if(i%3==0||i%5==0||i%7==0)
	 	{
	 		for(j=0;j<2000;j++){ //如果是幸运数,存入数组
	 			i=num[j];
			 }
		 }
	 }
	 for(j=0;j<2000;j++)
	 {
	 	if(num[j]==59084709587505) break;
	 
	 	
	 }
	 printf("%d",j+1);
	 return 0;
 

 

第一数据类型错误,其次数组赋值错误,

把i改为long int ,num[j]=i;

还是没结果