对于初学者来说,有些问题可能不知道从什么地方下手,实际上这个问题首先就可以规划为一个实际的数学问题,首先素数就是只能被1和他本身整除的,所以就可以用一个数学表达式来对素数判断:你输入的数定义为:int i;不是要判断小于它的最大素数吗?那做循环的时候就来个i--,程序如下:
main()
{int i,j,n;
printf("please put into a data:");
scanf("%d",&i);
for(n=i-1;n>=1;n--)
{
{for(j=2;j<n;j++)
if(n%j==0)break;}
if(j==n) printf("%d",n)break;}
}