#include<stdio.h>
int main()
{
int a;
int i = 2;
printf("请输入:");
while (1 == scanf("%d",&a)); //这种写法是循环输入
{
for ( i=2; i<=a; i++)
{
if (a%i != 0)
{
continue;
}
else
{
while (a%i == 0) //短除法的原理,如果能被2整除,则把所有的2除尽,再除下一个因子
{
t = t/i;
}
printf("%-2d",i);
if ( t == 1) //除到最后商取1时,表示除尽了,所以人为判断结束
{
break;
}
}
}
printf("\n");
}
return 0;
}
这个程序是自己作业中遇到一个题,本来网上搜索,但是没找到,所以我就想了3个多小时,勉强做出来,亲测有效。编程新手,请多多指教。