/****************************************************************
将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
****************************************************************/
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
int num,i;
printf("Please Input A Num:\n");
scanf("%d",&num);
printf("Your Num is:%d\n",num);
printf("%d=",num);
//分解.从1到num检查,看看是不是因子。
for(i=2; i<=num; i++)
while(num%i==0){
num/=i;
printf("%d*",i);
}
//1:输出最后一个因子。一定是1,如果上面for有=num也输出来了,所以只剩下1
//即:num==1;
//2:如果for没有=num的情况,那么,不一定是1的情况,可能还是其他,可以根据自己的需要改。
printf("%d",num);
return 0;
}
}
执行结果: