[英]problems on prime factorization program in c. It doesnt work always. It only works in some cases
該程序的目的是從任何給定的數字中分解出任何質數。
除某些情況外,它工作正常。 例如,它不能與數字1024一起使用。我不明白這是什么問題。 非常感謝您的幫助。
#include<stdio.h>
int main()
{
int n1,n0,A[100];
char i,j,p=0;
printf("insert number: ");
scanf("%d",&n1);
n0=n1;
for(i=2; i<=n1; i++)
{
while (n0%i==0)
{
n0=n0/i;
A[p]=i;
p++;
}
}
for(j=0; j<p; j++)
{
printf("%d ",A[j]);
}
return 0;
}
該代碼使用char i
。 在大多數系統上,(帶符號的)char的范圍是-128到127。
如果n1
大於127, i
將永遠無法達到。使用int
代替。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.