以下是引用露营地在2015-9-16 14:57:09的发言:
!k%j就是说如果k%j=0的话 那么就是真的 就执行咯
!k%j就是说如果k%j=0的话 那么就是真的 就执行咯
是的!就是单目运算符-取反运算

剑栈风樯各苦辛,别时冰雪到时春
程序代码:#include <stdio.h>
#include <conio.h>
int isprime(int n)
{
int step=4,i;
if(n==2||n==3||n==5)return 1;
if((n%2==0)||(n%3==0)||(n%5==0))return 0;
for(i=5;i<n;i+=step)
{
if(!(n%i))return 0;
step^=6;
}
return 1;
}
main()
{
int j, k,co;
printf("please input an integer number between 2 and 10000: ");
scanf("%d", &k);
printf("the prime factor(s) of %d is :", k); //这句话说明程序功能是找素因数
for(j=2;j<=k;j++)
{
co=1;
if(!(k%j))
{
if(isprime(j))
{
printf("\n%4d",j);
k/=j;
while(!(k%j)){k/=j;co++;}
printf(":\t%d",co);
}
}
}
getch();
}

