说明
任意输入一正整数N,求出它的所有质因子。如:10=(2 5);20=(2 2 5)。
输入格式
输入只有一行,包括1个整数n (1<n<32768 )。
输出格式
输出若干行,按从小到大的顺序给出这个数的所有质因子,每行一个。
样例
输入数据 1
36
输出数据 1
2
2
3
3
题解
#include <stdio.h>
int main()
{
int n;
int i;
scanf("%d",&n);
for(i=2;i<=n;)
{
if(n%i==0)
{
printf("%d\n",i);
n=n/i;
continue; //判断i还是不是n的质因子
}
i++; //如果i不是质因子,i++
}
return 0;
}
if 中continue语句的作用是:如果满足if里面的条件,则不执行循环语句里面的剩余内容,跳出程序,执行下一次循环。
若在VS 2022上运行该程序,则须把scanf改为scanf_s。